video: driver: fix queuing too many output buffers to firmware
Client is setting NV12 fmt as OP format before initial reconfig So during input port stream_on, subscribe_input_property is failing due to ubwc check(NV12 fmt), so DPB_LIST cap is getting disabled, but later client is setting NV12C during reconfig. So msm_vdec_release_nonref_buffers() during qbuf is bypassed and release cmd is never sent to fw for pending ro buffers. Infact entire RO handling at driver side is disabled. Looks like due to some reason client was not requeueing same buffers at same slot, So eventually number of pending RO buffers increasing over the time. Once count shoots more than 256 fw assertion happens and i.e leading to system error. Remove UBWC check while subscribing input port properties, so DPB_LIST willbe subscribed always and avoids above mentioned issues. Change-Id: I57ea0ea637ae3a57fcad430b212dcdb10f8e6d0f Signed-off-by: Govindaraj Rajagopal <quic_grajagop@quicinc.com>
Esse commit está contido em:
@@ -401,7 +401,6 @@ enum msm_vidc_metadata_bits {
|
||||
CAP(FIRMWARE_PRIORITY_OFFSET) \
|
||||
CAP(CRITICAL_PRIORITY) \
|
||||
CAP(RESERVE_DURATION) \
|
||||
CAP(DPB_LIST) \
|
||||
CAP(FILM_GRAIN) \
|
||||
CAP(SUPER_BLOCK) \
|
||||
CAP(DRAP) \
|
||||
|
Referência em uma nova issue
Block a user