Графік комітів

1520 Коміти

Автор SHA1 Повідомлення Дата
Megha Byahatti
9df60c1fa4 video: driver: Add pipes scalability for multi slice count
- Add pipes check to support different Tile sizes based on
number of VPP Pipes for HFI_IRIS3_ENC_TILE_SIZE_INFO,
HFI_IRIS3_ENC_MB_BASED_MULTI_SLICE_COUNT.

HFI review done with ccb id 3284017.

Change-Id: I2e403ac712143635fd9ff5167260e23d6b48c482
Signed-off-by: Megha Byahatti <quic_mbyahatt@quicinc.com>
2023-12-20 19:41:25 +05:30
qctecmdr
cf58e09805 Merge "video: driver: Read ctrl_init register value during FW bootup failure" 2023-11-30 20:03:51 -08:00
qctecmdr
f6104dbc28 Merge "video: driver: avoid array copy for freq and bitrate table" 2023-11-30 20:03:51 -08:00
qctecmdr
77e62fb38c Merge "Video: Driver: acquire xo_reset mutex for gdsc access" 2023-11-30 20:03:51 -08:00
qctecmdr
90c8286530 Merge "video-driver: update Max frequency for cliffs v1" 2023-11-30 20:03:51 -08:00
qctecmdr
fb57fc652d Merge "video: driver: Update Level for codecs for cliffs" 2023-11-30 20:03:50 -08:00
Megha Byahatti
8193b0274d video-driver: update Max frequency for cliffs v1
- Due to hw limitation update max frequency for fused
variant with video_cc_pll_uhd60_fmax_fuse = 1 to 366MHz.

Change-Id: Id3b154ca600c3e8fa3cbb19bab1e20feba347775
Signed-off-by: Megha Byahatti <quic_mbyahatt@quicinc.com>
2023-11-21 13:14:50 +05:30
qctecmdr
6d7027e438 Merge "video: driver: Fix internal buffers issue with FIRST IPSC + SEEK" 2023-11-20 02:38:13 -08:00
qctecmdr
48804dda69 Merge "video: driver: fix inconsistency in clock calculation" 2023-11-20 02:38:13 -08:00
Vedang Nagar
726326d756 Video: Driver: acquire xo_reset mutex for gdsc access
[1] Acquire xo_reset mutex for gdsc access.
[2] Retry acquire_regulator for 1sec and BUG_ON if still fails.

Change-Id: Ie0ed4561a0c12b8526e2ede96a879f9d311aafab
Signed-off-by: Vedang Nagar <quic_vnagar@quicinc.com>
2023-11-15 19:05:34 +05:30
Vedang Nagar
236e1f55dd video: driver: Read ctrl_init register value during FW bootup failure
To debug FW bootup failure scenario, FW tries to update ctrl_init
register to know at what point failure is seen and driver can
read and print this register so as to know where FW bootup is
failing.

Change-Id: I26691a84ab2526dee8adb6b2a46b62a01bacede8
Signed-off-by: Vedang Nagar <quic_vnagar@quicinc.com>
2023-11-15 18:46:57 +05:30
Megha Byahatti
70d73aeac5 video: driver: Update Level for codecs for cliffs
Update H264, HEVC, VP9 and AV1 LEVEL supported for cliffs.

Change-Id: I74cf8f221bff4c3af71e844269a8c500b5bcaee6
Signed-off-by: Megha Byahatti <quic_mbyahatt@quicinc.com>
2023-11-10 14:34:17 +05:30
qctecmdr
3ec6262c18 Merge "video: driver: Update encoder MAX_BITRATE" 2023-10-30 11:16:34 -07:00
qctecmdr
36edd0bbe4 Merge "video: driver: Align Max_RT_MBPF with Max_MBPS" 2023-10-30 11:16:34 -07:00
qctecmdr
7185aae4c5 Merge "video: driver: Update videocc clock header file" 2023-10-30 11:16:33 -07:00
Zhongbo Shi
14000cd9c6 video: driver: avoid array copy for freq and bitrate table
Using pointer instead of array copy for frequency
and bitrate table.

Change-Id: I1c4c10ed0708954a067e8b199e293a2169e68628
Signed-off-by: Zhongbo Shi <quic_zhongbos@quicinc.com>
2023-10-27 09:02:02 +08:00
Roopangkumar Patel
fbf4e7bd75 video: driver: Fix internal buffers issue with FIRST IPSC + SEEK
Problem:
First IPSC is received from firmware and driver sub state is set to
INPUT PAUSE. And driver state is INPUT_STREAMING at this point of time.
Now client calls for seek (or flush), which invokes streamoff and
stream on INPUT port. As a result, INPUT PAUSE sub state is cleared.
Now when client handles the first IPSC by calling stream on output,
internal buffers are not queued as INPUT pause is cleared with seek.
But for split mode, LINE buffer is mandatory to queue in FIRST_IPSC
streamon of the OUTPUT port

Solution:
Introduced a new sub state check of FIRST_IPSC, during stream on of
the INPUT port after FLUSH, we will check if FIRST_IPSC is pending,
then we will PAUSE the INPUT port, later in OUTPUT stream on,
we check for INPUT PAUSE and if it is set, we will queue the
internal buffers to firmware and resume the input port.

Change-Id: Ia9b566443bc9c4546247d31625384d89aff6985d
Signed-off-by: Roopangkumar Patel <quic_rooppate@quicinc.com>
2023-10-23 10:26:50 +05:30
Megha Byahatti
78e68224aa video: driver: Update encoder MAX_BITRATE
Update CAVLC and ALLINTRA encoder MAX_BITRATE
for cliffs.

Change-Id: Ib6c8c84954dc700d9de179aa3b46a5501c8e3f9b
Signed-off-by: Megha Byahatti <quic_mbyahatt@quicinc.com>
2023-10-20 15:54:50 +05:30
Ankush Mitra
6a72e516fb video: driver: remove redundant entry for HOST_MAX_COUNT
Remove redundant entry for HOST_MAX_COUNT.

Change-Id: If9103e1ae6f435dc0b55cc54b8f26dab6b47bcb7
Signed-off-by: Ankush Mitra <quic_ankumitr@quicinc.com>
2023-10-20 11:30:38 +05:30
Ankush Mitra
381356fbe7 video: driver: remove redundant entry for STAGE
Remove redundant entry for STAGE.

Change-Id: I263437427392615df04dd6baffd1463d2c531fbb
Signed-off-by: Ankush Mitra <quic_ankumitr@quicinc.com>
2023-10-20 11:30:38 +05:30
Ankush Mitra
f30710a586 video: driver: merge BIT_RATE entry
Merge BIT_RATE entry to remove redundancy.

Change-Id: I1356e7c643a0d790a264465729cac865f583f022
Signed-off-by: Ankush Mitra <quic_ankumitr@quicinc.com>
2023-10-20 11:30:38 +05:30
Ankush Mitra
040189c335 video: driver: remove redundant entry for HOST_MAX count
Remove redundant entry for HOST_MAX count.

Change-Id: I94cb015ef6474bb42e367ca207d54a58894e7a5b
Signed-off-by: Ankush Mitra <quic_ankumitr@quicinc.com>
2023-10-20 11:30:38 +05:30
Ankush Mitra
c04df20bb0 video: driver: remove redundant entry for STAGE
remove redundant entry for STAGE in Kalama DB.

Change-Id: I95a1268b432bd73b94d85e8b079f9aebc99236ca
Signed-off-by: Ankush Mitra <quic_ankumitr@quicinc.com>
2023-10-20 11:30:38 +05:30
Ankush Mitra
8c348bd3b6 video: driver: make a single relation entry for BIT_RATE
Remove redundant entry in kalama DB.

Change-Id: I23fe2d2357c3ad6cee755bc7cce7a00845f10539
Signed-off-by: Ankush Mitra <quic_ankumitr@quicinc.com>
2023-10-20 11:30:38 +05:30
Megha Byahatti
d3bbee3e70 video: driver: Update videocc clock header file
Update videocc-pineapple.h clock header file in
cliffs platform file.

Change-Id: I584b4460b2bd669decae2fcbde559c436f6e7b41
Signed-off-by: Megha Byahatti <quic_mbyahatt@quicinc.com>
2023-10-19 00:16:45 -07:00
Megha Byahatti
5db37cb85f video: driver: Disable mmrm support for cliffs
- Disable mmrm support for cliffs target.

Change-Id: I7175404c6196d5d37f805fb45b8a79e42d079dde
Signed-off-by: Megha Byahatti <quic_mbyahatt@quicinc.com>
2023-10-18 11:54:38 +05:30
Megha Byahatti
7aab37a3e6 video: driver: Align Max_RT_MBPF with Max_MBPS
MAX_RT_MBPF was limited to 8k+4k even though 2 8k
UHD sessions are allowed. When client tries to
open 2 8k UHD session, the session will be rejected.

Supported real-time MAX_MBPS is 8k UHD @60fps, so
aligning the MAX_RT_MBPF as 2 8k UHD session @30fps.

Change-Id: I71de0dfa297044487b260283c0af56b052d61514
Signed-off-by: Megha Byahatti <quic_mbyahatt@quicinc.com>
2023-10-17 15:51:07 +05:30
qctecmdr
408f69d136 Merge "video: driver: Add QoS registers for cliffs" 2023-10-11 02:45:13 -07:00
Zhongbo Shi
f66a492476 video: driver: fix inconsistency in clock calculation
Fix inconsistency in clock and bandwidth calculation
compared with C model.

Change-Id: Ie3fbeb792a152de3a96687e96db7413fbf98c69b
Signed-off-by: Zhongbo Shi <quic_zhongbos@quicinc.com>
2023-10-10 15:15:30 +08:00
qctecmdr
a5dccd70ae Merge "video: driver: Add fuse register IRIS_DISABLE_AV1" 2023-10-06 05:24:23 -07:00
Megha Byahatti
cd99a04099 video: driver: Add QoS registers for cliffs
- Add QoS registers for cliffs.

Change-Id: I7f16141283b5740e550139c311f10289e381c4a8
Signed-off-by: Megha Byahatti <quic_mbyahatt@quicinc.com>
2023-10-06 12:48:58 +05:30
qctecmdr
b3060d2263 Merge "video-driver: frequency claculation for iris33_2p" 2023-10-03 21:59:21 -07:00
qctecmdr
78aababd3a Merge "video: driver: Update Max resolution for AC sku" 2023-10-03 21:59:20 -07:00
Megha Byahatti
0adf926242 video: driver: Update Max resolution for AC sku
- Max resolution supported is 7680x4320 for AC sku.
Update resolution and MBPF accordingly.

Change-Id: I84ed70f3cdd8eadee02d7c524dc9d12f48d8c7af
Signed-off-by: Megha Byahatti <quic_mbyahatt@quicinc.com>
2023-10-03 11:35:10 +05:30
Megha Byahatti
d1768ab1fe video: driver: Add fuse register IRIS_DISABLE_AV1
- AB sku does not support for AV1. Adding fuse
register IRIS_DISABLE_AV1 to disable based on sku
version.

Change-Id: Ib8408b67072ca5aa42cba4ab7451add26968ff8e
Signed-off-by: Megha Byahatti <quic_mbyahatt@quicinc.com>
2023-10-03 11:13:54 +05:30
Megha Byahatti
edec2460ee video: driver: Add iris33_2p values for BW calculation
- iris3 2pipe uses 768 vertical tile width for IPP GoP.
Handle the values for iris33_2p for BW calculations.

Change-Id: I8b28e5037e62175479587550973af035f0ede044
Signed-off-by: Megha Byahatti <quic_mbyahatt@quicinc.com>
2023-09-28 15:56:15 +05:30
Megha Byahatti
bc8a2161c0 video-driver: frequency claculation for iris33_2p
-Add frequency, pipe penalty and bitrate table for
 iris33_2p to calculate vsp frequency.

Change-Id: I217fc587d534909fb72e5f5824ef4dc8df8da58c
Signed-off-by: Megha Byahatti <quic_mbyahatt@quicinc.com>
2023-09-26 10:29:51 +05:30
qctecmdr
1f00439e9c Merge "Video: Driver: Add 8K@30fps support for cliffs" 2023-09-24 22:47:33 -07:00
qctecmdr
716fca5e3d Merge "video: driver: fix AV1 resolution checking" 2023-09-24 22:47:31 -07:00
Roopangkumar Patel
aee794dd80 Revert "video-driver: frequency claculation for iris33_2p"
This reverts commit 21eb1ee93a.

Reason for revert: Causing Device crash issue.

Change-Id: If37a4b5c6b880ff9995f4213fa508ca4a9f544d6
Signed-off-by: Roopangkumar Patel <quic_rooppate@quicinc.com>
2023-09-19 17:59:45 +05:30
Zhongbo Shi
e8ac66ef98 video: driver: fix AV1 resolution checking
Fix AV1 resolution checking conditions for
input bus voting.

Change-Id: I24593ce425bd952fa9a053dfd08e6bfa880ca4fc
Signed-off-by: Zhongbo Shi <quic_zhongbos@quicinc.com>
2023-09-18 13:46:04 +08:00
qctecmdr
1e7e0a1a57 Merge "video-driver: frequency claculation for iris33_2p" 2023-09-13 23:18:00 -07:00
Vedang Nagar
092186c924 Video: Driver: Add 8K@30fps support for cliffs
[1] Add 8K@30 fps support for cliifs v0 SKU
[2] Modify max mbpf and rt_mbpf for Cliffs v1 SKU.

Change-Id: I03386e47ee53e32cf57711eecebd98201f399a5b
Signed-off-by: Vedang Nagar <quic_vnagar@quicinc.com>
2023-09-11 17:27:47 +05:30
Megha Byahatti
21eb1ee93a video-driver: frequency claculation for iris33_2p
-Add frequency, pipe penalty and bitrate table for
 iris33_2p to calculate vsp frequency.

Change-Id: Ic8fb11ca93bc96d023020edac10a412995573dd4
Signed-off-by: Megha Byahatti <quic_mbyahatt@quicinc.com>
2023-09-06 08:36:57 +05:30
qctecmdr
b38f10ea72 Merge "Video: Driver: Allow only SSR type 0x1" 2023-09-05 12:31:12 -07:00
qctecmdr
d66466da79 Merge "video-drvier: update NOC register programming" 2023-09-05 12:31:11 -07:00
qctecmdr
2f64bd2109 Merge "Video: Driver: Retain AV1 TILE info if not sent by FW" 2023-09-05 12:31:11 -07:00
qctecmdr
48c0919ebe Merge "video-driver: Remove QOS register settings" 2023-09-05 12:31:11 -07:00
Vedang Nagar
e91bbc7848 Video: Driver: Retain AV1 TILE info if not sent by FW
AV1 Tile Info is sent by FW during EBD and these values
are being used by driver to compute clock votings.

For few(such as SEF) frames, there is no TILE info
present in the bitstream and FW will send default
(1, 1) value to driver which affects clock voting
for next frames and hence leading to performance issue.

To avoid such issue, if there is no tile infor, FW will
not send any such stale TILE info values.
But still during EBD, driver is doing memset to 0 for
inst->hfi_frame_info and hence overriding the value to 0.

Added fix to retain previous frames tile info by keeping
check for 0(since min value for tile info from FW = 1, 1)
if no value is being sent from the FW.

Change-Id: I6c23ed769f29efec2a7f318e3997d3f7532685c9
Signed-off-by: Vedang Nagar <quic_vnagar@quicinc.com>
2023-08-25 15:03:01 +05:30
qctecmdr
f54af627e0 Merge "Video: Driver: Configure CSC on BITSTREAM port according to HFI" 2023-08-19 20:46:41 -07:00