Incase of split mode(either for linear color format
or AV1 film grain usecases), dpb and opb(output)
buffers are allocated in same context bank. In high
memory consumption usecases like 8k, it can lead to
OOM issues. To avoid this, for split mode, when both
dpb and opb buffers are used, honor fw min count for
dpb buffers, whereas for opb buffers choose an optimal
min count to ensure performance.
Change-Id: I287aff862d2fe36a690c1393d64f8095578baf34
Signed-off-by: Darshana Patil <quic_darshana@quicinc.com>
Remove deinit sequence calls and register devm
managed callbacks, so that kernel can invoke
then, when dev scope ends and cleansup all
associated resources.
Change-Id: I729fd21fe32d9f39240d0b743f910409d93a00c5
Signed-off-by: Govindaraj Rajagopal <quic_grajagop@quicinc.com>
This is resolve some of this kind of checker err.
Change-Id: Ief665e17045c3b6a6ff636ab6404c6e0c93e9460
Signed-off-by: Ankush Mitra <quic_ankumitr@quicinc.com>
This will fix some static code checker err.
Change-Id: I664e96dd2d65f694c3f2523e1f4aeb08a40f660a
Signed-off-by: Ankush Mitra <quic_ankumitr@quicinc.com>
This change will resolve some of the static code
checker err.
Change-Id: I62edcbc8740dd932f5662b0bad1548374a0c9188
Signed-off-by: Ankush Mitra <quic_ankumitr@quicinc.com>
Remove inst check from all the functions in video driver.
Inst check is present in most of the functions in video
driver which is not required.
Keep check only at root level functions and remove
from rest all of the functions.
Change-Id: Ib310cd3df5e8612a9fc3a5aa654dff4203a12906
Signed-off-by: Vedang Nagar <quic_vnagar@quicinc.com>
1. use max of operating and frame rate for fps
2. vpp_cycles is considered close to frequency
corner if vpp_min_freq is greater than max
required frequency
Change-Id: I9dc995ca16e4eeae18497a8648dfef64e16dfbc2
Signed-off-by: Deepa Guthyappa Madivalara <quic_dmadival@quicinc.com>
1. allow any client set operating rate (less than 2^15)
2. remove operating rate dependency for admission control
3. allow turbo for low latency case as well
Change-Id: I4b0f29c3756a592a9baedec8996653e5cb5292d5
Signed-off-by: Deepa Guthyappa Madivalara <quic_dmadival@quicinc.com>
- always execute noc reset sequnce in power off
- try to disable hw power always before power down
Change-Id: I76757cccea06a398d1a79310edb688608607a413
Signed-off-by: Deepa Guthyappa Madivalara <quic_dmadival@quicinc.com>
- In noc error handler do not clear
NOC_ERL_ErrorLogger_main_ErrorLogger_ErrClr_Low, to
avoid sending any pending transactions, move clearing
to power on
Change-Id: Ib620f3dcb93b92f2c03eb2126c47d5b97526556d
Signed-off-by: Deepa Guthyappa Madivalara <quic_dmadival@quicinc.com>
- program required NOC registers in power on
- update NOC error handling when fw raises HFI_SYS_ERROR_NOC
- skip reading NOC error log registers from smmu fault handler
as they are updated only when sys error from firmware is
processed and fault handling is completed
Change-Id: If396995d8bd6c77e6a92c0c2a8a7fb245be48854
Signed-off-by: Deepa Guthyappa Madivalara <quic_dmadival@quicinc.com>
- program required NOC registers in power on
- update NOC error handling when fw raises HFI_SYS_ERROR_NOC
- skip reading NOC error log registers from smmu fault handler
as they are updated only when sys error from firmware is
processed and fault handling is completed
Change-Id: I0195515ff1640aabe8e6db85803b49fde645808f
Signed-off-by: Deepa Guthyappa Madivalara <quic_dmadival@quicinc.com>
read the av1 uniform tile handling propert from fw
and display it. Required in debugging av1 usecases for
power calculation
Change-Id: I443e5afd591a8131c667c64cebb417fc022693ac
Signed-off-by: Ashish Patil <quic_ashpat@quicinc.com>
If the av1 tile rows and columns are greater than recommended decoder
av1 settings,vote for higher frequency.
Change-Id: Iea9f542e0b925a9ecb063c11b1827f31164f5a7b
Signed-off-by: Ashish Patil <quic_ashpat@quicinc.com>
Remove capability pointer and allocate
memory with max cap size.
Change-Id: I7f53e3b35439f91b72f057695b6e63f71bfecc0a
Signed-off-by: Ankush Mitra <quic_ankumitr@quicinc.com>
Move Qos register programming to driver. Use reset_control_acquire
api to ensure xo clk is on before programming
Change-Id: I52bf416da42675d206e1124368f75f627b8b2e9f
Signed-off-by: Maheshwar Ajja <quic_majja@quicinc.com>
power calculation is optimized by using encoder reference handling
and GOP details.
Change-Id: I29707fcd152f89e213532afc9c4b6191d23b4d6c
Signed-off-by: Ashish Patil <quic_ashpat@quicinc.com>
Update power calculation to avoid low framerate or
frame drop issues
Change-Id: Ice306a44d4ea8242d965c0e5d03edffc0f5e0f8b
Signed-off-by: Ashish Patil <quic_ashpat@quicinc.com>
Add support to enable ring buffer for enc intermediate
bin buffer to improve encoding performance.
Change-Id: Ifbf50cb48278c62c09a20bc7626a3b6288813830
Signed-off-by: Akshata Sahukar <quic_asahukar@quicinc.com>
Align hfi property and memory file to pick interface changes
for encoder ring buffer support
Change-Id: Icde4cdffe5275d416c51c36e562bb832027b0fa1
Signed-off-by: Akshata Sahukar <quic_asahukar@quicinc.com>
Align hfi property and registers file with to pick synx fence
related interface changes
Change-Id: I19e5cce4d67f2f1eeacf917f9e688d2bb20f6585
Signed-off-by: Akshata Sahukar <quic_asahukar@quicinc.com>
New bandwidth and frequency calculation functions
for lanai.
Change-Id: I0ec4a74bc24598628fe94a6ebbe9df5e3cb71a9c
Signed-off-by: Ashish Patil <quic_ashpat@quicinc.com>
In assert xo reset failure case, count increment and
usleep are skipped resulting in indefinite while loop.
Correct the conditions to avoid looping indefinitely.
Change-Id: I38fae272f0c7c676e1454e1fb0a8bfee860ea2f0
Signed-off-by: Maheshwar Ajja <quic_majja@quicinc.com>
remove all conditional compilation in video driver.
With this change, all files willbe always compiled
and will be available in final kernel object file.
Change-Id: I9843c246e23bd1ee4fb8918e5cfa840e2defd432
Signed-off-by: Govindaraj Rajagopal <quic_grajagop@quicinc.com>
New bandwidth and frequency calculation functions
for kalama.
Change-Id: Iaca0be832c42e00bb7404f7cfbac5bbf03427144
Signed-off-by: Ashish Patil <quic_ashpat@quicinc.com>
In case of watchdog interrupt, power off sequence will
get called which will make intr_status to 0 due to which
enable_irq gets called from isr_handler irrespective of
watchdog interrupt. Now during power up sequence again
when the enable_irq gets called, it will through
"Unbalanced enable for irq" error.
Added a fix for the same.
Call trace ->
enable_irq+0x9c/0xf8
__power_on_ar50lt+0x2d4/0x320 [msm_video]
__load_fw+0x92c/0x1368 [msm_video]
venus_hfi_core_init+0x64/0x468 [msm_video]
msm_vidc_core_init+0x158/0x4bc [msm_video]
msm_vidc_open+0x90/0x804 [msm_video]
Change-Id: Ic675d7540ef029e530a8cd5b87fb97f72e72057f
Signed-off-by: Vedang Nagar <quic_vnagar@quicinc.com>
update buffer size only for film grain content.
Change-Id: Ia9230d36ef0c917723fdb1eea82adfb8df3b3413
Signed-off-by: Manikanta Kanamarlapudi <quic_kmanikan@quicinc.com>
Update the buffer sizes for h264 codec in IRIS2 variant to
align with updated buffer calculation for IRIS3.
Change-Id: Ic211cdc88bb173f790ac11dad68ad248ed4a3f34
Signed-off-by: Dikshita Agarwal <quic_dikshita@quicinc.com>