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>
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)
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>
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>
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>
Add for eDP display support pluggable and support eDP as secondary.
Change-Id: I25d153282f08b8db21fdad15d3c971f609cdf49a
Signed-off-by: Boyuan Yan <quic_boyuyan@quicinc.com>
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
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
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>
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>
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>
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>
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>
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>
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>
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>
Add pinctrl state for backlight pwm to apply its settings.
Change-Id: I0de1edc0a1bbd43057de77e1f26307f0de33f29f
Signed-off-by: Nilesh Laad <quic_nlaad@quicinc.com>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>