Commit Graph

3381 Commits

Author SHA1 Message Date
qctecmdr
d3d044ec00 Merge "disp: msm: sde: increase display kickoff timeout for hw-fences" 2023-01-24 17:12:52 -08:00
Christina Oliveira
bb846fab11 disp: msm: sde: increase display kickoff timeout for hw-fences
Starting with HW-Fencing, the frames hw kickoff
can take longer to trigger, given that HW will wait for the
input fences signal. Therefore, this change increments
the time-outs to wait up to ~10 secs, which corresponds
to the current input dma-fences timeout. This ~10secs
wait is given in intervals, where the dma-fence is also
checked, so in case that the client producer of the fence
signals the dma-fence, but misses the hw-fence signaling,
Display driver can handle this case and do a sw-override
to start the fetching of the incoming frame without waiting
for the input hw-fence ipc signal.

Change-Id: I6fcacbbaa79ca9847da616bd52efdda4bb8fccae
Signed-off-by: Christina Oliveira <quic_coliveir@quicinc.com>
2023-01-24 14:52:23 -08:00
Ingrid Gallardo
b8ae2f789b disp: msm: sde: move hw-fence init error messages to debug
Current driver prints error messages when it fails
registration for the display clients with the hw-fence
driver, however, this is not an error as currently
feature is disabled by default in hw-fence driver,
which as result will fail registration for clients.
Therefore, silent the error messages for a failed
registration.

Change-Id: I13b872db3452a57a885c73cc8f1cf512be986dd0
Signed-off-by: Ingrid Gallardo <quic_ingridg@quicinc.com>
2023-01-24 10:44:23 -08:00
qctecmdr
6ecd45a1dc Merge "disp: msm: sde: fix vrefresh timing calculation for dual-dsi video mode panel" 2023-01-24 07:25:21 -08:00
qctecmdr
bd05d05fc2 Merge "disp: msm: sde: handle rc feature disable for all instances" 2023-01-24 07:25:20 -08:00
qctecmdr
844dd9dc57 Merge "disp: msm: sde: add support for dynamic encoder IRQs" 2023-01-24 02:05:12 -08:00
qctecmdr
33582abb6a Merge "disp: msm: sde: add memory barrier to avoid out of order writes" 2023-01-24 02:05:12 -08:00
qctecmdr
dcea0f8440 Merge "disp: msm: sde: Remove debug log" 2023-01-23 21:19:15 -08:00
qctecmdr
d6d2e70d11 Merge "disp: msm: sde: increase log level priority for in log register dump" 2023-01-23 16:08:40 -08:00
Saurabh Yadav
1760fdbcd8 disp: msm: sde: handle rc feature disable for all instances
Add rc feature disable handling in case set rc feature fails.
This will disable rc feature for all instances if set rc feature
fails for any instance.

Change-Id: I159b9bd3ed1416c4b2d32440d10132cb024f9529
Signed-off-by: Saurabh Yadav <quic_sauyad@quicinc.com>
2023-01-23 09:56:02 -08:00
Amine Najahi
69e8a76687 disp: msm: sde: fix vrefresh timing calculation for dual-dsi video mode panel
Currently when calculating interface timing value, driver uses
drm_mode_vrefresh API which uses the mode clock and mode timing
values to determine the vertical refresh rate.

On a dual-DSI panel, the mode clock is calculated based on the full
display width which causes the interface vrefresh value to be 2x
greater than what it is supposed to be.

This change uses the cached_mode value, which has the correct
interface based mode clock.

Change-Id: I51bccf4962ec802b37e1ee9a463bfc08f162e5d6
Signed-off-by: Amine Najahi <quic_anajahi@quicinc.com>
2023-01-13 14:06:21 -05:00
Alisha Thapaliya
e51f5be9ac disp: msm: sde: Remove debug log
Remove debug info log and extra braces
from UCSC code.

Change-Id: I3dcd01aaebdeda81c08d3724e65f13ee7959ef5c
Signed-off-by: Alisha Thapaliya <quic_athapali@quicinc.com>
2023-01-12 11:27:36 -08:00
Nilaan Gunabalachandran
cd93fed7d1 disp: msm: sde: add support for dynamic encoder IRQs
This change adds support for dynamically enabling and disabling
additional physical encoder IRQs.

Change-Id: I500fa69d1b8b8df39fd608391c906257efdea63b
Signed-off-by: Nilaan Gunabalachandran <quic_ngunabal@quicinc.com>
2023-01-11 15:26:59 -05:00
qctecmdr
b86343b75b Merge "disp: msm: sde: Correcting the string name of UCSC in the register dump" 2023-01-10 07:34:56 -08:00
qctecmdr
99172cbda2 Merge "disp: msm: dp: enable data flow related interrupts" 2023-01-06 12:29:56 -08:00
qctecmdr
23cf3a74db Merge "disp: msm: dsi: remove PHY isolation support" 2023-01-06 12:29:56 -08:00
Yuchao Ma
8ca694849a disp: msm: sde: Correcting the string name of UCSC in the register dump
Correcting the string name of UCSC in the register dump.

Change-Id: I2c8976d6d9bf4804ed6454b848c4a3b326b56f54
Signed-off-by: Yuchao Ma <quic_yuchaom@quicinc.com>
2023-01-06 10:26:56 +08:00
Rajkumar Subbiah
0b72b0d810 disp: msm: dp: add debugfs node for bpp override
Add a debugfs node to set maximum bpp for the base panel which will
be used in both SST and MST use cases to limit the bpp.

Change-Id: I0ef7866e2b82a2078d6cdf97ee0d7226c2125b21
Signed-off-by: Nisarg Bhavsar <quic_bhavsar@quicinc.com>
Signed-off-by: Rajkumar Subbiah <quic_rsubbia@quicinc.com>
2023-01-05 07:19:13 -08:00
Rajkumar Subbiah
6c0776936e disp: msm: dp: enable data flow related interrupts
Enable interrupts to monitor SST/MST data flow related notifications
from hw.

Change-Id: I28ffc7af1445fdb48f38b11974a05bf84f7e6bc7
Signed-off-by: Nisarg Bhavsar <quic_bhavsar@quicinc.com>
Signed-off-by: Rajkumar Subbiah <rsubbia@codeaurora.org>
2023-01-05 07:19:00 -08:00
Anjaneya Prasad Musunuri
e56fac8872 disp: msm: sde: add memory barrier to avoid out of order writes
add memory barrier before and after last command to avoid
out of order packet queuing to lut dma packet queue.

add memory barrier after ctrl flush to ensure lut dma
trigger, dspp flush and ctrl flush all are written to dpu
before control start.

Change-Id: I7e1613034af8407d55529cf3f95c70994334af82
Signed-off-by: Anjaneya Prasad Musunuri <quic_aprasad@quicinc.com>
2023-01-05 15:35:34 +05:30
Alex Danila
b77d92fab3 disp: msm: dsi: remove PHY isolation support
DSI PHY isolation is unused and considered deprecated. Previous uses
were for power measurements and emulated platform support. Use on
emulated platforms has been supplanted by PHY PLL bypass.

Change-Id: I547681912ff82f0df09a1b98c671eac32c19412a
Signed-off-by: Alex Danila <quic_eadanila@quicinc.com>
2023-01-04 11:41:28 -05:00
Nisarg Bhavsar
38301e0bfe disp: msm: disable DP MST compilation
Disable DP MST compilation.

Change-Id: I39f08882aceea1ad943cc113822eb5f3b15999b9
Signed-off-by: Nisarg Bhavsar <quic_bhavsar@quicinc.com>
2022-12-22 11:41:01 -08:00
qctecmdr
d0722e526a Merge "msm: sde: update dnsc mux programming for second dcwb" 2022-12-21 23:51:54 -08:00
qctecmdr
a1f493aa7a Merge "disp: msm: sde: add input fence dump upon commit done timeout" 2022-12-21 15:58:46 -08:00
Prabhanjan Kandula
f0b6f5d927 msm: sde: update dnsc mux programming for second dcwb
MDSS 10.0 supports additional dedicated cwb pingpong pair.
This change updates downscaler block mux programming to
support when second dcwb pinpong pair is in use.

Change-Id: I1d5bdb557132c56874b13d06b9fe1aafeaadb36a
Signed-off-by: Prabhanjan Kandula <quic_pkandula@quicinc.com>
2022-12-21 13:56:12 -08:00
Ingrid Gallardo
dfc0ea0a08 disp: msm: sde: fix dpu registers to use fence protocol id
Current dpu hw settings do not match the protocol id with
the ipcc hw protocol id for the fencing protocol.
This change adjusts the programming of the dpu configuration
register to properly select and use the fencing protocol.

Change-Id: I253c15856b8b3baaa3780681d953c2e79a30d686
Signed-off-by: Ingrid Gallardo <quic_ingridg@quicinc.com>
2022-12-21 11:50:46 -08:00
Ingrid Gallardo
a700cce80c disp: msm: enable hw-fence driver import for pineapple
Enable hw-fence driver for Display in pineapple.
This change only allows Display to import the
hw-fence driver api's, but does not enable the
feature by default. Enablement of the feature in
the driver is done through the device tree property.

Change-Id: I4fe97e0cc76f780d1326a69c4162dc4908e89724
Signed-off-by: Ingrid Gallardo <quic_ingridg@quicinc.com>
2022-12-21 11:23:47 -08:00
Christina Oliveira
87bee41901 disp: msm: sde: add input fence dump upon commit done timeout
This change adds debug changes to dump the input fences during a
commit done timeout, when input hw-fences are enabled.

Change-Id: Ia778d3d73ab8ee795613587da70ef9bebb7c73ca
Signed-off-by: Christina Oliveira <quic_coliveir@quicinc.com>
2022-12-21 11:08:10 -08:00
Vara Reddy
8eff68bdf0 disp: msm: dsi: Use devm_pwm_get instead of devm_of_pwm_get
devm_of_pwm_get is deprecated and need to change
to devm_pwm_get.

Change-Id: Ibeee90261ff40dc50b6a5e40e583bee11a5b177c
Signed-off-by: Maria Yu <quic_aiquny@quicinc.com>
Signed-off-by: Vara Reddy <quic_varar@quicinc.com>
2022-12-20 09:33:00 -08:00
Sabarinath M B
de5924f5f5 disp: msm: sde: Set dirty bits for UCSC properties
Map UCSC plane properties to dirty bits to perform operations
correctly.

Change-Id: I6903b62846b8b535477aeca21a6c6e910dd4f6ad
Signed-off-by: Sabarinath M B <quic_sabamb@quicinc.com>
2022-12-14 23:11:59 +05:30
qctecmdr
93943fe159 Merge "disp: config: include msm ext disp as required module" 2022-12-13 13:40:39 -08:00
qctecmdr
88d1ee976c Merge "disp: config: enable DP related configs for pineapple" 2022-12-13 10:56:40 -08:00
qctecmdr
8b04fe96d1 Merge "disp: msm: sde: SID programming update for new MDSS" 2022-12-12 13:39:02 -08:00
qctecmdr
dc067912db Merge "disp: msm: sde: enable tui flag in catalog for pineapple" 2022-12-12 13:39:02 -08:00
qctecmdr
3d8b46cd91 Merge "disp: msm: compile pineapple msm with spec fence" 2022-12-12 09:03:38 -08:00
qctecmdr
2fa09612cd Merge "disp: msm: sde: add support for stale llcc APIs" 2022-12-12 09:03:38 -08:00
qctecmdr
59dda9d73f Merge "drm: msm: sde: cache plane csc in sde plane state" 2022-12-08 15:32:51 -08:00
Lakshmi Narayana Kalavala
d3733ff4ae display: msm: sde: Remove the redundant log
Remove the redundant log from the ucsc code.

Change-Id: Ic3e828706248e79f9aa949e2f0875cb41ad291aa
Signed-off-by: Lakshmi Narayana Kalavala <quic_lkalaval@quicinc.com>
2022-12-08 10:48:59 -08:00
Sandeep Gangadharaiah
3729c295ce disp: config: include msm ext disp as required module
Include msm external display as required module for pineapple
and enable the config flag required for the same.

Change-Id: I55b94d594b8d1ee3c20b5e06b67b4e2fd5b21e7c
Signed-off-by: Sandeep Gangadharaiah <quic_sandgang@quicinc.com>
2022-12-07 11:28:20 -08:00
Sandeep Gangadharaiah
4646e1a1dc disp: config: enable DP related configs for pineapple
Enable DP and DP MST compilation flags. This change also
includes the config flag to specify the aux switch used for
pineapple target.

Change-Id: I48e4953c9745bf9774ce1411a629b418b0c1a652
Signed-off-by: Sandeep Gangadharaiah <quic_sandgang@quicinc.com>
2022-12-07 11:21:45 -08:00
qctecmdr
1b41f20d86 Merge "disp: msm: dsi: add support for phy/pll bypass" 2022-12-06 12:50:41 -08:00
Rajkumar Subbiah
6d5a850504 disp: msm: dsi: add support for phy/pll bypass
This change adds support for bypassing hw access in DSI PHY/PLL
drivers which enables the DSI driver to run on emulation
platforms that might be missing those modules.

Change-Id: I3e83155a79d60f2357606746214d776cefabd651
Signed-off-by: Rajkumar Subbiah <quic_rsubbia@quicinc.com>
Signed-off-by: Shamika Joshi <quic_shamjosh@quicinc.com>
Signed-off-by: Alex Danila <quic_eadanila@quicinc.com>
2022-12-06 07:25:12 -08:00
Sandeep Gangadharaiah
d35438d1be disp: msm: dp: reorder update payload call during slot calculation
Currently get vcpi info call is returning wrong slot info since update
payload function is called afterwards. The latter function is calculating
the slot info which is read back by get vcpi call. This change reorders
these function calls. Also, this change sets start_slot to be always 1.
This is the value expected by upstream driver for atomic drivers.
This is a follow up change for the commit 19a9abf064
("disp: msm: dp: update MST first link slot information").

Change-Id: I620125a2d73afb7537a3540ee129e2a4eb0c488c
Signed-off-by: Sandeep Gangadharaiah <quic_sandgang@quicinc.com>
2022-12-05 13:13:42 -08:00
Amine Najahi
a08217d5fa disp: msm: sde: increase log level priority for in log register dump
Increase the log level of the prink statements to dev_err
when a register dump is triggered. This will allow user to
capture the values independently of the target default log level.

Change-Id: I67f8c854a274b70d1595e74136095ef91584ca90
Signed-off-by: Amine Najahi <quic_anajahi@quicinc.com>
2022-12-04 12:24:36 -08:00
Christopher Braga
8f1d4ca416 disp: msm: sde: Update LUT DMA reg dump ranges and offsets
Update the LUT DMA register range registration to target
specific ranges of valid registers instead of the full
memory region of the LUT DMA module. This ensures that
unused LUT DMA register regions are not dumped.

Change-Id: I3739692ae7fcfd5777bb8774dd34c16ab87c3ae1
Signed-off-by: Christopher Braga <quic_cbraga@quicinc.com>
2022-12-02 13:05:55 -05:00
Nilaan Gunabalachandran
a6dca718e5 disp: msm: sde: add support for stale llcc APIs
This change adds support for enabling the system cache
slices with staling. This allows back to back static display
cache usecases to self evict prior to using cache.

Change-Id: Iea71da26a8f7a450822624305dc20a3bab323d4b
Signed-off-by: Nilaan Gunabalachandran <quic_ngunabal@quicinc.com>
2022-12-01 15:19:08 -05:00
Alex Danila
92f79d8be1 disp: msm: compile pineapple msm with spec fence
Enabled compilation of msm driver with spec fence component.

Change-Id: I6f9e1f4930639a5f5e043ecd5b9addf4d6f233b5
Signed-off-by: Alex Danila <quic_eadanila@quicinc.com>
Signed-off-by: Nilaan Gunabalachandran <quic_ngunabal@quicinc.com>
2022-12-01 14:16:34 -05:00
Gopikrishnaiah Anand
7780b7a8c2 drm: msm: sde: cache plane csc in sde plane state
Pipe csc configuration is being cached in the sde plane which can cause
race conditions between hardware programming and caching.
All drm properties should be cached in sde plane state to avoid race
conditions. Change moves caching to sde plane state.

Change-Id: I22470a82b2fc2812f8c526ababc2b517db13a3ce
Signed-off-by: Gopikrishnaiah Anand <quic_agopik@quicinc.com>
2022-11-29 15:27:08 -08:00
Prabhanjan Kandula
7329e09b69 disp: msm: sde: fix split control programming
This change avoid programming of legacy bit fields which
are conflicting with TE alignment feature bit fields
of split control register of peripheral top block.

Change-Id: Ib9f519ec82ee3b3885351dff960b176c99dcf08d
Signed-off-by: Prabhanjan Kandula <quic_pkandula@quicinc.com>
2022-11-28 14:09:28 -08:00
qctecmdr
7d464a818c Merge "disp: msm: sde: fix 3dmux bookkeeping during resource info check" 2022-11-23 21:27:07 -08:00