提交图

496 次代码提交

作者 SHA1 备注 提交日期
qctecmdr
845000ba36 Merge "disp: msm: sde: setting async cmd wait flag only for DSI" 2020-03-29 10:01:25 -07:00
Veera Sundaram Sankaran
20a7886cc5 disp: msm: sde: avoid vblank notification for cwb
The vsync callback for concurrent writeback is
not necessary. This would conflict with vblank
notification of primary as both belongs to the
same crtc.

Change-Id: Idb67915de086f94feb231d61b6f7e4e068a1ac35
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2020-03-29 09:55:00 -07:00
Nilaan Gunabalachandran
2e0702c7e6 disp: msm: sde: check input & output buffer for secure context
During validate, kernel should check if input buffer frame
buffer for wb conn is in secure context. If so, the output
buffer must also be secure context, or fail validate before commit.

Change-Id: I38e50f8b2ac71c8532d9d44df08850bf33180c41
Signed-off-by: Nilaan Gunabalachandran <ngunabal@codeaurora.org>
2020-03-29 09:54:43 -07:00
Nilaan Gunabalachandran
42b9fb5937 disp: msm: sde: check power event before set clk rate
Clock rate can be set from debugfs, and this can attempt to
set clock rate even when display power is not enabled.
Set clock rate should check the last power event first.

Change-Id: Ibf01753a288e5a3003928664c99aa6dbf26350d6
Signed-off-by: Nilaan Gunabalachandran <ngunabal@codeaurora.org>
2020-03-29 09:54:23 -07:00
Jayaprakash
8274efd919 disp: msm: sde: add plane check in continuous splash case
In dual display continuous splash case, there are certain
scenarios where pipe being used in secondary display at boot up
is allocated by primary crtc. Add check to return failure
in such cases.

Change-Id: I9047b6e7f91e59a9daff5089abb41017c068b449
Signed-off-by: Jayaprakash <jmadiset@codeaurora.org>
2020-03-29 09:51:49 -07:00
Jayaprakash
4536e7b2a6 disp: msm: sde: add null pointer checks
Add null check for pingpong block used during
the commit phase.

Change-Id: I3ebbcfe9c42ee6d1201a141f553bbb0a0ae97ad6
Signed-off-by: Jayaprakash <jmadiset@codeaurora.org>
2020-03-29 09:51:30 -07:00
Jayaprakash
2f050dc9fe disp: msm: sde: modify setting of split_display flag
For CTL_ACTIVE targets, slave ctl need not to be reserved
as both the interfaces can be driven with single ctl.
Add a necessary check before enabling the feature.

Change-Id: Id68d7dd4fc1cf9534466fd5bfa50c3f551d06ce4
Signed-off-by: Jayaprakash <jmadiset@codeaurora.org>
2020-03-29 09:51:04 -07:00
Raviteja Tamatam
c763a14ba0 disp: msm: sde: signal retire fence in wr_ptr timeout
There can be few cases of ESD where CTL_START is cleared but
wr_ptr interrupt does not come. Signaling retire fence in these
cases to avoid freeze and dangling pending_retire_fence_cnt.

Change-Id: I167f69dce5cbe43b4771e5056d8a73bd7587e76e
Signed-off-by: Raviteja Tamatam <travitej@codeaurora.org>
2020-03-29 09:50:55 -07:00
Veera Sundaram Sankaran
bceea4e1fe disp: msm: sde: reset ctl on autorefresh disable failure
Reset MDP ctl path and DSI ctl on autorefresh
disable failure. This will enable the hardware
to recover from the hang.

Change-Id: Ia9acc8573c22e0713179ef4f6ef604caacabfadb
Signed-off-by: Veera Sundaram Sankaran <veeras@codeaurora.org>
2020-03-28 23:07:32 -07:00
Yashwanth
363aadd666 disp: msm: sde: update wb properties to optional
This change updates mandatory wb property to
optional as few low tier targets do not have wb
hardware block.

Change-Id: I39e6bf80a527dff95905e0a204401185e9e7bc03
Signed-off-by: Yashwanth <yvulapu@codeaurora.org>
2020-03-28 23:06:59 -07:00
Raviteja Tamatam
69c24f5a32 disp: msm: sde: update BW_INDICATION programing sequence
BW_INDICATION indication must be programed before BWI_THRESHOLD.
Otherwise, it will revert to legacy behaviour and rsc wakeup is
delayed by one vsync causing janks. In current code BW_INDICATION
is done after LM/SSPP programming and plane fence wait. Moved the
perf_crtc_update before this and just after ctl prepare configuration
to avoid chances of BW_INDICATION crossing BWI_THRESHOLD time.

Change-Id: Ie976720910c34aaf140f1ce7daef38ba20bc10f5
Signed-off-by: Raviteja Tamatam <travitej@codeaurora.org>
2020-03-28 23:06:51 -07:00
Ping Li
4a5e84f96b msm: sde: SW workaround for REG_BLK_LUT_WRITE HW limitation
LUTDMA HW has a limitation on REG_BLK_LUT_WRITE opcode that requires
the residual REG_BLK_LUT_WRITE data plus the following opcode to exceed
the 4 DWORDs boundary.

This change provides a software workaround for this HW limitation
by inserting 3 NOP commands beofre any other opcode opertation after
REG_BLK_LUT_WRITE opcode.

Change-Id: I72f83cd761eabdfbc290d35da1f1e7a7a54da3e2
Signed-off-by: Ping Li <pingli@codeaurora.org>
2020-03-27 16:14:29 -07:00
Samantha Tran
e86800f362 disp: msm: sde: update uidle wd timer load value
Update the uidle wd timer load value to 12. This change will allow
for 10us wd timer per power team recommendation.

Change-Id: I8a654fc1f70886c75c077e77c926bebf3bad2305
Signed-off-by: Samantha Tran <samtran@codeaurora.org>
2020-03-27 08:55:42 -07:00
qctecmdr
4195464d87 Merge "disp: msm: sde: fix DSC initial line calculation" 2020-03-26 20:32:06 -07:00
qctecmdr
52d46ebea5 Merge "disp: msm: sde: rename the cont splash region" 2020-03-26 06:42:21 -07:00
qctecmdr
9575e1f87e Merge "disp: msm: sde: modify fal10 thresholds for lahaina" 2020-03-25 07:02:57 -07:00
Abhijit Kulkarni
78f4cffab0 disp: msm: sde: fix DSC initial line calculation
Update the DSC initial line calculations to use logical
or operator instead of bitwise operator. Additionally
this change takes care of removing unnecessary brackets.

Change-Id: Ie7fd099e726f0dbed012d5406860300a48d9b2eb
Signed-off-by: Abhijit Kulkarni <kabhijit@codeaurora.org>
2020-03-24 16:11:32 -07:00
qctecmdr
2e5ae6687f Merge "disp: msm: sde: separate horz/vert max downscale checks" 2020-03-24 14:31:39 -07:00
Abhijit Kulkarni
4051341617 disp: msm: sde: rename the cont splash region
This change renames the splash region memory node name
to align the node with the advanced bootloader naming
convention.

Change-Id: Idfd666b5e32e5f22ccb677f68155621adfe87a14
Signed-off-by: Abhijit Kulkarni <kabhijit@codeaurora.org>
2020-03-24 13:11:59 -07:00
Steve Cohen
9992efa7a0 disp: msm: sde: separate horz/vert max downscale checks
Separate the horizontal and vertical max downscale checks
as pre-downscale introduced different limits on different
axes. Also cleanup the variable names for max downscale
limit when pre-downscale is not enabled.

Change-Id: If01aac1844d0bd5133502a50dbc38197e11da5d5
Signed-off-by: Steve Cohen <cohens@codeaurora.org>
2020-03-23 23:44:39 -04:00
Steve Cohen
973788d311 disp: msm: sde: reduce complexity in sde_sspp_parse_dt
Reduce the cyclomatic complexity for this function by splitting
the work in to helpers and using the new sde_dt_props method of
device node parsing.

Change-Id: Id4a41225bd78f06ee353a636d17330ba41daf1ff
Signed-off-by: Steve Cohen <cohens@codeaurora.org>
2020-03-23 23:44:11 -04:00
qctecmdr
c412266ad7 Merge "disp: msm: sde: re-factor probe time initialization" 2020-03-23 15:58:19 -07:00
Abhijit Kulkarni
a752925112 disp: msm: sde: re-factor probe time initialization
This change moves the msm_driver power resource initialization from
bind time to probe time. This keeps the resource vote on until all the
devices are bound. This is required since the regulator and clock
sync_state driver will remove the proxy votes as soon as msm_driver
has probed.

Change-Id: Icb0e59e4ff0290ef0c1bd3914d6fdbf99bf5d9fa
Signed-off-by: Abhijit Kulkarni <kabhijit@codeaurora.org>
2020-03-23 12:07:40 -07:00
qctecmdr
e12e4e1851 Merge "disp: msm: sde: avoid resetting blend stage in every commit" 2020-03-21 14:23:03 -07:00
qctecmdr
1fc486ad3e Merge "disp: msm: sde: ctl hw flush ops clean up" 2020-03-21 13:08:07 -07:00
qctecmdr
5aacc34ec6 Merge "disp: msm: sde: add doc for sde_dt_props helpers" 2020-03-21 04:57:18 -07:00
qctecmdr
34b32d77f8 Merge "disp: msm: dsi: disallow backlight update during panel mode switch" 2020-03-20 20:33:23 -07:00
qctecmdr
56d95ba3e2 Merge "disp: msm: sde: add support for spr hw block configuration" 2020-03-20 15:31:25 -07:00
qctecmdr
0bf109883c Merge "drm: msm: sde: Clear SB DMA flag upon sending SB DMA last command" 2020-03-20 12:11:23 -07:00
qctecmdr
c9cbf75095 Merge "disp: msm: update igc last entry to fixed value" 2020-03-20 12:11:23 -07:00
Prabhanjan Kandula
8120e65f95 disp: msm: sde: add support for spr hw block configuration
This change adds support for programming SPR hw block as per the
client configuration from the respective color property blob.
Currently only reg dma accelerated path is provided.

Change-Id: Ib8559ec2c392be7b69ca43c6364e701fab877a28
Signed-off-by: Prabhanjan Kandula <pkandula@codeaurora.org>
2020-03-19 16:22:40 -07:00
Linux Build Service Account
244be03e47 Merge changes I83462042,I8bf28827,I28482380 into display-kernel.lnx.5.4
* changes:
  disp: hdcp: add driver to handle userspace interactions
  disp: msm: dp: compile MST feature based on display config
  disp: msm: dp: use updated colorimetry and DSC definitions
2020-03-19 10:35:39 -07:00
Gopikrishnaiah Anandan
f853f611b2 disp: msm: update igc last entry to fixed value
Currently driver clients are not setting the last value of the igc
table. As a temporary change setting it to 4095, once user-space changes
are updated will revert the current fix.

Change-Id: Ifd6e62cd9edf3d1f2917079f639e00aa4ea31cf1
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
2020-03-18 20:11:50 -07:00
Satya Rama Aditya Pinapala
196502bc12 disp: msm: sde: setting async cmd wait flag only for DSI
Asynchronous command transfer wait during pre kickoff
is only applicable for DSI. The change ensures that
the flag is set only for DSI connector, otherwise it can
result in memory scribbling for other connectors.

Change-Id: I623f15cf13fcd3ae72f584d5ef8883570a848c93
Signed-off-by: Satya Rama Aditya Pinapala <psraditya30@codeaurora.org>
2020-03-18 15:08:02 -07:00
Christopher Braga
1cefdf74e4 drm: msm: sde: Clear SB DMA flag upon sending SB DMA last command
Previous SB DMA logic was not clearing a "SB DMA active" flag, resulting
in SB DMA incorrectly being flushed every frame. While this logic
matches the DB DMA approach, it is unnecessary and could result in
delayed DB DMA execution.

Update SB DMA logic to clear the "active" flag for the target DSPP
immediately after the SB DMA is flushed.

Change-Id: I3dc0792a50d7dec42cb32bf8cd1e3d0b217cf582
Signed-off-by: Christopher Braga <cbraga@codeaurora.org>
2020-03-18 13:24:14 -07:00
Lakshmi Narayana Kalavala
7969ca8633 disp: msm: sde: fix gamut block pogramming sequence
Gamut registers have been updated in newer version of dpu where the
bit depth of the registers have been updated. Change programs
the values by adjusting for bit depth changes.

Change-Id: Id8d8dc37aff6854d67855b9aa7644d1ca4ec4e6f
Signed-off-by: Lakshmi Narayana Kalavala <lkalaval@codeaurora.org>
2020-03-17 22:47:43 -07:00
Lei Chen
3842597275 disp: msm: dsi: disallow backlight update during panel mode switch
DSI controller and clock will be disabled/enabled during panel mode
switch, so disallow backlight update during panel mode switch to
avoiding DSI exception.

Change-Id: I37e2f3c9aa929555593ffb53950521150ee7698f
Signed-off-by: Lei Chen <chenlei@codeaurora.org>
Signed-off-by: Satya Rama Aditya Pinapala <psraditya30@codeaurora.org>
2020-03-17 19:34:51 -07:00
Dhaval Patel
9652f27293 disp: msm: avoid esd check during pm_suspend state
Avoid esd check during pm_suspend state because core
clock enable will fail. This change adds additional
check and also adds the clock enable failure check.

Change-Id: Ie8bfa4f74d323ff15a07fb037675f07ab942f016
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
Signed-off-by: Satya Rama Aditya Pinapala <psraditya30@codeaurora.org>
2020-03-17 19:31:26 -07:00
Prabhanjan Kandula
7469563793 disp: msm: sde: install crtc color property for spr programming
This change installs blob property on each crtc for client to program
SPR block configuration based on display panel SPR pattern. Property
installation is conditional only if MDSS hw has SPR block entries.

Change-Id: Ie85423d83b7badc547e75e6eb07ee6b9945f8834
Signed-off-by: Prabhanjan Kandula <pkandula@codeaurora.org>
2020-03-16 22:06:14 -07:00
Prabhanjan Kandula
89a141df9f disp: msm: sde: add support for mdss spr hw block
This change parses SPR hw block entries from device tree and populate
SPR block as sub block of DSPP block. Change also enables register dump
by registering sub blocks with sde driver register dump routine.

Change-Id: Ic603cd3cc001dddce5dfea61341c166a5fec1682
Signed-off-by: Prabhanjan Kandula <pkandula@codeaurora.org>
2020-03-16 22:04:21 -07:00
qctecmdr
3af9cf96b7 Merge "disp: msm: sde: refactor catalog dspp parsing" 2020-03-12 22:05:29 -07:00
qctecmdr
5d2e2f435f Merge "disp: msm: sde: align timing engine vsync based on panel vsync" 2020-03-12 20:15:59 -07:00
Tatenda Chipeperekwa
51805afe28 disp: msm: dp: compile MST feature based on display config
Add a compile time flag for the MST feature that will allow
selectively enabling the feature.

Change-Id: I8bf288277c7af00c3cf254a8c757151559e0a010
Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
2020-03-12 18:07:11 -07:00
Tatenda Chipeperekwa
5977818ac3 disp: msm: dp: use updated colorimetry and DSC definitions
Update colorimetry definition usage and how we access DSC information
as per changes in the upstream DRM framework code.

Change-Id: I28482380124734680e46904b8d536ebadba8cc60
Signed-off-by: Tatenda Chipeperekwa <tatendac@codeaurora.org>
2020-03-12 18:06:52 -07:00
Abhijit Kulkarni
7d15639374 disp: msm: sde: modify fal10 thresholds for lahaina
This change modifies the fal10 threshold for lahaina platform.
Lahaina platform now supports uidle feature enabled for displays
upto 90 fps.

Change-Id: I4c7e84c9216572df1dfd1f062baef485359e06d6
Signed-off-by: Abhijit Kulkarni <kabhijit@codeaurora.org>
2020-03-12 14:05:38 -07:00
Narendra Muppalla
68ee65353b disp: msm: sde: align timing engine vsync based on panel vsync
This change adds logic to align timing engine vsync with panel
tear check if it is supported.

Change-Id: I3f881f392929589848c893f567822b21c0650000
Signed-off-by: Narendra Muppalla <NarendraM@codeaurora.org>
2020-03-11 10:14:57 -07:00
Samantha Tran
c6d6839a78 Revert "disp: msm: sde: cache vbif QoS parameters"
The original change avoids unnecessary reprogramming
of plane vbif registers, but still copies values into
a local struct before exiting based on boolean. This
can be taken care of by 01e1d4136cc1 ("drm/msm:
minimize qos remap updates") instead.

This reverts commit 0c7159de4f.

Change-Id: Idd9b066db9ebad092aa1a6dd2cf47050b0babd0c
Signed-off-by: Samantha Tran <samtran@codeaurora.org>
2020-03-09 16:41:27 -07:00
Steve Cohen
32ad348d81 disp: msm: sde: add MDSS_HW block range for debugfs register access
Register the MDSS_HW block (at base offset 0) for access via the
sde_reg node in SDE's debugfs directory. This is needed for
validating correct UBWC register programming.

Change-Id: I2494e066a7603747f2ec12546e58a17f2120a521
Signed-off-by: Steve Cohen <cohens@codeaurora.org>
2020-03-08 01:42:56 -08:00
Steve Cohen
6cb33c8d11 disp: msm: sde: refactor catalog dspp parsing
Refactor dspp catalog parsing functions to reduce
cyclomatic complexity.

Change-Id: I0a8200f8e08a7ac40172fdcd6cc62e08135bba61
Signed-off-by: Amine Najahi <anajahi@codeaurora.org>
Signed-off-by: Steve Cohen <cohens@codeaurora.org>
2020-03-06 13:58:36 -08:00
Samantha Tran
5880783aa3 disp: msm: sde: avoid resetting blend stage in every commit
Move blendstage initialization to the atomic begin path in the
case where mixers are not setup. Additionally, clear all
blendstages during crtc disable to clean up registers.
This will avoid resetting each of the blend stages in every
commit and then writing only to the layer being used.

Change-Id: Idf7cb3e17de37034c2060f2563bc082fceb5cae9
Signed-off-by: Samantha Tran <samtran@codeaurora.org>
2020-03-06 12:29:06 -08:00