Gráfico de commits

3885 Commits

Autor SHA1 Mensagem Data
Anjaneya Prasad Musunuri
0d9d979c76 disp: msm: sde: flush reg dma during encoder disable
Color features are disabled during encoder disable, but reg dma
flush is not triggered. This change does reg dma flush for the
features to be disabled during encoder disable.

Change-Id: Ia74d4c43ad7b699f0097b49d86ad59529c0b3230
Signed-off-by: Anjaneya Prasad Musunuri <quic_aprasad@quicinc.com>
2024-06-25 14:48:49 +05:30
Jayaprakash Madisetty
a7525bef97 disp: msm: sde: update register_dump_range check in sde_dbg
Add changes to update the register_dump_range offset_start and
offset_end validation introduced as part of 'commit cfc54d3f22
("disp: msm: sde: add check to avoid registering invalid ranges in dump")'.

Change-Id: I5e4332687b37d7926afdce6903d8fea6ce2874b1
Signed-off-by: Jayaprakash Madisetty <quic_jmadiset@quicinc.com>
2024-06-11 16:01:23 +05:30
Yahui Wang
5b3c631e95 disp: msm: dp: move DP disconnect process to DP work queue
Move DP disconnect process to DP work queue to fix DP
notification issue when disconnecting USB cable.

Change-Id: Ib864563f35012ae4499ca5e3002eb52d1084ae58
Signed-off-by: Yahui Wang <quic_yahuiw@quicinc.com>
2024-05-24 01:37:03 -07:00
qctecmdr
d3e1ccffea Merge "disp: msm: dp: check for attn work and HPD status before connect notification" 2024-05-23 10:54:18 -07:00
qctecmdr
24a9539642 Merge "disp: msm: sde: avoid vblank toggling for virtual displays" 2024-05-23 10:54:18 -07:00
Sandeep Gangadharaiah
91ba799b32 disp: msm: dp: check for attn work and HPD status before connect notification
During Link CTS test, it is possible that the TE would trigger an HPD
IRQ right after LT. Currently we are waiting for a fixed delay before
sending connect notification to usermode, so that the driver can
process any attention work queue requests immediately. This change
checks for any pending attention work queue requests before waiting
for timeout. After the attention work is done with any test request,
TE can trigger an unplug before running the next test case. In the
current flow we send HPD notification at the end of the attention
work without checking the HPD status, leading to delay in processing
the test requests. Rectified here.

Change-Id: I600c69abfc31deee25e09756c73592854e3faa3b
Signed-off-by: Sandeep Gangadharaiah <quic_sandgang@quicinc.com>
Signed-off-by: Soutrik Mukhopadhyay <quic_mukhopad@quicinc.com>
2024-05-22 10:30:02 +05:30
qctecmdr
16eee1f9f0 Merge "disp: msm: dsi: update max value for brightness property" 2024-05-21 03:28:56 -07:00
qctecmdr
999fe9abe2 Merge "disp: msm: sde: add check to avoid registering invalid ranges in dump" 2024-05-21 03:28:55 -07:00
Mahadevan
ff946804dd disp: msm: sde: avoid vblank toggling for virtual displays
This change avoids the enabling or disabling of vblank for
virtual displays. It ensures that vblank remains disabled
regardless of userspace requests.

Change-Id: I104cae9b8c0c4770b5092df49bd30501b09cbbc7
Signed-off-by: Mahadevan <quic_mahap@quicinc.com>
2024-05-21 14:54:11 +05:30
Akhil Jaiswal
cfc54d3f22 disp: msm: sde: add check to avoid registering invalid ranges in dump
Add check to avoid registering invalid ranges in dump.

Change-Id: I637fa843c900636e1420bc01a49f36dfeaa8f449
Signed-off-by: Akhil Jaiswal <quic_akhijais@quicinc.com>
2024-05-17 03:14:29 -07:00
qctecmdr
f0cf669898 Merge "disp: msm: sde: enable EPT feature for pitti" 2024-05-16 23:58:12 -07:00
qctecmdr
7affe06826 Merge "disp: msm: dsi: fix bl->raw_bd NULL pointer dereference" 2024-05-15 01:20:51 -07:00
qctecmdr
b1ccdd0067 Merge "disp: msm: sde: select vbif QOS LUT based on ddr type" 2024-05-14 06:12:15 -07:00
Anand Tarakh
1e1c89b1a7 disp: msm: dsi: update max value for brightness property
Update max value for brightness property during property install.
In dual display with different max brightness level, property install
happens for primary display with its max value. When there is brightness
update for secondary display then it will fail in check for set property
due comaparison with max brightness of primary display. Avoid this by
updating max value of brightness property to 0xFFFF.

Change-Id: Icb6f19312075670f228d371b15a1a81dffaab341
Signed-off-by: Anand Tarakh <quic_atarakh@quicinc.com>
2024-05-10 00:20:38 -07:00
Jayaprakash Madisetty
f410e07221 disp: msm: sde: enable EPT feature for pitti
Add changes to enable ept feature during catalog init
for pitti target.

Change-Id: I3ba9d4e371373c8cd9a761139260b8b60ab6037f
Signed-off-by: Jayaprakash Madisetty <quic_jmadiset@quicinc.com>
2024-05-09 18:39:57 +05:30
Akash Gajjar
4501648c68 disp: msm: sde: avoid backlight update in poms use case
Some panels need at least one frame to be transferred to GRAM
before enabling the backlight. This is done by delaying the
backlight update to these panels until the first frame commit
is completed. This feature is activated by setting the
"qcom,bl-update-flag = delay_until_first_frame" property in the
device tree. However, this feature adds delay in the POMS
(video 2 command) use case adversely. To address this additional
delay, avoid delaying the backlight for the POMS use case.

Change-Id: Ia25afd35f9fe4ffa7d56bddad2f0975a77f39fdf
Signed-off-by: Akash Gajjar <quic_agajjar@quicinc.com>
2024-05-09 10:05:48 +05:30
Rajeev Nandan
e8c4aa25c5 disp: msm: dsi: fix bl->raw_bd NULL pointer dereference
In trusted vm, a stub function is used for the panel_ops.bl_register,
hence the backlight_device bl->raw_bd used for WLED backlight type
remains uninitialized.

If the panel backlight is WLED, this can cause a NULL pointer
dereference in TVM during dsi_panel_bl_handoff().

Add a check before dereferencing bl->raw_bd.

Change-Id: Ieb40781263b4318313fd29b339122ae6c59b1590
Signed-off-by: Rajeev Nandan <quic_rajeevny@quicinc.com>
2024-05-09 01:45:08 +05:30
Akash Gajjar
c91213ef00 disp: msm: sde: select vbif QOS LUT based on ddr type
Add property to parse the ddr type and select the vbif QOS
values based on the detected ddr type.

Change-Id: Ifc980b5bdadc38b7b0882568a1f07e4e8441303a
Signed-off-by: Mahadevan <quic_mahap@quicinc.com>
Signed-off-by: Akash Gajjar <quic_agajjar@quicinc.com>
Signed-off-by: Akhil Jaiswal <quic_akhijais@quicinc.com>
2024-05-08 14:22:24 +05:30
Soutrik Mukhopadhyay
d021bca90e disp: msm: dp: Handle aux switch node missing in device tree
Ensure to allocate switch type as bypass in case of dp aux switch
node missing in device tree entry and prevent any scope of null
pointer dereferencing.

Change-Id: I1d50d785e028f2e69a0effaedb2dbb6568a473dd
Signed-off-by: Soutrik Mukhopadhyay <quic_mukhopad@quicinc.com>
2024-05-05 11:05:59 +05:30
qctecmdr
f0fb375de8 Merge "disp: msm: sde: change the checking on height for demura config" 2024-05-02 19:37:10 -07:00
Akash Gajjar
19f93524ce disp: msm: sde: fix polling logic while enabling the timing engine
This change fixes the 'commit 92cbd6d654 ("disp: msm: sde: while
timing engine enabling poll for active region")' which introduces
one frame time delay during enabling the timing engine.

Change-Id: Ibe71eb785822381fd23e74f4d55dbd141024d520
Signed-off-by: Akash Gajjar <quic_agajjar@quicinc.com>
2024-04-25 23:09:36 -07:00
qctecmdr
01fde95aff Merge "disp: msm: sde: add changes to support odd number of dedicated-CWB" 2024-04-24 04:27:31 -07:00
Akhil Jaiswal
bde8c4627e disp: msm: sde: add changes to support odd number of dedicated-CWB
Add changes to support odd number of dedicated-CWB.

Change-Id: I21c8521e98f6a8b5bb002f1c056afc501e7e9780
Signed-off-by: Akhil Jaiswal <quic_akhijais@quicinc.com>
2024-04-23 14:36:01 +05:30
Qing Huang
68f5b0d13a disp: msm: sde: change the checking on height for demura config
When enable spr 2d filer in PU case, The extra line will be over
fetch on top of roi. But for demura, it does not require over fetch.
Theresfore the height of demura plane is not same with the height
of LM.
Change modify the checking on height while set demura config.

Change-Id: Ie2232e0cd6ea0bec366a1f44b556cc13502cb512
Signed-off-by: Qing Huang <quic_huangq@quicinc.com>
2024-04-21 20:06:00 -07:00
qctecmdr
d6f18e0ef1 Merge "disp: msm: sde: reset llcc_active of crtc on suspend commit" 2024-04-18 22:41:08 -07:00
qctecmdr
fd946778a9 Merge "disp: msm: sde: clear existing interface configuration for CWB" 2024-04-16 06:37:55 -07:00
Mahadevan
bbbf6aae8a disp: msm: sde: reset llcc_active of crtc on suspend commit
In Commit N, llcc is enabled. However in Commit N+1, suspend
is triggered without a llcc disable commit. As a result, llcc
remains active, preventing ADSP from entering the island.

Change-Id: I36fd8cc8c3f8a97e18b53507749a1b639f0c0cfd
Signed-off-by: Mahadevan <quic_mahap@quicinc.com>
2024-04-15 08:36:26 -07:00
qctecmdr
e78720e096 Merge "disp: msm: sde: increase EPT timeout threshold" 2024-04-11 02:40:58 -07:00
qctecmdr
d3b916c2a0 Merge "disp: msm: sde: enable uidle support for palawan target" 2024-04-07 23:04:09 -07:00
Mahadevan
56789f806f disp: msm: sde: clear existing interface configuration for CWB
In the primary topology (2 2 1), during a full layer mixer
update, CWB requires two layer mixers. However, in the
scenario where Commit N has CWB enabled and uses two LMs
(Merge3D), and Commit N+1 has a single LM with partial update
Merge3D and two CWB and Merge 3D is programmed leads to commit
failure. This change addresses the issue by clearing the
existing configuration.

Change-Id: I8855d761c6eb6ad8809d94872ee961c6a721c541
Signed-off-by: Mahadevan <quic_mahap@quicinc.com>
2024-04-08 09:47:15 +05:30
Mahadevan
ee8669055e disp: msm: sde: increase EPT timeout threshold
During VTS testing, simulated multi-frame delays
are set using the EPT (Expected Present Time)
property. The test case failed at lower refresh
rates. This change extendes the EPT timeout threshold
to 10 seconds, ensuring support for multiple frame
delays.

Change-Id: I75ee2f3b27083014e560c5819ed9929a137ef8da
Signed-off-by: Mahadevan <quic_mahap@quicinc.com>
2024-04-07 08:29:13 -07:00
qctecmdr
f92c898192 Merge "disp: msm: replace iommu_attach/detach with iommu_sid_switch" 2024-03-29 06:13:16 -07:00
qctecmdr
9aa2b54ff1 Merge "disp: msm: sde: set vlut only after ltm init" 2024-03-29 06:13:16 -07:00
qctecmdr
546824f3c1 Merge "disp: Enable Bazel compilation for volcano" 2024-03-26 02:58:04 -07:00
Akhil Jaiswal
8352afaa19 disp: Enable Bazel compilation for volcano
Enable Bazel compilation for volcano.

Change-Id: I84a2d46b3c814b766284fdb35a47737bb81e985b
Signed-off-by: Akhil Jaiswal <quic_akhijais@quicinc.com>
2024-03-25 12:10:50 -07:00
Akhil Jaiswal
47acac9dbf disp: msm: sde: add support for virtual sde blocks
This change add support for virtual sde blocks to maintain
the layer mixer id which is used for proper allocation of
dcwb.

Change-Id: I2b21561f72dab3ef833de71ceb1fa6dac886dc04
Signed-off-by: Mahadevan <quic_mahap@quicinc.com>
Signed-off-by: Akhil Jaiswal <quic_akhijais@quicinc.com>
2024-03-25 12:10:41 -07:00
qctecmdr
88111350b5 Merge "disp: msm: sde: store in_clone_mode flag locally in wb_frame_done" 2024-03-24 13:52:59 -07:00
qctecmdr
a386bcdf1a Merge "disp: msm: sde: add rev checks for volcano target" 2024-03-24 13:52:59 -07:00
qctecmdr
e83da26cdf Merge "disp: msm: sde: add mutex lock to protect wb_dev" 2024-03-24 13:52:59 -07:00
Mahadevan
c831956e54 disp: msm: sde: store in_clone_mode flag locally in wb_frame_done
The issue scenario is as follows:
 1. User space issues CWB commit N-1, frame got picked up and wr_ptr_irq
    is received.
 2. Next commit N CWB disable commit is programmed waits for N-1 wb_done
    irq.
 3. The kickoff count is decremented on wb_done_irq of commit N-1
    and wb wait_for_idle is exited.
 4. wb_frame_done irq thread execution stalled before populating fences
    and commit thread execution continues.
 5. wb_reset disables in_clone_mode flag, the stalled wb_done_irq thread
    resumes its execution and signals the release fences on primary
    CRTC.
 6. Commit N-1  frame_done irq is received and release fences is
    signaled again.
Userspace assumes Commit N also completed on receiving of second release
fence causing corruption in screen. This patch stores in_clone_mode
flag in wb_done_irq and only CWB retire fence is signaled.

Change-Id: I758e19178e4ba8722a01fca72d230f066831aec9
Signed-off-by: Mahadevan <quic_mahap@quicinc.com>
Signed-off-by: Akash Gajjar <quic_agajjar@quicinc.com>
2024-03-21 03:14:15 -07:00
Anjaneya Prasad Musunuri
cdbaf90cd2 disp: msm: sde: set vlut only after ltm init
This changes add checks to make sure LTM init is set
before setting VLUT.

Change-Id: Ifeeeb1ff176b2c91a2c5f43928fb9621b69585f0
Signed-off-by: Anjaneya Prasad Musunuri <quic_aprasad@quicinc.com>
2024-03-21 14:52:11 +05:30
Akhil Jaiswal
fab63547ed disp: msm: sde: add rev checks for volcano target
Add required revision checks from display for volcano target.

Change-Id: I8d65c0e957602a8069fd7a60077159e6a869c19f
Signed-off-by: Akhil Jaiswal <quic_akhijais@quicinc.com>
2024-03-21 12:05:15 +05:30
Akash Gajjar
fdc95c8dae disp: msm: sde: enable uidle support for palawan target
This change enables the uidle feature support for palawan target.

Change-Id: I91010e4ce26dd74ea0e9367b6eee0165ee7814f7
Signed-off-by: Akash Gajjar <quic_agajjar@quicinc.com>
2024-03-21 11:12:05 +05:30
qctecmdr
a4550cab5e Merge "disp: msm: sde: disable dest scaler on suspend event" 2024-03-20 21:49:27 -07:00
qctecmdr
5c7dda5c20 Merge "Revert "disp: msm: sde: avoid race on in_clone_mode flag in wb encoder"" 2024-03-20 21:49:27 -07:00
qctecmdr
1088452eaf Merge "disp: msm: sde: avoid registration of hw_fence registers for reg_dump" 2024-03-20 21:49:26 -07:00
qctecmdr
8f18694bc7 Merge "disp: msm: dsi: Avoid re-initializing PLL registers during dyn clk switch" 2024-03-16 05:47:05 -07:00
qctecmdr
53de7e375b Merge "disp: msm: sde: free the allocated memory of the acl and sgl descriptor" 2024-03-16 05:47:05 -07:00
Jayaprakash Madisetty
53615194b4 disp: msm: sde: disable dest scaler on suspend event
Destination scaler hw can be enabled and disabled runtime for
sharpness only case through QDCM.

Customer is using shared DSI solution and issue scenario is:

1) DS0 configured and enabled for INTF1 display1.
2) Suspend commit is triggered with DS0 disable configuration but
   driver programming doesn't happen as crtc is not enabled.
   for customer case, GDSC is not turned off due to extra vote.
3) On resume commit on INTF1 display2 with different resolution,
   DS0 is not configured from userspace, but in HW,
   DS0 programming is retained.
4) Due to this retained programming, DSI underflow is seen in
   resume commit.

Add changes to disable dest scaler qseed opmode and merge ctrl
as part of cp crtc disable sequence.

Change-Id: Ibb39814e02870394da4c7c7318e6e2780fed9081
Signed-off-by: Jayaprakash Madisetty <quic_jmadiset@quicinc.com>
2024-03-14 18:04:29 +05:30
Srihitha Tangudu
28e3c16d2a disp: msm: dsi: Avoid re-initializing PLL registers during dyn clk switch
Currently we are always initializing PLL registers whenever PLL is
configured. Re-initializing PLL registers during dynamic clock switch in
case of cphy video mode is moving the PLL to some bad state resulting in
display freeze. Avoid this by restricting initialization of PLL
registers to only while turning on the PLL.

Change-Id: I09eacbb37fff4e0e91d226ac08e7d5a2bfbbfe26
Signed-off-by: Srihitha Tangudu <quic_tangudu@quicinc.com>
2024-03-12 06:15:42 -07:00