Gráfico de commits

3262 Commits

Autor SHA1 Mensaje Fecha
Alisha Thapaliya
c2364bdd17 msm: drm: sde: Add support for UCSC via AHB programming
Add support for UCSC block parameters that includes unmult,
IGC/GC modes, CSC coefficients, and clamps.

Change-Id: I3ef4b729e9c973a98d53dc583233bf5e004035fa
Signed-off-by: Alisha Thapaliya <quic_athapali@quicinc.com>
2022-10-24 10:53:36 -07:00
qctecmdr
83cb3d44af Merge "disp: msm: compile pineapple msm with mm-drivers" 2022-10-22 10:49:22 -07:00
Alex Danila
473453a8d9 disp: msm: compile pineapple msm with mm-drivers
Enabled compilation of msm_drm with mm-drivers components.

Change-Id: Id2f15b314748f9a1a9966625cea98fa4b3855e87
Signed-off-by: Alex Danila <quic_eadanila@quicinc.com>
2022-10-21 14:02:12 -04:00
qctecmdr
9ebbbc157a Merge "disp: config: fix copyright in pineapple header" 2022-10-21 07:53:25 -07:00
qctecmdr
03f6a06942 Merge "disp: msm: sde: enable WB rotation feature for pineapple target" 2022-10-20 12:29:12 -07:00
qctecmdr
f378c8b20e Merge "disp: msm: sde: add line counter logging" 2022-10-20 12:29:12 -07:00
qctecmdr
2d49ae68e6 Merge "disp: msm: sde: cache cwb enc mask to use during seamless transitions" 2022-10-20 12:29:12 -07:00
Nilaan Gunabalachandran
31edda91cf disp: config: fix copyright in pineapple header
This change fixes the copyright in gki_pineappledispconf header
to match lost requirements.

Change-Id: Ic0d7dea7bd943509843c4dbbb403cadbbbb587f6
Signed-off-by: Nilaan Gunabalachandran <quic_ngunabal@quicinc.com>
2022-10-20 13:38:05 -04:00
Prabhanjan Kandula
973fb33096 disp: msm: sde: enable WB rotation feature for pineapple target
This change enables the WB rotation feature support for pineapple target.

Change-Id: Ib222c2b2996a40c72414c6c3a581916b95ebffd6
Signed-off-by: Prabhanjan Kandula <quic_pkandula@quicinc.com>
2022-10-19 11:24:18 -07:00
Prabhanjan Kandula
bdfc560f6e disp: msm: sde: extend DNSC validation for wb rotate
Atomic validation checks added for DNSC feature need to
be extended considering WB rotate feature enable.

Change-Id: Iff908da062280418536d00a5fcdeb99939267659
Signed-off-by: Prabhanjan Kandula <quic_pkandula@quicinc.com>
2022-10-19 11:24:11 -07:00
Prabhanjan Kandula
c3991049c1 disp: msm: sde: add support for new QoS mode of WB rotation
This change adds support for new dynamic QoS mode for WB rotation
which is required to achieve rotation output available at required
rate to meet real time use case. Though traffic shaper can be
disabled in dynamic QoS mode, part of traffic shaper algo to track
WB operating speed is enabled and WB generates creq priority
based on current ouput rate compared to targetted ouput to help
meeting real time use case requirement.

Change-Id: I98c2dcae53f1b175dc49b40238b9da33e95717a6
Signed-off-by: Prabhanjan Kandula <quic_pkandula@quicinc.com>
2022-10-19 11:24:04 -07:00
Prabhanjan Kandula
3128214eac disp: msm: sde: add rotation support with writeback block
MDSS 10.0.0 HW is capable to rotate input image in WB hardware
block. WB hardware can only perform rotation of clockwise 90 degrees
and this can be used to achieve the required 2D rotation by adding
appropriate FLIP transformation to the SSPP. This change adds required
software support in display driver to excericse input image
rotation through WB block.

Change-Id: Ia5c2fc84eabb68f29d130333316527b60d02cbc7
Signed-off-by: Prabhanjan Kandula <quic_pkandula@quicinc.com>
2022-10-19 11:23:58 -07:00
Prabhanjan Kandula
f3c2c5e37d disp: msm: sde: add WB rotation output color formats
MDSS 10.0.0 HW supports rotation of input image with
writeback HW but output color formats are restricted to
32 bit uncompressed A5X tile formats. This change exposes
the supported WB output color formats to client for WB
rotation usecase.

Change-Id: Ic52e6ee4ab882b7dad6edd0daa91b593afbcae01
Signed-off-by: Prabhanjan Kandula <quic_pkandula@quicinc.com>
2022-10-19 11:23:50 -07:00
Prabhanjan Kandula
4cca89d615 disp: msm: sde: add drm properties required for wb rotation
This change installs required drm properties for writeback
connector to implement rotation with writeback hw in mdss.

Change-Id: I85ed359d06ff4bafee85a4bfa5b8a99774311e60
Signed-off-by: Prabhanjan Kandula <quic_pkandula@quicinc.com>
2022-10-19 11:22:49 -07:00
Raviteja Tamatam
22a3c5a842 disp: msm: fix display compilation for 6.0 kernel upgrade
Fix display compilation issues for 6.0 kernel upgrade.

Change-Id: Ied1940e653ceaa1de18a8aedeab01197c235603c
Signed-off-by: Raviteja Tamatam <quic_travitej@quicinc.com>
2022-10-19 11:04:22 -07:00
Linux Build Service Account
c14780557f Merge changes Ibacf0ec3,I7630766d into display-kernel.lnx.1.0
* changes:
  disp: msm: sde: enable second dedicated CWB feature
  disp: msm: sde: add support for IRQs in new CWB Pingpong blocks
2022-10-18 22:36:23 -07:00
Linux Build Service Account
aa5dc72c1d Merge "disp: msm: sde: add changes to support additional dedicated-CWB" into display-kernel.lnx.1.0 2022-10-18 22:36:22 -07:00
qctecmdr
bd2011bab1 Merge "disp: msm: sde: fix typo in trace message" 2022-10-17 19:53:39 -07:00
Narendra Muppalla
666bc432e7 disp: msm: sde: fix typo in trace message
This change fix trace message in sde trace.

Change-Id: I73a873984564f995f84e0c08f9e49164cb67063a
Signed-off-by: Narendra Muppalla <quic_nmuppall@quicinc.com>
2022-10-17 12:02:42 -07:00
Christina Oliveira
cbc6d4a0a0 disp: msm: sde: add support for wait on multiple hw fences
This change adds support to wait on multiple hardware fences by
creating a fence array so each dpu-client only gets signaled until all
the hw fences going to the same ctl-path are signaled. It also
accounts for if a fence is a fence array.

Change-Id: Iba4b1d2b7322aea64dc197ca7655920b79dbb919
Signed-off-by: Christina Oliveira <quic_coliveir@quicinc.com>
2022-10-17 12:02:35 -07:00
Amine Najahi
2af644d192 disp: msm: sde: add line counter logging
Add logs to track the read/write line counters
and tear check configuration during key events.

Change-Id: Ife8afecc63a9008a8d9fc746d0ec8579a311b335
Signed-off-by: Amine Najahi <quic_anajahi@quicinc.com>
2022-10-17 12:01:57 -07:00
Veera Sundaram Sankaran
be07875590 disp: msm: fix register offset logging with debugfs register access
The register offsets are decremented instead of incrementing during
the logging of registers through the debugfs option. Fix it to be
incremental to help in debugging.

Change-Id: Iefc98c40143554fa7169ff220793431d774f57ce
Signed-off-by: Veera Sundaram Sankaran <quic_veeras@quicinc.com>
2022-10-14 02:58:08 -07:00
Veera Sundaram Sankaran
09b2c937c2 disp: msm: sde: cache cwb enc mask to use during seamless transitions
The cwb_enc_mask is set by the wb phys encoder during the validate
phase and this is in-turn used during the commit phase. During
seamless transition cases like poms with cwb, the encoders are
disabled and then enabled back after the validate phase. The cwb
flags are reset during this time leading to issues. Cache the flag
and reapply it during the modeset to avoid this case.

Change-Id: I5df1be18a5e30bb1107dc0f2e87d771a735f1ab6
Signed-off-by: Veera Sundaram Sankaran <quic_veeras@quicinc.com>
2022-10-14 02:57:55 -07:00
Shamika Joshi
f3525a4051 disp: msm: sde: enable second dedicated CWB feature
Set the boolean property to enable second dedicated
CWB feature on pineapple hardware.

Change-Id: Ibacf0ec327c5d6d803f1fc5211dedb3a591b441a
Signed-off-by: Shamika Joshi <quic_shamjosh@quicinc.com>
2022-10-13 20:03:59 -07:00
Shamika Joshi
493362f656 disp: msm: sde: add support for IRQs in new CWB Pingpong blocks
For second dedicated CWB pingpong blocks, the overflow irq needs
to be mapped properly to existing IRQ handlers.

Change-Id: I7630766d1865f7ad7079947185ef4ae629d71f3e
Signed-off-by: Shamika Joshi <quic_shamjosh@quicinc.com>
2022-10-13 20:03:26 -07:00
Shamika Joshi
b9553cf5f3 disp: msm: sde: add changes to support additional dedicated-CWB
Update the hardware blocks and corresponding APIs
to configure new D-CWB data path. Add new hardware
pingpong blocks that are dedicated for second DCWB.

Change-Id: I529c24ac5aa483f30b6c9e7653eb1713c6b8fb8a
Signed-off-by: Shamika Joshi <quic_shamjosh@quicinc.com>
2022-10-13 20:02:57 -07:00
Alex Danila
5fce708923 disp: msm: sde: pineapple display compilation
This change enables display-drivers compilation for pineapple
target.

Change-Id: Iae1f8b1cafeae111ff197065928e20e100f2e6ac
Signed-off-by: Alex Danila <quic_eadanila@quicinc.com>
Signed-off-by: Nilaan Gunabalachandran <quic_ngunabal@quicinc.com>
2022-10-11 09:42:46 -07:00
qctecmdr
eb15d0d825 Merge "disp: msm: sde: enable dsc full ICH error precision" 2022-10-10 13:49:32 -07:00
qctecmdr
d92a44d525 Merge "disp: msm: sde: enable 32bit intf te registers" 2022-10-10 13:49:32 -07:00
Nilaan Gunabalachandran
8da662ebee disp: msm: sde: add break to switch case logic
This change adds a missing break in the switch-case logic.

Change-Id: I6eb1eb9c2532187803c956e590eb5353f3fc9c3d
Signed-off-by: Nilaan Gunabalachandran <quic_ngunabal@quicinc.com>
2022-10-10 12:03:55 -07:00
Nilaan Gunabalachandran
719e3a8e1d disp: msm: sde: upstream memblock_free API returns void
The memblock_free API has been updated to return void. This
change removes the check on return and passes the pointer
address in correctly.

Change-Id: I8b60c8d3c5e3e8c2f94e33015c2c03686a556807
Signed-off-by: Nilaan Gunabalachandran <quic_ngunabal@quicinc.com>
2022-10-10 11:50:33 -07:00
Nilaan Gunabalachandran
a0f3537872 disp: msm: sde: include file.h
This change adds includes for <linux/file.h> required for the
display driver in kernel 5.19.

Change-Id: Ibe5401997b43844b692869ebb6d28faa7bcb7740
Signed-off-by: Nilaan Gunabalachandran <quic_ngunabal@quicinc.com>
2022-10-10 11:21:55 -07:00
GG Hou
61359169c5 disp: msm: sde: implement format_mod_supported API
This change implements the drm_plane_funcs API format_mod_supported
necessary to correctly check if format modifiers are supported.

Change-Id: I39a26f7b053c44ef7577401d88e7cf6934c198f8
Signed-off-by: GG Hou <quic_renjhou@quicinc.com>
Signed-off-by: Nilaan Gunabalachandran <quic_ngunabal@quicinc.com>
2022-10-10 11:21:30 -07:00
GG Hou
61cc323db6 disp: msm: avoid the usage of dropped DMA APIs
This change adds downstream implementations of DMA APIs
that have been dropped in the upstream kernel.

Dropped APIs:
dma_resv_get_excl_unlocked
Link: https://patchwork.freedesktop.org/patch/msgid/20211005113742.1101-25-christian.koenig@amd.com

drm_atomic_set_fence_for_plane
Link: https://patchwork.freedesktop.org/patch/msgid/20220429134230.24334-1-christian.koenig@amd.com

Change-Id: Ic6a8f5e80ca671cda9c75b94a638f185717f4342
Signed-off-by: GG Hou <quic_renjhou@quicinc.com>
Signed-off-by: Nilaan Gunabalachandran <quic_ngunabal@quicinc.com>
2022-10-10 11:20:40 -07:00
GG Hou
45b0891612 disp: msm: sde: replace the allow_fb_modifiers variable
The allow_fb_modifiers variable has been replaced by
fb_modifiers_not_supported. This value is disabled by default
so no additional initialization is necessary.

Link: https://patchwork.freedesktop.org/patch/msgid/20220128060836.11216-2-etom@igel.co.jp

Change-Id: Id738be53ce1133232f525b75ec0b678ce777eff7
Signed-off-by: GG Hou <quic_renjhou@quicinc.com>
Signed-off-by: Nilaan Gunabalachandran <quic_ngunabal@quicinc.com>
2022-10-10 11:20:12 -07:00
GG Hou
16839d2e8a disp: msm: include delay.h for udelay and usleep_range
This change includes linux/delay.h to import the udelay and
usleep_range APIs.

Change-Id: I6ed406cb0f83aebf682420a53b44da72d7ec0456
Signed-off-by: GG Hou <quic_renjhou@quicinc.com>
Signed-off-by: Nilaan Gunabalachandran <quic_ngunabal@quicinc.com>
2022-10-10 11:18:35 -07:00
GG Hou
398572ab21 disp: msm: rename dma-buf-map to iosys-map
The dma-buf-map struct has been renamed to iosys-map.
This change updates the usage of the struct and APIs in
the display driver.

Link: https://patchwork.freedesktop.org/patch/472236/

Change-Id: I5b48424dd5f8c60a28958a036ee2859963b059d2
Signed-off-by: GG Hou <quic_renjhou@quicinc.com>
Signed-off-by: Nilaan Gunabalachandran <quic_ngunabal@quicinc.com>
2022-10-10 11:07:55 -07:00
GG Hou
11f0929a72 disp: msm: dp: update include file path for upstream headers
This change updates the include file path for necessary dp
and dsc headers that have moved in upstream kernel.

File path changed in upstream:
include/drm/display/drm_dp_aux_bus.h
include/drm/display/drm_dp_dual_mode_helper.h
include/drm/display/drm_dp.h
include/drm/display/drm_dp_helper.h
include/drm/display/drm_dp_mst_helper.h
include/drm/display/drm_dsc.h
include/drm/display/drm_dsc_helper.h
include/drm/display/drm_hdcp.h
include/drm/display/drm_hdcp_helper.h
include/drm/display/drm_hdmi_helper.h
include/drm/display/drm_scdc.h
include/drm/display/drm_scdc_helper.h

Change-Id: Icb9a227c7464061f68fe60cbda6d93858fa768c5
Signed-off-by: GG Hou <quic_renjhou@quicinc.com>
Signed-off-by: Nilaan Gunabalachandran <quic_ngunabal@quicinc.com>
2022-10-10 11:06:29 -07:00
GG Hou
5624dc5b2e disp: msm: import DMA_BUF module symbols
This change imports the necessary DMA_BUF symbols from the module
as they are now contained within the module namespace.

Link: https://patchwork.kernel.org/project/dri-devel/patch/YU8oVDFoeD5YYeDT@kroah.com/#24477195

Change-Id: I18a0a812567425d55fedbab67f7a42d3f54351ca
Signed-off-by: GG Hou <quic_renjhou@quicinc.com>
Signed-off-by: Nilaan Gunabalachandran <quic_ngunabal@quicinc.com>
2022-10-10 11:05:05 -07:00
Nilaan Gunabalachandran
c348513806 disp: msm: sde: enable dsc full ICH error precision
This feature enables using all available bits when ICH
error calculations are made. This improves precision and
image quality when there are more than 8 bits per component.

Change-Id: I851f05418283d0e731332d4069e3b6e57487b9a3
Signed-off-by: Nilaan Gunabalachandran <quic_ngunabal@quicinc.com>
2022-10-06 13:51:52 -07:00
Nilaan Gunabalachandran
f73f15ae39 disp: msm: sde: enable 32bit intf te registers
This change adds support for INTF TE using 32 bit values and
single update per TE. These features help ensure that during
QSync mode the TE does not overrun in certain late trigger uses.

Change-Id: I893d0cde81320c3f17604694a4d8ee52b29a9425
Signed-off-by: Nilaan Gunabalachandran <quic_ngunabal@quicinc.com>
2022-10-06 13:51:35 -07:00
Nilaan Gunabalachandran
00369e3266 disp: msm: sde: enable mdp vsync frame count
Currently, the driver uses the panel frame count along with
mdp vsync timestamp which can be unreliable if there are any
latencies. This change adds support to use mdp vsync frame
count, if the hardware supports it.

Change-Id: I784d4f4e525212269371a40071bcb912181cba9f
Signed-off-by: Nilaan Gunabalachandran <quic_ngunabal@quicinc.com>
2022-10-06 13:51:29 -07:00
Nilaan Gunabalachandran
875db134b3 disp: msm: sde: add pineapple mdss version support
This change adds pineapple mdss revision and enables features
based on the hardware capabilities.

Change-Id: I930e1ffd8e070f5bd258e5d3e441a966ade5f760
Signed-off-by: Nilaan Gunabalachandran <quic_ngunabal@quicinc.com>
2022-10-06 13:50:35 -07:00
Narendra Muppalla
7fcbec0c8d disp: msm: dsi: add dsi ramdump support without DEBUG_FS
This change adds dsi display ramdump support when DEBUG_FS
is not enabled.

Change-Id: Ic6659a9380acd5eb55a3270d3e3b7016a9cd2bd7
Signed-off-by: Narendra Muppalla <NarendraM@codeaurora.org>
2022-10-05 03:53:37 -07:00
qctecmdr
e567bba0d5 Merge "disp: msm: sde: detach dsc/vdc encoder blocks properly during modeswitch" 2022-10-04 14:30:33 -07:00
Gopikrishnaiah Anandan
5edd5553a9 drm: msm: disable LTM hardware during encoder disable
LTM block should be disabled when encoder is being disabled to avoid
display hang when all driver clients have been closed.
Change disables LTM hardware block when encoder is disabled.

Change-Id: I279296b566ab93c302e6166b6fa4b7197c2cc0ab
Signed-off-by: Gopikrishnaiah Anandan <quic_agopik@quicinc.com>
2022-10-04 01:49:57 -07:00
Yashwanth
a14aea9aac disp: msm: sde: detach dsc/vdc encoder blocks properly during modeswitch
In the current code if there is a switch from DSC to non-DSC
mode, all the DSC blocks attached to the sde_encoder are not
cleaned up properly. Due to this, during virt disable these
DSC blocks are disabled and flushed resulting in underruns
on other ctl paths which might be using them. This change
properly cleans up all the dsc/vdc attached to the sde
encoder to avoid such issues.

Change-Id: Ie644701cbda6b4d056bc7ef30300be96096c5214
Signed-off-by: Yashwanth <quic_yvulapu@quicinc.com>
Signed-off-by: Narendra Muppalla <quic_nmuppall@quicinc.com>
2022-09-30 01:39:15 -07:00
Linux Build Service Account
9fbbeb65ba Merge "disp: msm: sde: move some frame_events from crtc commit to event thread" into display-kernel.lnx.1.0 2022-09-23 12:20:26 -07:00
Linux Build Service Account
78456d91bb Merge "disp: msm: dp: disable aux switch at the start of the disconnect path" into display-kernel.lnx.1.0 2022-09-23 12:20:25 -07:00
Linux Build Service Account
b76adef208 Merge "disp: msm: dp: clear MST sim context during DP sim disable" into display-kernel.lnx.1.0 2022-09-23 12:20:16 -07:00