提交图

2799 次代码提交

作者 SHA1 备注 提交日期
qctecmdr
b45366ec72 Merge "disp: msm: sde: Split PA sixzone lutdma implementation" 2022-01-21 11:45:11 -08:00
qctecmdr
1d2901d59f Merge "msm: drm: uapi: Add uapi support for sixzone saturation adjustment" 2022-01-21 11:18:14 -08:00
qctecmdr
b68845e871 Merge "disp: msm: dp: avoid dp sw reset on disconnect path" 2022-01-20 16:36:44 -08:00
qctecmdr
0077eebd41 Merge "disp: msm: dp: use link clk khz when initializing mst mgr" 2022-01-20 16:03:19 -08:00
qctecmdr
38513fe19e Merge "disp: msm: dp: avoid duplicate read of link status" 2022-01-20 15:35:22 -08:00
qctecmdr
c3d10af8a0 Merge "disp: msm: dp: fix configuration of aux switches and HPD sources" 2022-01-20 15:05:17 -08:00
qctecmdr
5212368b49 Merge "disp: msm: dp: init DP catalog for kalama" 2022-01-20 13:33:57 -08:00
qctecmdr
31ee22eecb Merge "disp: msm: dp: avoid return value check for certain debugfs functions" 2022-01-20 13:01:13 -08:00
qctecmdr
a51cdff99f Merge "disp: msm: dp: remove unused header declaration" 2022-01-20 12:23:51 -08:00
qctecmdr
178ea61c88 Merge "disp: msm: sde: Update LTM merge mode setting for kailua" 2022-01-20 11:19:08 -08:00
Rajkumar Subbiah
fa1f3fab80 disp: msm: dp: avoid dp sw reset on disconnect path
In an effort to reset the DP controller states on a disconnect, the
driver is issuing a SW reset to the controller. But SW reset on
the controller doesn't necessarily restore the controller to its
full reset state. It only resets part of the logic. So if for some
reason the MST streams were not disabled properly, ie. the slot
allocations were not reset properly in the controller, then a SW
reset would result in the DP controller raising state interrupts.
Since this SW reset is issued in the tail end of the disconnect
processing, the driver turns off all the clocks and also
removes the irq handler. This results in an interrupt storm at
the MDSS top level.

This change removes the SW reset on the disconnect path and
relies on the SW reset that already exists in the connect path
to restore controller state.

Change-Id: Ie7115e17d3c50c46c83c6f0e333da5cb534b8227
Signed-off-by: Rajkumar Subbiah <quic_rsubbia@quicinc.com>
Signed-off-by: Sandeep Gangadharaiah <quic_sandgang@quicinc.com>
2022-01-20 13:55:57 -05:00
Rajkumar Subbiah
7ec4eae53b disp: msm: dp: use link clk khz when initializing mst mgr
MST driver is incorrectly using maximum bw_code while initializing
MST topology manager instead of maximum link clock in KHz. This
prevents the topology manager to set MST state on a subsequent MST
plug in causing all MST cases to fail.

Change-Id: I9fc4e0326fe0c7a6c9b81af8810b7098fa8ba967
Signed-off-by: Rajkumar Subbiah <quic_rsubbia@quicinc.com>
2022-01-20 13:55:28 -05:00
Rajkumar Subbiah
80efc128db disp: msm: dp: avoid duplicate read of link status
During link training, after the swing/preemphasis is updated, the driver
is supposed to poll the link status on the sink and quit once the
LINK_STATUS_UPDATED bit is set and also latch the next set of
swing/preemphasis requested by the sink. But currently, the driver is
exiting the loop only when the LINK_STATUS_UPDATED bit is cleared. So,
it also latches the swing/emphasis request from the second read.

Typically, the SW read is slow enough that the bit is set on the first
read. The driver then reads the second time and exits the loop, since
the bit would be cleared then. In most cases, this doesn't affect
the training sequence, since the swing/preemphasis request for next
attempt is retained on the second read. But, atleast in one
specific case, it was observed that the swing/emphasis request
gets reset along with LINK_STATUS_UPDATED and so the driver ends
up missing the actual request and latches incorrect values instead.
This causes link training to fail as it keep retrying with the
same values that it starts with.

This change fixes the exit condition check so the driver quits the loop
as soon as the LINK_STATUS_UPDATED bit is set.

Change-Id: I7f5d9c6b30d48e113aef628d2ab2c1bd972fe743
Signed-off-by: Rajkumar Subbiah <quic_rsubbia@quicinc.com>
Signed-off-by: Sandeep Gangadharaiah <quic_sandgang@quicinc.com>
2022-01-20 13:53:27 -05:00
Aravind Venkateswaran
78c45e9d5d disp: msm: dp: fix configuration of aux switches and HPD sources
Decouple the configuration and parsing of aux switches with the
parsing and configuration of HPD sources. HPD notification can come from
either GPIO based approach or a PD module through a SW interface. The
presence of AUX switch on the board should have no bearing in deciding
which configuration for HPD detection is used. Update the implementation
to allow for flexibility in selecting any combination of the HPD source
and aux switches.

Change-Id: I96d558f1d88a359d523fae6dc746045393884d5a
Signed-off-by: Aravind Venkateswaran <aravindh@codeaurora.org>
Signed-off-by: Rajkumar Subbiah <quic_rsubbia@quicinc.com>
Signed-off-by: Sandeep Gangadharaiah <quic_sandgang@quicinc.com>
2022-01-20 13:52:06 -05:00
Sandeep Gangadharaiah
135e318102 disp: msm: dp: init DP catalog for kalama
DP PHY version is changed for kalama. This change
initializes the catalog structure for this new
version.

Change-Id: Ib89293cb874c61c6276f49573266822570e715bb
Signed-off-by: Sandeep Gangadharaiah <quic_sandgang@quicinc.com>
2022-01-20 13:10:54 -05:00
Sandeep Gangadharaiah
522177a45c disp: msm: dp: avoid return value check for certain debugfs functions
Adapt 5.15 kernel upstream change to return void for
debugfs_create_bool.

Change-Id: I0cdb4c65ff6e476c7592b2a61e43c40cd757ab7a
Signed-off-by: Sandeep Gangadharaiah <quic_sandgang@quicinc.com>
2022-01-20 13:06:26 -05:00
Sandeep Gangadharaiah
c334c818dd disp: msm: dp: remove unused header declaration
Certain pll variables and function signatures are
obsolete and hence removing the header file
declaration containing these.

Change-Id: I93d4ff096ff253f21d67660287d6d3baa857cca1
Signed-off-by: Sandeep Gangadharaiah <quic_sandgang@quicinc.com>
2022-01-20 13:05:50 -05:00
Narendra Muppalla
43d8d04e73 disp: msm: sde: add DE LPF blend support
This change adds Detail Enhancer LPF blend support from MDSS 9.0.
Support is added for qseed block in both SSPP and Destination Scaler.

Change-Id: Ic8e3732059498a156f51fb93c5fd6638bd731c57
Signed-off-by: Narendra Muppalla <quic_nmuppall@quicinc.com>
2022-01-19 17:25:58 -08:00
Alisha Thapaliya
2d48ad424b disp: msm: sde: Split PA sixzone lutdma implementation
Create a common config function to be used by newer
versions of sixzone to avoid code repetitions.

Change-Id: I570cc625715880c325d257e2594d8a7688a040bc
Signed-off-by: Alisha Thapaliya <quic_athapali@quicinc.com>
2022-01-19 16:06:15 -08:00
Alisha Thapaliya
c108771c7f msm: drm: uapi: Add uapi support for sixzone saturation adjustment
In Kalama for sixzone there are 2 new lut entries for saturation
high and saturation medium. There is also a new saturation
adjustment curve, and a SV enable feature.

Add entries in uapi to accomodate the corresponding programming
for these 4 new registers.

Change-Id: Ib9a8a4e233da25de90480c09c40536546f614a01
Signed-off-by: Alisha Thapaliya <quic_athapali@quicinc.com>
2022-01-19 16:05:32 -08:00
qctecmdr
e1eb043ded Merge "disp: msm: sde: Add support for LTM2/3 for kailua" 2022-01-18 23:27:05 -08:00
Renchao Liu
f4730e436e disp: msm: sde: Update LTM merge mode setting for kailua
Update LTM merge mode setting for kailua since
merge control has its own register.

Change-Id: Ieaacd1e12f410def18a0fce11a77c94832c416f5
Signed-off-by: Renchao Liu <quic_rencliu@quicinc.com>
2022-01-19 14:02:49 +08:00
Alisha Thapaliya
13865bc425 disp: msm: sde: Add support for LTM2/3 for kailua
Some of the DPU hardware can have LTM2/LTM3 blocks.
Change adds register DMA to support LTM2/3 blocks.

Change-Id: I5703872994156b42decaaf6d383f8aded218c117
Signed-off by: Alisha Thapaliya <quic_athapali@quicinc.com>
Signed-off-by: Renchao Liu <quic_rencliu@quicinc.com>
2022-01-19 11:48:40 +08:00
qctecmdr
78d979bad5 Merge "disp: msm: sde: parametrize RC minimum region width" 2022-01-18 19:29:45 -08:00
GG Hou
e29493c71d disp: msm: avoid using #ifdef for configurations
Use #if IS_ENABLED() instead of #ifdef for configurations as vendor module
guidelines.

Use #if IS_ENABLED(CONFIG_XXX) instead of #ifdef CONFIG_XXX to ensure that
the code inside the #if block continues to compile if the config changes
to a tristate config in the future.

The differences are as follows:
	1.#if IS_ENABLED(CONFIG_XXX) evaluates to true when CONFIG_XXX is set to
		module (=m) or built-in (=y).
	2.#ifdef CONFIG_XXX evaluates to true when CONFIG_XXX is set to
		built-in(=y) , but doesn't when CONFIG_XXX is set to module(=m).
		Use this only when you're certain you want to do the same thing
		when the config is set to module or is disabled.

Change-Id: Ia806b9b01ad8414d0e4de027a382cb68e7fb4a6a
Signed-off-by: GG Hou <quic_renjhou@quicinc.com>
2022-01-17 10:10:04 +08:00
Renchao Liu
a8d6d1a83f disp: msm: sde: parametrize RC minimum region width
Parametrize RC minimum region width restriction as it
differs starting from Kailua.

Change-Id: I41e7cd6812ed2fadb5719ee51f4db0723be632fe
Signed-off-by: Amine Najahi <quic_anajahi@quicinc.com>
Signed-off-by: Renchao Liu <quic_rencliu@quicinc.com>
2022-01-14 20:45:56 -08:00
qctecmdr
f42f39e4f8 Merge "disp: config: add kalama TUI configuration files" 2022-01-14 19:31:14 -08:00
qctecmdr
cbe7dac1a4 Merge "disp: msm: sde: remove unsupported NV16 and NV61 YUV format" 2022-01-14 19:03:45 -08:00
qctecmdr
039a49e04e Merge "disp: msm: avoid use macro as vendor module guideline" 2022-01-14 18:03:37 -08:00
qctecmdr
593056901f Merge "disp: msm: dp: remove dead code of "qcom,dp-mst-sim"" 2022-01-14 17:26:23 -08:00
qctecmdr
0dcc1fdff6 Merge "disp: msm: add devcoredump support for sde_dbg" 2022-01-14 16:56:22 -08:00
qctecmdr
e4218db603 Merge "disp: msm: dsi: optimize the display error log print" 2022-01-14 16:27:04 -08:00
Steve Cohen
45b81cb324 disp: config: add kalama TUI configuration files
Add Kalama TUI build configurations.

Change-Id: I4ed9ed716c6ea12692bc149f01d34ec46e1d3154
Signed-off-by: Steve Cohen <quic_cohens@quicinc.com>
2022-01-14 16:54:41 -05:00
GG Hou
67be1373c1 disp: msm: dp: remove dead code of "qcom,dp-mst-sim"
Remove dead code of "qcom,dp-mst-sim" compatible.

Change-Id: I7ced60ea06ac9ac712c4e7c45522656e42fd3413
Signed-off-by: GG Hou <quic_renjhou@quicinc.com>
2022-01-13 17:12:11 -08:00
GG Hou
ddebee0440 disp: msm: sde: update worst case time to execute one tcs vote for rsc
1.add worst case time to execute one tcs vote for new rsc version 5.
2.define V3 duration as 930us for code readability.
3.add explicitly "ns" unit for "single_tcs_execution".

Change-Id: Ib62fe6217cf4f97a9c45f003b98b1bdf55354e27
Signed-off-by: GG Hou <quic_renjhou@quicinc.com>
2022-01-13 17:12:07 -08:00
GG Hou
079c9d79b5 disp: msm: avoid use macro as vendor module guideline
As google's vendor module guideline, don't use MODULE_SOFTDEP to order
device probes.
So avoid using the MODULE_SOFTDEP macro in display module.

Change-Id: Ife29b6185c3bcb001a581753d2a8d2aba5214f8a
Signed-off-by: GG Hou <quic_renjhou@quicinc.com>
2022-01-13 17:11:18 -08:00
GG Hou
2abee80413 disp: msm: dsi: optimize the display error log print
Optimize the error log in _dsi_bridge_mode_validate_and_fixup()
to avoid unexpected failure.

Change-Id: Id674b511f79ccf05d4fc5a5729c0e109731bdf54
Signed-off-by: GG Hou <quic_renjhou@quicinc.com>
2022-01-13 09:32:35 +08:00
qctecmdr
c05d502994 Merge "disp: msm: sde: update cwb block offset for kalama target" 2022-01-11 14:38:05 -08:00
Bruce Hoo
fae85fda94 disp: msm: add devcoredump support for sde_dbg
Add devcoredump support for sde_dbg. Devcoredump is a mechanism
providing generalized way to get data from kernel modules. This change
integrates devcoredump into sde_dbg to get evtlog, register dump and
dbg_bus when display failure happens.

Change-Id: I4daf25443ccd2646de580314a0bfe08b84dbc282
Signed-off-by: Bruce Hoo <quic_bingchua@quicinc.com>
2022-01-10 22:19:42 -08:00
qctecmdr
f5e8249fa7 Merge "disp: msm: sde: add debugfs for FAL1 and FAL10 config" 2022-01-10 21:12:07 -08:00
qctecmdr
355017e478 Merge "disp: msm: sde/dsi: reduce display cyclomatic complexity" 2022-01-10 20:44:01 -08:00
qctecmdr
27a32126fe Merge "display: driver: default post start if SBLUA DMA exist" 2022-01-10 20:09:09 -08:00
qctecmdr
7f4c58ac65 Merge "disp: msm: sde: add line-based QoS calculation support" 2022-01-10 19:12:59 -08:00
GG Hou
644927312e disp: msm: sde/dsi: reduce display cyclomatic complexity
msm/sde/sde_encoder.c
	_sde_encoder_update_rsc_client()
	sde_encoder_prepare_for_kickoff()

msm/dsi/dsi_drm.c
	dsi_bridge_mode_fixup()

Lower the cyclomatic complexity for this function by splitting
the work into helper functions.

Change-Id: I2285809a33078e29989a6b44800c18342aa24170
Signed-off-by: GG Hou <quic_renjhou@quicinc.com>
2022-01-10 19:05:50 -08:00
GG Hou
830adf80d6 disp: msm: sde: add debugfs for FAL1 and FAL10 config
Add below debugfs node under */debug/core_perf for micro-idle FAL1 and
FAL10 configuration, uidle_fal10_target_idle_time_us.
  1.uidle_fal10_target_idle_time_us
  2.uidle_fal1_target_idle_time_us
  3.uidle_fal10_threshold_us
  4.uidle_fal1_max_threshold

Usage:
Cat and echo are both available.
echo [value in micro seconds] >
	/sys/kernel/debug/dri/0/debug/core_perf/uidle_fal10_threshold_us

The new value will take effect after any update on plane.

Change-Id: I48896f59a8c0dc22624394ae197a49e3492953da
Signed-off-by: GG Hou <quic_renjhou@quicinc.com>
2022-01-10 19:03:47 -08:00
qctecmdr
69d1699364 Merge "disp: msm: sde: add offline WB QoS support" 2022-01-10 18:41:50 -08:00
qctecmdr
55888849a1 Merge "disp: msm: sde: update DT parsing for VBIF QoS remap levels" 2022-01-10 18:11:21 -08:00
qctecmdr
a33fefe00b Merge "disp: msm: sde: update danger/safe QoS LUTs for landscape panels" 2022-01-10 17:38:19 -08:00
qctecmdr
2d519071e8 Merge "disp: msm: sde: remove rgb/cursor pipe related code" 2022-01-10 16:24:25 -08:00
qctecmdr
bf82d96a61 Merge "disp: msm: dsi: add API for handling PHY programming during 0p9 collapse" 2022-01-10 15:54:37 -08:00