Commit graph

2,112 commits

Author SHA1 Message Date
Nilesh Laad
e7d707464f disp: msm: dp: Convert clock operations to byte2 ops
Convert clock operation to byte2 ops to meet DISPCC requirement.
Clock unit is changed from KHZ to HZ. Added link clock parent as
freq table is no longer supported in byte2 ops.

Change-Id: Iefeca1ecf7fb6335c45f7664a661d1bbe2d6f1e5
Signed-off-by: Xiaowen Wu <wxiaowen@codeaurora.org>
Signed-off-by: Soutrik Mukhopadhyay <quic_mukhopad@quicinc.com>
Signed-off-by: Nilesh Laad <quic_nlaad@quicinc.com>
2023-04-03 02:54:08 -07:00
Nilesh Laad
5ca6a20f2a disp: msm: dp: Masking interrupt for eDP
Changes to mask unplug, replug and plug based interrupts
for eDP.

Change-Id: I4ffaff67b98b647e5dbed6913b9851588d9dd5cc
Signed-off-by: Soutrik Mukhopadhyay <quic_mukhopad@quicinc.com>
Signed-off-by: Nilesh Laad <quic_nlaad@quicinc.com>
2023-04-03 02:53:04 -07:00
Nilesh Laad
fc6b8eb5d0 disp: msm: dp: add support for eDP display
Changes to support eDP display detection and bringup
through panel power sequencing.

Change-Id: Ie20906467c209872296e8b5475cee0ca98a3b232
Signed-off-by: Soutrik Mukhopadhyay <quic_mukhopad@quicinc.com>
Signed-off-by: Nilesh Laad <quic_nlaad@quicinc.com>
2023-04-03 02:52:00 -07:00
Nilesh Laad
372aa23cee disp: msm: dp: add eDP support as a primary display
Add support for new eDP interface. As the protocol is similar to DP,
the new eDP driver shall re-use the DP functionality wherever applicable.

Change-Id: I0bcaa2bf2c401cbfb3470ecf232bf6643fb43a7d
Signed-off-by: Sankeerth Billakanti <quic_sbillaka@quicinc.com>
Signed-off-by: Nilesh Laad <quic_nlaad@quicinc.com>
2023-04-03 02:51:08 -07:00
Nilesh Laad
4eb2953032 disp: msm: dp: Support DP display as primary
Changes to support DP display as primary. The connector should
indicate the display type as primary to the drm library.

Change-Id: Ib5f6d9d72e8c42f88d38e06ed504848b8fc52029
Signed-off-by: Xiaowen Wu <wxiaowen@codeaurora.org>
Signed-off-by: Soutrik Mukhopadhyay <quic_mukhopad@quicinc.com>
Signed-off-by: Sankeerth Billakanti <quic_sbillaka@quicinc.com>
Signed-off-by: Nilesh Laad <quic_nlaad@quicinc.com>
2023-04-03 02:18:50 -07:00
Nilesh Laad
dfce8892e1 disp: msm: dp: add pixel base offset support in device tree
Parse pixel base offset from "qcom,pixel-base-off" node in device
tree to differentiate pixel base offset in different hardwares.

Change-Id: Ia8eac1a7c3dba3eaff6b88cd7f6a467f288cdf4b
Signed-off-by: Xiaowen Wu <wxiaowen@codeaurora.org>
Signed-off-by: Soutrik Mukhopadhyay <quic_mukhopad@quicinc.com>
Signed-off-by: Nilesh Laad <quic_nlaad@quicinc.com>
2023-04-03 02:17:55 -07:00
Nilesh Laad
6c72a97981 disp: msm: dp: add 7nm eDP PHY support
Add 7nm eDP PHY support to enable eDP.

Change-Id: If04d962d964e58029f012f5ff72c632dabac602a
Signed-off-by: Nilesh Laad <quic_nlaad@quicinc.com>
2023-04-03 14:45:36 +05:30
Nilesh Laad
7c1c98ef05 disp: msm: dp: add files for 7nm eDP PHY
Add new files to support 7nm eDP PHY.

Change-Id: I2b2f119bfab3c9d5e5848235d8b87556cbf514b9
Signed-off-by: Nilesh Laad <quic_nlaad@quicinc.com>
2023-04-03 14:40:22 +05:30
qctecmdr
7c41afb5ec Merge "disp: msm: sde: cancel delayed idle_notify_work beginning of every commit" 2023-02-09 18:33:32 -08:00
Jayaprakash Madisetty
a4fdef4c12 disp: msm: sde: drop suspend state if commit is skipped
Drop refcount on pm_suspend commit state if atomic
commit is skipped due to failure. It will avoid frame
trigger during pm_resume call.

Change-Id: Iecd98b106454c82c81a1ef9faaf1af4be2bf19e6
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
Signed-off-by: Jayaprakash Madisetty <quic_jmadiset@quicinc.com>
2023-01-23 22:58:05 +05:30
Mahadevan
0a00bff777 disp: msm: sde: cancel delayed idle_notify_work beginning of every commit
In some cases HAL sets CRTC_PROP_IDLE_TIMEOUT property to zero
and idle_notify_work which is already scheduled will send notfication
on timer expire. This will cause janks in subsequent commit. This
change cancels the existing delayed idle_notify work and will get
rescheduled after frame trigger if CRTC_PROP_IDLE_TIMEOUT property is
non zero.

Change-Id: I8b9ebce8282425f55838b94cfd345b5e733fa645
Signed-off-by: Mahadevan <quic_mahap@quicinc.com>
2023-01-16 15:39:28 +05:30
Rajeev Nandan
90a2dca98f disp: msm: dsi: add missing dsi ctrl mutex lock in host timing update
Acquire dsi_ctrl->ctrl_lock lock before programming dsi ctrl
registers. Failing this may lead to race conditions in register
programming.
Add missing mutex lock inside dsi_ctrl_host_timing_update().

Change-Id: Ic86cbe282333c0b4d63ae3d5b3356a5d24752203
Signed-off-by: Rajeev Nandan <quic_rajeevny@quicinc.com>
2022-11-22 23:37:50 -08:00
qctecmdr
73a4620464 Merge "disp: msm: dsi: Handle absence of dsi select clocks in device-tree" 2022-11-15 01:55:43 -08:00
Mahadevan
d538367ebd disp: rsc: update mode-1 threshold config to 1 hz
Update mode-1 threshold configuration to 1 hz to avoid
selecting mode-2 if panel vsync is irregular.

Change-Id: I9d48d088ac1e84f9d0e422d006458527e1944ed8
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
Signed-off-by: Mahadevan <quic_mahap@quicinc.com>
2022-10-26 15:50:44 +05:30
Srihitha Tangudu
1d01b6c5e1 disp: msm: dsi: Handle absence of dsi select clocks in device-tree
Initialize pll clocks to NULL and warn if dsi select clocks are not
defined in device-tree.

Change-Id: If831692021278b020d49c06c3bb15d631c0376a4
Signed-off-by: Srihitha Tangudu <quic_tangudu@quicinc.com>
2022-10-21 16:13:33 +05:30
Linux Build Service Account
c714fc0871 Merge "disp: msm: dsi: clear the panel esd_recovery_pending in power on commit" into display-kernel.lnx.5.4 2022-10-11 10:27:02 -07:00
Srihitha Tangudu
31a6cf6c8b disp: msm: dsi: clear the panel esd_recovery_pending in power on commit
Currently the panel esd_recovery_pending flag is cleared for every mode
set. The ESD recovery completes only after the suspend and resume. Clear
the flag only during power on commit.

Change-Id: I97e370feba0aad34558e4675168b4bcb7f5901ca
Signed-off-by: Srihitha Tangudu <quic_tangudu@quicinc.com>
2022-10-05 23:22:18 -07:00
Soutrik Mukhopadhyay
25edb2950d drm: msm: remove YUV format setting
Remove the YUV format setting, will use the upstream code
for YUV mode check.

Change-Id: I24f059ff7cd4cf64f41d7f77bfa6517df0cccfde
Signed-off-by: Zhao, Yuan <yzhao@codeaurora.org>
Signed-off-by: Soutrik Mukhopadhyay <quic_mukhopad@quicinc.com>
2022-10-06 10:35:59 +05:30
Mahadevan
d5dd61b011 disp: msm: sde: fix min ib vote in mnoc and ebi_ib path
This change sets proper minimum vote for lcc_mnoc and
ebi_ib path.

Change-Id: Idbb8667a7416e359e848d3f4dc266531979639d3
Signed-off-by: Mahadevan <quic_mahap@quicinc.com>
2022-09-20 20:54:09 +05:30
Deven Solanki
40e19ff3ed disp: msm: dsi: add support for dsi config
Add uio support for dsi config.

Change-Id: I2098a6b3abe95794cf3e08dbb34198543d15385c
Signed-off-by: Deven Solanki <quic_dsolanki@quicinc.com>
2022-08-18 00:16:34 -07:00
qctecmdr
71b489f33e Merge "disp: msm: add msm framebuffer emulation" 2022-08-16 21:17:12 -07:00
Kai Xing
7015ffdd0b disp: msm: add msm framebuffer emulation
This change copies msm_fbdev.c from msm-5.14 kernel, which adds
frame buffer support to display driver. And this file is from
msm-5.4 commit <5fce077d> ("drm: msm: Fix the format prints in
display driver").

Change-Id: I113cb6441334ff6b61cfd15cf863c325d51091b4
Signed-off-by: Kai Xing <quic_kxing@quicinc.com>
2022-08-03 15:06:14 +05:30
Kai Xing
29a7eac491 makefile: add gki config support for display techpack for kona
Add required changes to makefile and enable the gki
config keys for kona target compilation.

Change-Id: I39422750ac6000078278ddc7705e7148f6b0ae6b
Signed-off-by: Kai Xing <quic_kxing@quicinc.com>
2022-08-01 14:04:31 +05:30
Naresh Kumar Lingagalla
ed8c317940 Revert "disp: msm: dsi: Add DSI PLL support for 7nm_v4_1 arch"
This reverts commit a965033fba.

Change-Id: Ifb3d9b1a10a28cd281459174a9291fea79ec781d
Signed-off-by: Naresh Kumar Lingagalla <quic_nlingaga@quicinc.com>
2022-07-07 10:11:43 +05:30
Kai Xing
a965033fba disp: msm: dsi: Add DSI PLL support for 7nm_v4_1 arch
Add DSI PLL support for 7nm_v4_1 architecture

Change-Id: I4adf1ec6ed40fea16aa80579d34a3c918faa8478
Signed-off-by: Kai Xing <quic_kxing@quicinc.com>
2022-06-14 21:46:34 +05:30
Sai Srujana Oruganti
6a0f0b0f1f disp: msm: sde: disable dsi ctrl regulator during deepsleep
Disable DSI ctrl regulator while entering deepsleep and restore
during resume. Refactor deepsleep related code to helper function.

Change-Id: If6da0471db59fbdfa9d9855ee1464fcab90cae15
Signed-off-by: Venkata Prahlad Valluru <quic_vvalluru@quicinc.com>
Signed-off-by: Sai Srujana Oruganti <quic_osaisruj@quicinc.com>
2022-05-30 22:17:15 -07:00
qctecmdr
5cf1bae57a Merge "disp: msm: sde: update uidle ctl register only for master encoder" 2022-05-24 07:14:15 -07:00
Yashwanth
5e4c130f36 disp: msm: sde: update uidle ctl register only for master encoder
In case of dual dsi usecase, since both the encoders use
the same CTL path, this change ensures that uidle ctl
settings are updated only by the master encoder.

Change-Id: I7bd75ae0195d34f0c1810403fa5e390fbaa64ed0
Signed-off-by: Yashwanth <quic_yvulapu@quicinc.com>
2022-05-16 11:52:13 +05:30
qctecmdr
be3f2e68c9 Merge "disp: msm: add skip panel power off dt property" 2022-05-08 06:57:24 -07:00
Jayaprakash Madisetty
09ec818831 disp: msm: avoid minidump region addition for mdss register dumps
This change enables minidump for register dumps, debug bus collection
based on CONFIG_QCOM_VA_MINIDUMP config. The minidump driver in 5.4 kernel
needs physical contiguous memory allocation as a requirement. The
minidump collection failure is seen with commit fdf36d7124
("disp: msm: use vzalloc for large allocations") and it uses
vzalloc to address memory allocation failure with order 5. This
patch will disable minidump collection for regdumps, debug bus
to address minidump collection failure.

Change-Id: If5ff91ff95279ee2997765599dbeab16ac2dae60
Signed-off-by: Jayaprakash Madisetty <quic_jmadiset@quicinc.com>
2022-05-04 12:31:28 +05:30
Sai Srujana Oruganti
fc3be600f7 disp: msm: add skip panel power off dt property
This property skips the panel power off for panels
with in-cell design.

Change-Id: I61ff7b8696940b74a58c79eef5b9cd43fd551c01
Signed-off-by: Sai Srujana Oruganti <quic_osaisruj@quicinc.com>
2022-04-28 10:58:11 -07:00
qctecmdr
0bd399fda0 Merge "disp: msm: dsi: handle read cmd tx failure from dsi host transfer" 2022-04-27 23:10:05 -07:00
Sai Srujana Oruganti
2b84165300 disp: msm: dsi: avoid setting ulp load to disable load
When there is no ulp load entry, ulp load should be set to
enable load.

Change-Id: I531108b4d2137cf9262874bc411ff06592302374
Signed-off-by: Sai Srujana Oruganti <quic_osaisruj@quicinc.com>
2022-04-18 15:38:49 +05:30
qctecmdr
a2aacd57a3 Merge "disp: msm: sde: unset and set clk parents during pm_suspend" 2022-04-17 05:31:50 -07:00
Srihitha Tangudu
43cb27c187 disp: msm: dsi: handle read cmd tx failure from dsi host transfer
Currently we are handling only write command transfer failures from
dsi host transfer path. Modify check to handle read command transfer
failures.

Change-Id: Iee1dbf46a4374819e6d6425eb5acece8ec1fb8b1
Signed-off-by: Srihitha Tangudu <quic_tangudu@quicinc.com>
2022-04-14 01:20:23 -07:00
qctecmdr
bb3029af82 Merge "disp: msm: dsi: handle panel detection after a pp done timeout" 2022-04-13 21:40:08 -07:00
Venkata Prahlad Valluru
9a6ed8620e disp: msm: sde: unset and set clk parents during pm_suspend
Currently link clk parent set/unset are done as part of dsi_prepare
and dsi_unprepare, but in case of deepsleep with display ON, these
will not be called. Due to mismatch in parent between clk
framework and actual parent, subsequent clk_set_parent will
early return without setting the parent.

To avoid this condition, do set parent to xo, as part of
pm_suspend and restore to link clk source in pm_resume.

Change-Id: I626899304580f9d9fbcc92cd8b139cd89cd48999
Signed-off-by: Venkata Prahlad Valluru <quic_vvalluru@quicinc.com>
2022-04-14 02:28:16 +05:30
qctecmdr
1438587222 Merge "disp: msm: dsi: Fix DMA window scheduling programming" 2022-04-11 20:39:05 -07:00
Kashish Jain
9e5185ad69 disp: msm: dsi: handle panel detection after a pp done timeout
It has been observed that TE check may fail even if status read
is passing. Panel detection should be successful only if both
TE check and register read (if supported) pass.

Change-Id: I8d2c5d4139561fe533fc148124b7dde54b63c24e
Signed-off-by: Kashish Jain <quic_kashjain@quicinc.com>
2022-04-05 12:20:50 +05:30
Jayaprakash Madisetty
fdf36d7124 disp: msm: use vzalloc for large allocations
Large allocations using kzalloc can lead to timeouts. This updates
the allocation calls accordingly to use vzalloc to remove
requirements on contiguous memory.

Change-Id: Ica54483787509ed0e9283289fc9d523e8cde9238
Signed-off-by: Nilaan Gunabalachandran <quic_ngunabal@quicinc.com>
Signed-off-by: Jayaprakash Madisetty <quic_jmadiset@quicinc.com>
2022-03-31 14:48:52 +05:30
qctecmdr
a67699f42b Merge "disp: msm: sde: Fix data width calculation when widebus is enabled" 2022-03-24 23:59:45 -07:00
qctecmdr
a3d1758f89 Merge "drm: msm: call rsc hw_init after hibernation" 2022-03-23 11:33:22 -07:00
Kashish Jain
ebd2c679df disp: msm: sde: Fix data width calculation when widebus is enabled
Adjust the data width calculation to reduce the rounding off error
when the widebus is enabled.

Change-Id: Ia2fa4536ce519548989e2befcb22fb685f286c9e
Signed-off-by: Kashish Jain <quic_kashjain@quicinc.com>
2022-03-22 16:11:16 +05:30
Sai Srujana Oruganti
f9b6363fb7 drm: msm: call rsc hw_init after hibernation
When device boots from hibernation, probe function is not called
and rsc need to initialize the hw at the first client update call.

Change-Id: Iba3a3aaebbb8052ce93b8aac1746f33ea80795fb
Signed-off-by: Sai Srujana Oruganti <quic_osaisruj@quicinc.com>
2022-03-21 23:28:21 +05:30
Samantha Tran
3823e9f6ed disp: msm: sde: remove redundant backlight update
Current logic will unnecessarily call backlight update
twice in cases where backlight level is changing. When
this happens, there is a potential delay waiting for the
first command to complete before sending the second
backlight update with the same value. This change removes
one backlight call and now only calls update if the
property is marked as dirty.

Change-Id: I260f0d73b3a5af9ced7ae261d247595f965a8d9e
Signed-off-by: Samantha Tran <samtran@codeaurora.org>
2022-03-20 23:42:18 -07:00
Rajeev Nandan
a63678a172 disp: msm: dsi: Fix DMA window scheduling programming
In DMA start window scheduling, TRIG_CTRL.COMMAND_MODE_DMA_TRIGGER_SEL
is programmed to SW + DMA start window trigger. But if DMS switch
comes after command is scheduled, COMMAND_MODE_DMA_TRIGGER_SEL gets
reprogrammed to SW trigger leading to command transfer failure.

Program the COMMAND_MODE_DMA_TRIGGER_SEL only from the CMD DMA Tx path.

Change-Id: I01062497bb70aa5fdcb25be3715c7cbc4c68b681
Signed-off-by: Ritesh Kumar <quic_riteshk@quicinc.com>
Signed-off-by: Rajeev Nandan <quic_rajeevny@quicinc.com>
2022-03-17 12:14:26 +05:30
qctecmdr
0777752947 Merge "disp: msm: sde: take min ib votes from perf config" 2022-03-09 18:49:35 -08:00
Andhavarapu Karthik
caa5fa4247 disp: msm: sde: take min ib votes from perf config
Changes are made to get minimum ib vote for each bus from
device tree entries rather than static values.

Change-Id: Ibecb44ac6b8673c5d5b8979014c215ab3ce9e43f
Signed-off-by: Andhavarapu Karthik <quic_kartkart@quicinc.com>
2022-03-04 13:26:40 +05:30
Jayaprakash Madisetty
3c0f029ebb disp: msm: sde: validate plane mode and gem obj flags
Add changes to validate the plane fb_translation mode
and dma_buf flags of drm_gem_obj attached to plane. It
avoids device panic on S2 translation fault and fails the
drm_atomic_commit for which mismatch is detected. In
current codeflow, only S1 mappings are modified when dma_buf
is detached from Non_sec CB and attached to secure SB as part
of msm_gem_get_iova_locked API, but S2 mapping entries are
not modified and this crash is seen.

Change-Id: I6bced92994cd8681cf69231e41bec0c262dafd33
Signed-off-by: Jayaprakash Madisetty <quic_jmadiset@quicinc.com>
2022-02-28 16:08:52 +05:30
Rajeev Nandan
1f5cc03a33 disp: msm: dsi: fix compressed RGB101010 support
The destination format for compressed rgb101010 should be
the same as rgb888. After adding uncompressed RGB101010 support,
the programming for compressed rgb101010 went wrong.
Fix this to re-enable compressed rgb101010 format support.

Change-Id: I805e15df14dda8ff0653a0dba8c4efe3fe0681fd
Signed-off-by: Rajeev Nandan <quic_rajeevny@quicinc.com>
2022-02-22 22:50:10 +05:30