Commit graph

2,147 commits

Author SHA1 Message Date
Gopi Botlagunta
b749468a5a disp: msm: sde: get_modes from connector if not present
In case of external bridges, modes are not available for
setting splash_mode. Add support to get modes
supported by the external bridges.

Change-Id: Ib17e17bcf1ec91b582da2e0cf5d648b9c366b292
Signed-off-by: Gopi Botlagunta <quic_botlagun@quicinc.com>
2025-05-09 15:07:53 +05:30
Jayasri Sampath Kumaran
b19d4a3a8e disp: msm: sde: fix kms NULL pointer access in encoder IRQ control
A possible kms NULL pointer access is found during CPU vote for IRQ
when kms isn't NULL checked before accessing structure members. So,
perform kms NULL check before accessing members.

Change-Id: I137759ea0723be8580e9166c983d1ba38f4eb281
Signed-off-by: Jayasri Sampath Kumaran <quic_jsampath@quicinc.com>
(cherry picked from commit 393118f87846d64a10c1d5a32161bcbe012c0667)
(cherry picked from commit 17513cad23c67a11431fdfd77a59d5e207352dbc)
2025-03-26 20:45:59 -07:00
Venkata Gopi Nagaraju Botlagunta
dbebbf294b disp: msm: dsi: add support for hibernation
Set parent to xo clock for link clocks,
before we enter suspend, so that framework and hw state are
in correct state, when we exit from hibernation.

Change-Id: Ib0e2ca6ac57aec566171b2f72e2b6822e2d9fde2
Signed-off-by: Venkata Gopi Nagaraju Botlagunta <quic_botlagun@quicinc.com>
2024-12-09 15:32:35 +05:30
QCTECMDR Service
4b1e1116a0 Merge "disp: msm: dsi: fix error path for dsi_display init" 2024-11-06 03:55:56 -08:00
Vikas Reddy Pachika
a74ffcf33b disp: config: fix copyright marking for lahaina config
Add qcom license for lahainadispconf.h.

Change-Id: I7048ca710377655c80b14213f1897256074fa2b8
Signed-off-by: Vikas Reddy Pachika <quic_vikasred@quicinc.com>
2024-10-10 23:13:30 -07:00
Vikas Reddy Pachika
94e81e5d2d disp: msm: dsi: fix error path for dsi_display init
Handle dsi_display init errors with proper de-init sequence.

Change-Id: I7d029980a06c8069264c3b1b2b7a6cdb781e1198
Signed-off-by: Deven Solanki <quic_dsolanki@quicinc.com>
Signed-off-by: Vikas Reddy Pachika <quic_vikasred@quicinc.com>
2024-10-09 18:50:14 +05:30
QCTECMDR Service
b5e68eb86f Merge "disp: msm: dp: parse display_type before connector initialization" 2024-10-07 12:41:45 -07:00
QCTECMDR Service
8ce5e1a3ea Merge "disp: config :disable CONFIG_DSI_PARSER for kodiak" 2024-10-07 12:41:45 -07:00
Jinfeng Gu
c8f3df8ea4 disp: msm: dsi: add null pointer check in dsi_display_dev_remove
This change add display null pointer check in dsi_display_dev_remove.

Change-Id: Ib31756c3b22256d19cbcb508f60de4550e3834e1
Signed-off-by: Jinfeng Gu <quic_gjinfeng@quicinc.com>
2024-09-29 23:45:22 -07:00
Zeyuan Lu
52c920054b disp: config :disable CONFIG_DSI_PARSER for kodiak
Disable dsi firmware support on kodiak

Change-Id: I223c5ac9c1c7f136137a115f844e5e75c01e433c
Signed-off-by: Zeyuan Lu <quic_zeyulu@quicinc.com>
2024-09-25 23:12:56 -07:00
Nilesh Laad
8d79506120 disp: msm: dp: parse display_type before connector initialization
dp_parser is only available post connector init, so if parser is
not available get display_type from devicetree itself and remove
redundant code.

Change-Id: I2131a257cb4795f52be1706882dce533baf94600
Signed-off-by: Nilesh Laad <quic_nlaad@quicinc.com>
2024-07-02 18:46:45 +05:30
Navjyot SINGH
addbc02b3a disp: msm: dp: limit max width supported
Add support to limit the maximum resolution that can
be supported on display port.

Change-Id: I2729743f57997302d3f4e3bd01bfad2fd4b23c6d
Signed-off-by: Navjyot SINGH <quic_navjsing@quicinc.com>
2024-04-12 10:40:06 +05:30
qctecmdr
49957290aa Merge "disp: msm: sde: address array index out-of-bound issue" 2024-02-05 21:51:31 -08:00
boyuyan
0f45eca383 disp: msm: dp: add support of hotplug for eDP interface.
Add for eDP display support pluggable and support eDP as secondary.

Change-Id: I25d153282f08b8db21fdad15d3c971f609cdf49a
Signed-off-by: Boyuan Yan <quic_boyuyan@quicinc.com>
2024-01-23 04:26:06 -08:00
Nilesh Laad
b83f11f224 disp: msm: sde: address array index out-of-bound issue
Add a check on number of built in displays to avoid
array index out of bounds issue.

Signed-off-by: Nilesh Laad <quic_nlaad@quicinc.com>
Change-Id: I1af626d2f05bf822e02c8e228c28823370d32b4f
2024-01-04 12:34:42 +05:30
boyuyan
bd47e3e63b disp: msm: dp: disable pluggable eDP display backlight config
Disable pluggable eDP display backlight config.

Change-Id: I7a5cde4531422a1a5db0fd59e351de570d859c4c
Signed-off-by: Boyuan Yan <quic_boyuyan@quicinc.com>
2023-12-05 16:26:00 +08:00
Nilesh Laad
f76dda607b disp: msm: dp: restore brightness on resume for eDP
For eDP connectors, store brightness setting during
bridge disable and restore during bridge enable.

Signed-off-by: Nilesh Laad <quic_nlaad@quicinc.com>
Change-Id: I04834b86110d9bec40d458f609adb8aeae49b9dd
2023-09-19 16:38:18 +05:30
qctecmdr
3dc145e9e4 Merge "disp: msm: dsi: add a new DT property to support ext bridge hpd" 2023-08-17 04:30:53 -07:00
Shubham Talekar
a73c6bf906 disp: msm: dsi: add a new DT property to support ext bridge hpd
Add a keystr into the connector property if wants this
external bridge to support hpd. Userspace can get this
info from the connector, and do hpd support.

Change-Id: I19e8c2684ef054fbd5c5bf5951357edb1b4ea40c
Signed-off-by: Shubham Talekar <quic_stalekar@quicinc.com>
2023-08-09 18:33:29 +05:30
Boyuan Yan
60ae7e9b8d disp: msm: dsi: correct external dsi bridge interface number
Get the interface number from dsi panel timing node, if no
timing node was set, set the number as ext_bridge_num.

Change-Id: I1f36df6b5780f6eb1ef42e5b260cbdb16ec61c15
Signed-off-by: Boyuan Yan <boyuyan@qti.qualcomm.com>
2023-08-04 08:53:23 +05:30
Boyuan Yan
f4c3141df7 disp: msm: dsi: avoid NULL pointer
Add NULL check for priv_info.

Change-Id: I913987e031b413217e0575a71c1787d9d7aeaf57
Signed-off-by: Boyuan Yan <boyuyan@qti.qualcomm.com>
2023-07-28 07:38:27 +05:30
Boyuan Yan
28bea7e8fc disp: msm: dp: skip aux switch configuration
If redriver is the aux switch instead of fsa4480,
skip configuring aux switch.

Change-Id: I28edfec3833f21511a0e4589cbcf871a8c5628da
Signed-off-by: Boyuan Yan <boyuyan@qti.qualcomm.com>
2023-07-03 20:12:20 -07:00
Nilesh Laad
452e643352 disp: msm: dp: wait for resources init in case of cont splash
Driver probe has to wait for dp resource initialization,
in case of continuous splash to avoid any resource resets.

Change-Id: Idaa506b14132d22b9bfe558c88ab6d33171b4f3b
Signed-off-by: Nilesh Laad <quic_nlaad@quicinc.com>
2023-07-03 02:40:12 -07:00
Linux Build Service Account
2db81f4539 Merge "disp: msm: dp: add backlight for edp" into display-kernel.lnx.5.4.4 2023-06-28 02:42:27 -07:00
Linux Build Service Account
a3b00b3487 Merge changes Ib1c0cc58,I23635b43 into display-kernel.lnx.5.4.4
* changes:
  disp: msm: sde: Remove pm vote at time of handoff
  disp: msm: eDP continuous splash implementation
2023-06-28 02:41:26 -07:00
Sai Srujana Oruganti
ea245e7982 disp: msm: sde: Remove pm vote at time of handoff
Additional pm vote is added when cont splash is enabled
for eDP. This vote has to be removed at the time of
handoff.

Change-Id: Ib1c0cc58f0be1031d405ca8941d3e7984b1e9f46
Signed-off-by: Sai Srujana Oruganti <quic_osaisruj@quicinc.com>
2023-06-27 18:01:45 +05:30
Sai Srujana Oruganti
126db6aa9e disp: msm: eDP continuous splash implementation
For continuous splash use case bootloader already takes
care of eDP hardware states including clocks and regulators.
This change avoid touching eDP hardware blocks during
eDP initialization sequence.

Change-Id: I23635b43ce2a41078383bbcc89aa3f60564599dd
Signed-off-by: Sai Srujana Oruganti <quic_osaisruj@quicinc.com>
2023-06-27 17:53:01 +05:30
Venkata Prahlad Valluru
228e520fb4 disp: msm: dp: add backlight for edp
Register backlight and cooling devices for eDP interface
and reuse connector backlight update functions. Parse and
use backlight properties from devicetree.

Change-Id: I5d96a8d588d8f7266aa5bffad310718942e7dfe6
Signed-off-by: Venkata Prahlad Valluru <quic_vvalluru@quicinc.com>
2023-06-20 17:50:09 +05:30
Linux Build Service Account
7549f1dbd3 Merge "disp: msm: dp: add eDP panel notifier support" into display-kernel.lnx.5.4.4 2023-05-17 23:14:00 -07:00
Nilesh Laad
30b933f50c disp: msm: dp: add eDP panel notifier support
If panel notifier support is set, get panel
phandle and add panel to drm_panel. Notifier
for this panel will be called on dpms update.

Change-Id: I6346eb09a551a993ec9050797d1ba9383491e612
Signed-off-by: Nilesh Laad <quic_nlaad@quicinc.com>
2023-05-12 15:39:30 +05:30
Nilesh Laad
0074d1108b disp: msm: dp: add pinctrl state for backlight pwm
Add pinctrl state for backlight pwm to apply its settings.

Change-Id: I0de1edc0a1bbd43057de77e1f26307f0de33f29f
Signed-off-by: Nilesh Laad <quic_nlaad@quicinc.com>
2023-05-04 12:32:22 +05:30
Xiaowen Wu
cfaa8dfa20 drm/msm/dp: add support to multiple dp instances
Add support to multiple dp isntances. Clean up dp-mst global
state.

Change-Id: Iaa88ab8c339fa0e247656024b289faa087ea0fbd
Signed-off-by: Xiaowen Wu <wxiaowen@codeaurora.org>
Signed-off-by: Soutrik Mukhopadhyay <quic_mukhopad@quicinc.com>
2023-04-03 02:57:04 -07:00
Vara Reddy
4e9b8a8eda disp: msm: dp: move fsa init from dp probe to dp hotplug
DP driver, at probe time, checks for fsa probe completion by
registering a notifier callback. The fsa driver performs some
I2C operations at this time. But occasionally, it takes multiple
attempts to complete these I2C transactions,adding huge delays
to display driver probing.If this delay is long enough, then
display usermode services start before display driver probe completes
and as a result, it fails to enumerate any displays.

Since the fsa switch is needed only after an external display is hot
plugged,this change moves the fsa probe check to dp hotplug handler.

Change-Id: I1b592ec3921a0b406ca23142d07e1a7e8b72090e
Signed-off-by: Vara Reddy <varar@codeaurora.org>
2023-04-03 02:56:14 -07:00
Nilesh Laad
1f5c327e1b disp: msm: sde: update sde interrupt map
Make changes to update sde interrupt map.

Change-Id: I2f525c1028dcfe4c20d7e168c0afbbe5583e0b2f
Signed-off-by: Nilesh Laad <quic_nlaad@quicinc.com>
2023-04-03 02:55:15 -07:00
Nilesh Laad
21b70e44d7 disp: msm: dp: update pll and catalog sequence
Update eDP pll and catalog sequence.

Change-Id: Ic7643cdd9d68e28ea7999ebc9d2c1e87aaa8c9d6
Signed-off-by: Nilesh Laad <quic_nlaad@quicinc.com>
2023-04-03 02:54:40 -07:00
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