Add support to encode bitstream with downscaled resolution.
Change-Id: I04ab289758e1d1566924ec4b017e6d081c8f01aa
Signed-off-by: Akshata Sahukar <asahukar@codeaurora.org>
Compare buffer with release list only after updating
buffer device_addr field.
Change-Id: Ie1c21fd9496fb4deb735938efeff61b90b96362f
Signed-off-by: Govindaraj Rajagopal <grajagop@codeaurora.org>
If current qbuf entry is already present in release buffer list,
then as part of release done, refcount will get decremented and
for current qbuf, there is 2 possibilities of outputs from fw.
FBD with RO and wo RO. So if firmware gives FBD with RO, we are
currently decrementing refcount from 1 -> 0. So mapping gets
destroyed. But firmware is still holding RO referrence and
leading to smmu fault issues. So added hadling to increment
recount by 1, if current buffer(qbuf) is already present in
release buf list.
Change-Id: Icbe8ce0b1c9b47c4450d17650b63a575e1037ce3
Signed-off-by: Govindaraj Rajagopal <grajagop@codeaurora.org>
add extra size for input meta buffer
when ROI metadata is enabled.
add dependency of rate control and
color format.
Change-Id: Icefd3f9e319d596f88090cee331417c0b2946180
Signed-off-by: Darshana Patil <darshana@codeaurora.org>
- Payload ptr is dereferenced even when response packet does not
contain any payload. Avoid the same.
- Fw may send HFI_FW_FLAGS_INFORMATION for property packet whenever
benign error occurred in fw for the sent property. Print the same
instead of considering the property as invalid port property.
Change-Id: I0c61861c14fefa689d342f991693c33da289c572
Signed-off-by: Akshata Sahukar <asahukar@codeaurora.org>
Allow priority control in streaming state
Change-Id: I98a0983026fdb37f6a5b94fb73082032158a7743
Signed-off-by: Manikanta Kanamarlapudi <kmanikan@codeaurora.org>
If client attempts streamoff and msm_vidc_close sequence
concurrently, then all buffers not returned back to client,
i.e leading to warnon at vb2_queue_cancel at vb2 layer.
So added change to send vb2_buffer_done at driver fd close
sequence.
Change-Id: I43d779000501907d12d5ba8e90e007bdf5b8b801
Signed-off-by: Govindaraj Rajagopal <grajagop@codeaurora.org>
Some clients attempt to invoke streamoff & driver fd close
(msm_vidc_close) sequence concurrently. So there might be chances
some commands willbe posted to command queue even after closing
hfi session(HFI_CMD_CLOSE) completed. So due to invalid session_id
firmware asserts.
Added change to avoid above mentioned issue and also amended minor
logging changes.
Change-Id: I2896567916cf5d18eb5b2a148efccf9bf07af3ea
Signed-off-by: Govindaraj Rajagopal <grajagop@codeaurora.org>
- enable conditional compilation based on defconfig
- compile only needed files based target & vpu variant
- enabled stubs to avoid compilation issues, for all
target variant and vpu types
- add support for qcv(same lunch combo) for different
PT & VT chipsets.
Change-Id: Ic446349fd1532885d7a2e94895d807c62f1ab6e4
Signed-off-by: Govindaraj Rajagopal <grajagop@codeaurora.org>
When cabac_session property is subscribed, fw updates this
session info. This should be used to adjust power
caculations.
Change-Id: Ica4d2ee664f2a0a9ea41ec4d74bd2b21e9116931
Signed-off-by: Chinmay Sawarkar <chinmays@codeaurora.org>
Signed-off-by: Mihir Ganu <mganu@codeaurora.org>
Use firmware values of Compression Ratio (CR) and
Complexity Factor (CF) for bandwidth calculations.
Change-Id: Ia6d3c45afc834bc872ac4e0597a2ecb95eb81682
Signed-off-by: Mihir Ganu <mganu@codeaurora.org>
Check for null pointer for instance before deferencing
the instance.
Change-Id: I9236305dcde87e50732aa006a3a47a585bcf096b
Signed-off-by: Akshata Sahukar <asahukar@codeaurora.org>
- subscribe for dpb list property in combined
mode on output port.
- copy dpb list property payload from fw to
static array.
- using this array, mark read_only list buffers
as non-reference if not part of array. if count
of such buffers is greater than output min count,
send to fw for release.
- once fw returns them, destroy these buffers.
- unmap stale output mappings due to lazy unmap feature.
- unify release internal functions into common function.
Change-Id: Id32f04efb19eecaff453cc4383ee8296a0246263
Signed-off-by: Darshana Patil <darshana@codeaurora.org>
fw sent FBD with RO and host didn't requeue same buffer again,
but firmware still holds RO reference. In that case, if stop
cmd issued at output port, firmware will FBD once again w/o
RO. So at that time wrong buffer will be picked from list, if
tracking is based on index.
To handle that special case, for decoder alone using device
addr & data_offset for identifying the node in reverse path.
Change-Id: I3d8cb0b4b100fd44be30e576ae602950650747a4
Signed-off-by: Govindaraj Rajagopal <grajagop@codeaurora.org>
For non real time sessions, LLCC bandwidth should be voted
to maximum bandwidth.
CRs-Fixed: 2919988
Change-Id: I37217e71634aed298c59533b7cc2f0aa32697752
Signed-off-by: Vikash Garodia <vgarodia@codeaurora.org>
Need to increase debug timeout incase more debug logs were
enabled. This is to avoid sync cmd timeout.
module_param_cb supports to register custom set/get callbacks.
So using this feature to increase various timeout values,
incase more logs were enabled.
Change-Id: I194c077c2ba00af2403d487a3dcfbb48f119b478
Signed-off-by: Govindaraj Rajagopal <grajagop@codeaurora.org>
Assert all the reset clocks and then deassert.
Also increase sleep time between assert and deassert.
Change-Id: If5f76c677cd01a3fe37bf2704b7a1c210f6e9fec
Signed-off-by: Maheshwar Ajja <majja@codeaurora.org>
Avoid adjusting, sanitizing, and setting mark and use ltr
controls to fw for input port static case.
Change-Id: I8ac7fd9537ff0c5ddce0ff0f4d0337cb19dd83d2
Signed-off-by: Akshata Sahukar <asahukar@codeaurora.org>
Skip power collapse if any sessions are present in driver.
Change-Id: I40003c118b815d2cd07ce44e06bfa3c08182ab3f
Signed-off-by: Maheshwar Ajja <majja@codeaurora.org>
For max-qp, set_min_qp is called,
correct the same.
Change-Id: I2ff7d6557a033fa45343b131fd68cae1eaf6d796
Signed-off-by: Manikanta Kanamarlapudi <kmanikan@codeaurora.org>
Added support for VIDIOC_ENUM_FRAMEINTERVALS to provide
supported frame intervals range for a given resolution.
Change-Id: I51174634739dd1141d308ba9bfd1cf3720b6ca42
Signed-off-by: Govindaraj Rajagopal <grajagop@codeaurora.org>
Combination of PREPEND_SPSPPS_TO_IDR with V4L2_MPEG_VIDEO_HEADER_MODE_SEPARATE or
V4L2_MPEG_VIDEO_HEADER_MODE_JOINED_WITH_1ST_FRAME is not supported.
Hence, prioritize PREPEND_SPSPPS_TO_IDR over SEPARATE/JOINED_WITH_1ST_FRAME
to set to fw.
Change-Id: Ia23569c046c95889d5eabbe2142d6fd2c69d032a
Signed-off-by: Akshata Sahukar <asahukar@codeaurora.org>
Do not try to deinitialize core if core was already
in deinited. Also in failed cases skip calling
venus_hfi_core_deinit() from within venus_hfi_core_init()
as the caller will anyway call venus_hfi_core_deinit().
Change-Id: Idda3d989a8eb500b0d5392a1eac65109e3d73b81
Signed-off-by: Maheshwar Ajja <majja@codeaurora.org>
Define upstream controls if any control is currently not
availble in gki or gsi bionic header file.
Change-Id: I370c58712479cb3e8f6f4e5650a8c35cefe59c4f
Signed-off-by: Akshata Sahukar <asahukar@codeaurora.org>