Codec2 HAL sets V4L2_CID_MPEG_VIDC_VIDEO_BUFFER_SIZE_LIMIT for all
session and it is very low value. So decoder input buffer size is
always limited by buffer_size_limit. Memory budget estimation is
going for toss in msm_comm_check_memory_supported. So video driver
started allowing all sessions during concurrency run without any
restriction. Added change to use correct buffer size during
memory estimation.
Change-Id: Ic7c5e51a91615fdba8965b3a359c2d3a37c9a14b
Signed-off-by: Govindaraj Rajagopal <grajagop@codeaurora.org>
For certain video hardware which doesn't support higher resolutions
like 4k or above, allocate maximum input buffer size
Change-Id: I30a908573cf4d0dce8bcbaeb813913130f051884
Signed-off-by: Malathi Gottam <mgottam@codeaurora.org>
HFR recording usecases, batch mode is enabled by default.
Currently no interrupt is raised to firmware for ETB write
on command queue. So firmware was not reading the queue,
though there are lot of pending messages in the command
queue, So complete encoder pipeline is getting stalled
after encoding couple of frames.
To avoid above problem, raising interrupt to firmware
every time(Only for last ETB in the batch).
Change-Id: If584a8175bfa54402087d1888dd032d08e1f3c15
Signed-off-by: Govindaraj Rajagopal <grajagop@codeaurora.org>
dma_buf_put does not happen in case of failure while mapping dma_buf.
This leads to ion_dma_buf leak as refcount is 1 even after session
close. In memory pressure scenario while running concurrency usecase
such scenario can occur.
Change-Id: I2084538162b54d87acd6fa57bb5cc5bd2096c08d
Signed-off-by: Brijesh Patel <pbrijesh@codeaurora.org>
Fix logic for ts reorder in heif decoder
since default value of disable timestamp
reorder control is 0.
Change-Id: I56cb8c40d99c3a3de867da659005faebd201be80
Signed-off-by: Chandrakant I Viraktamath <civirakt@codeaurora.org>
By default, encoder needs to enable VUI timing info.
Frame rate change triggers new header and timing info.
Hence, we need to distinguish client trigger fps change
vs auto detection of fps change.
Introduced new HFI for setting auto detection of fps.
In auto fps case, VUI timing is not re-generated.
Change-Id: I6b579d1e6ef0c49a849b7b7e0383f593a949bab3
Signed-off-by: Shi Zhongbo <zhongbos@codeaurora.org>
Consider downscaling buffer size with unrotated
wxh when rotation or flip is enabled along with
downscaling. Also correct wxh to all buffer calc
if rotation is enabled.
Change-Id: I5b89a5206057c4bbfed793b439aa2fb2c5d2601e
Signed-off-by: Priyanka Gujjula <pgujjula@codeaurora.org>
The timing info should represent the number of time
units in one seconds, as per the timescale and time
units per tick. Update the same while setting the HFI
to video firmware.
Change-Id: Ifb6bc34ad295e472715fb72813a236c851d4480f
Signed-off-by: Vikash Garodia <vgarodia@codeaurora.org>
Currently firmware populates tag_data and produces
FBD for all ETB's only if mark_target and mark_data
is enabled. So sending dummy value as a WA.
Change-Id: I93a80d59e4f0f52eac94391ff86afc341468677f
Signed-off-by: Govindaraj Rajagopal <grajagop@codeaurora.org>
Add support for noc error and vcodec hung HFI
to test hardware stability via ssr_type and
to input the sub client id and test address
accordingly.
<test_addr><subclient_id><ssr_type>
ssr_type: 0-3 bits
sub_client_id: 4-7 bits
reserved: 8-31 bits
test_addr: 32-63 bits
Change-Id: I05970d3dc3e54da50688319eabccd5d11f8f55e2
Signed-off-by: Priyanka Gujjula <pgujjula@codeaurora.org
Currently, Required BW is calculated in bytes per second but
when setting it to ICC, kbps_to_icc macro is applied to
calculated BW which again divides the value by 8 and resulting
into less final vote to icc.
Change-Id: I7a645478d05909308edea2170d7c5cb911cbf6f0
Signed-off-by: Dikshita Agarwal <dikshita@codeaurora.org>
Update max-hw-load to be inline with shima
pro-sku spec.
Change-Id: I98aaa4d870156812a240fecdf31feaa242aca4a8
Signed-off-by: Govindaraj Rajagopal <grajagop@codeaurora.org>
Always use HQ mode for HEIC and lossless encoder.
Refine FW version retrieve to support version
string start with lower case v.
Change-Id: I092956b34250da55a4cfc2c7b88815c05a64375f
Signed-off-by: Qiwei Liu <qiweil@codeaurora.org>
Add max-image-load caps as 8k for holi and
16k for shima for all variants.
Change-Id: I5d1483c0e2dc06af61eca4944bc269e36baa6d73
Signed-off-by: Priyanka Gujjula <pgujjula@codeaurora.org>
Reject any sessions with non-multiple 8 of resolution and
rotation/flip is enabled.
Change-Id: Ifac0cc8884461fe8d2502e92481643d9443aa527
Signed-off-by: Shi Zhongbo <zhongbos@codeaurora.org>
Add control to enable/disable timestamp reordering
in driver.
Change-Id: I50c3f60bb8af053881073b40c6df0c74f3f0aafb
Signed-off-by: Chandrakant I Viraktamath <civirakt@codeaurora.org>
Force the clocks to NOM if bitrate nears or exceeds maximum
supported for VP9 usecases.
Signed-off-by: Chinmay Sawarkar <chinmays@codeaurora.org>
Change-Id: I917b0f6c624837403fd9f1499a68812acb00b568
For h264 BSE LB write should be half of BSE LB read for decoder.
Update the calculation for the same.
Change-Id: I5ebceff4fa0795eaaf67b569e754d174be4a8146
Signed-off-by: Dikshita Agarwal <dikshita@codeaurora.org>
Add support to VIDIOC_ENUM_FRAMESIZES for
querying HEIC frame size.
Change-Id: I9ceba027c798e0c0fb7781702ccb2873fc8276ac
Signed-off-by: Priyanka Gujjula <pgujjula@codeaurora.org>
Enable VUI timing info when using native recorder
by default.
Change-Id: I1edb9d8b9bcd84e06bcd0f52429bda96af5d0de3
Signed-off-by: Shi Zhongbo <zhongbos@codeaurora.org>
Sometimes during sequence change, timestamps may be repeated. This corner
case breaks the TS store-fetch logic. Disabling this logic for secure
decoder sessions.
Change-Id: Ib5c00cc509364ce29b0f69f9b7441edd11b1eef2
Signed-off-by: Akshay Chandrashekhar Kalghatgi <akalghat@codeaurora.org>
HFI_CMD_SESSION_SYNC is used for synchronization
of encode batching between driver and FW.
Currently, encode batching is only between camera
and driver. To FW, it is always regular encode
session without batching. Hence cleaning up the
encode batching HFI's.
Change-Id: I5d493c98a350e36cd8bb85bf9b82d3f8d41451cf
Signed-off-by: Priyanka Gujjula <pgujjula@codeaurora.org>
As per vperf sheet, VSP FW Overhead factor(1.05) needs
to be applied to both entropy mode CABAC & CAVLC.
Change-Id: I93dc00137e0633ac2a79862c58970ba43b515ad6
Signed-off-by: Govindaraj Rajagopal <grajagop@codeaurora.org>