Skip to content

Commit c815e4e

Browse files
committed
Merge tag 'drm-msm-next-2024-05-07' of https://gitlab.freedesktop.org/drm/msm into drm-next
Updates for v6.10 Core: - Switched to generating register header files during build process instead of shipping pre-generated headers - Merged DPU and MDP4 format databases. DP: - Stop using compat string to distinguish DP and eDP cases - Added support for X Elite platform (X1E80100) - Reworked DP aux/audio support - Added SM6350 DP to the bindings (no driver changes, using SM8350 as a fallback compat) GPU: - a7xx perfcntr reg fixes - MAINTAINERS updates - a750 devcoredump support Signed-off-by: Dave Airlie <airlied@redhat.com> From: Rob Clark <robdclark@gmail.com> Link: https://patchwork.freedesktop.org/patch/msgid/CAF6AEGtpw6dNR9JBikFTQ=TCpt-9FeFW+SGjXWv+Jv3emm0Pbg@mail.gmail.com
2 parents f03eee5 + b587f41 commit c815e4e

File tree

138 files changed

+25419
-41421
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

138 files changed

+25419
-41421
lines changed

Documentation/devicetree/bindings/display/msm/dp-controller.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ properties:
2929
- qcom,sm8650-dp
3030
- items:
3131
- enum:
32+
- qcom,sm6350-dp
3233
- qcom,sm8150-dp
3334
- qcom,sm8250-dp
3435
- qcom,sm8450-dp

Documentation/devicetree/bindings/display/msm/qcom,sm6350-mdss.yaml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,15 @@ patternProperties:
5353
compatible:
5454
const: qcom,sm6350-dpu
5555

56+
"^displayport-controller@[0-9a-f]+$":
57+
type: object
58+
additionalProperties: true
59+
60+
properties:
61+
compatible:
62+
contains:
63+
const: qcom,sm6350-dp
64+
5665
"^dsi@[0-9a-f]+$":
5766
type: object
5867
additionalProperties: true

MAINTAINERS

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6816,7 +6816,25 @@ T: git https://gitlab.freedesktop.org/drm/misc/kernel.git
68166816
F: Documentation/devicetree/bindings/display/panel/panel-mipi-dbi-spi.yaml
68176817
F: drivers/gpu/drm/tiny/panel-mipi-dbi.c
68186818

6819-
DRM DRIVER FOR MSM ADRENO GPU
6819+
DRM DRIVER for Qualcomm Adreno GPUs
6820+
M: Rob Clark <robdclark@gmail.com>
6821+
R: Sean Paul <sean@poorly.run>
6822+
R: Konrad Dybcio <konrad.dybcio@linaro.org>
6823+
L: linux-arm-msm@vger.kernel.org
6824+
L: dri-devel@lists.freedesktop.org
6825+
L: freedreno@lists.freedesktop.org
6826+
S: Maintained
6827+
B: https://gitlab.freedesktop.org/drm/msm/-/issues
6828+
T: git https://gitlab.freedesktop.org/drm/msm.git
6829+
F: Documentation/devicetree/bindings/display/msm/gpu.yaml
6830+
F: drivers/gpu/drm/msm/adreno/
6831+
F: drivers/gpu/drm/msm/msm_gpu.*
6832+
F: drivers/gpu/drm/msm/msm_gpu_devfreq.*
6833+
F: drivers/gpu/drm/msm/msm_ringbuffer.*
6834+
F: drivers/gpu/drm/msm/registers/adreno/
6835+
F: include/uapi/drm/msm_drm.h
6836+
6837+
DRM DRIVER for Qualcomm display hardware
68206838
M: Rob Clark <robdclark@gmail.com>
68216839
M: Abhinav Kumar <quic_abhinavk@quicinc.com>
68226840
M: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>

drivers/gpu/drm/msm/.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
generated/

drivers/gpu/drm/msm/Kconfig

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,14 @@ config DRM_MSM_GPU_SUDO
5454
Only use this if you are a driver developer. This should *not*
5555
be enabled for production kernels. If unsure, say N.
5656

57+
config DRM_MSM_VALIDATE_XML
58+
bool "Validate XML register files against schema"
59+
depends on DRM_MSM && EXPERT
60+
depends on $(success,$(PYTHON3) -c "import lxml")
61+
help
62+
Validate XML files with register definitions against rules-fd schema.
63+
This option is mostly targeting DRM MSM developers. If unsure, say N.
64+
5765
config DRM_MSM_MDSS
5866
bool
5967
depends on DRM_MSM

drivers/gpu/drm/msm/Makefile

Lines changed: 84 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,15 @@
11
# SPDX-License-Identifier: GPL-2.0
22
ccflags-y := -I $(srctree)/$(src)
3+
ccflags-y += -I $(obj)/generated
34
ccflags-y += -I $(srctree)/$(src)/disp/dpu1
45
ccflags-$(CONFIG_DRM_MSM_DSI) += -I $(srctree)/$(src)/dsi
56
ccflags-$(CONFIG_DRM_MSM_DP) += -I $(srctree)/$(src)/dp
67

7-
msm-y := \
8+
adreno-y := \
89
adreno/adreno_device.o \
910
adreno/adreno_gpu.o \
1011
adreno/a2xx_gpu.o \
12+
adreno/a2xx_gpummu.o \
1113
adreno/a3xx_gpu.o \
1214
adreno/a4xx_gpu.o \
1315
adreno/a5xx_gpu.o \
@@ -17,7 +19,11 @@ msm-y := \
1719
adreno/a6xx_gmu.o \
1820
adreno/a6xx_hfi.o \
1921

20-
msm-$(CONFIG_DRM_MSM_HDMI) += \
22+
adreno-$(CONFIG_DEBUG_FS) += adreno/a5xx_debugfs.o \
23+
24+
adreno-$(CONFIG_DRM_MSM_GPU_STATE) += adreno/a6xx_gpu_state.o
25+
26+
msm-display-$(CONFIG_DRM_MSM_HDMI) += \
2127
hdmi/hdmi.o \
2228
hdmi/hdmi_audio.o \
2329
hdmi/hdmi_bridge.o \
@@ -30,7 +36,7 @@ msm-$(CONFIG_DRM_MSM_HDMI) += \
3036
hdmi/hdmi_phy_8x74.o \
3137
hdmi/hdmi_pll_8960.o \
3238

33-
msm-$(CONFIG_DRM_MSM_MDP4) += \
39+
msm-display-$(CONFIG_DRM_MSM_MDP4) += \
3440
disp/mdp4/mdp4_crtc.o \
3541
disp/mdp4/mdp4_dsi_encoder.o \
3642
disp/mdp4/mdp4_dtv_encoder.o \
@@ -41,7 +47,7 @@ msm-$(CONFIG_DRM_MSM_MDP4) += \
4147
disp/mdp4/mdp4_kms.o \
4248
disp/mdp4/mdp4_plane.o \
4349

44-
msm-$(CONFIG_DRM_MSM_MDP5) += \
50+
msm-display-$(CONFIG_DRM_MSM_MDP5) += \
4551
disp/mdp5/mdp5_cfg.o \
4652
disp/mdp5/mdp5_cmd_encoder.o \
4753
disp/mdp5/mdp5_ctl.o \
@@ -54,7 +60,7 @@ msm-$(CONFIG_DRM_MSM_MDP5) += \
5460
disp/mdp5/mdp5_plane.o \
5561
disp/mdp5/mdp5_smp.o \
5662

57-
msm-$(CONFIG_DRM_MSM_DPU) += \
63+
msm-display-$(CONFIG_DRM_MSM_DPU) += \
5864
disp/dpu1/dpu_core_perf.o \
5965
disp/dpu1/dpu_crtc.o \
6066
disp/dpu1/dpu_encoder.o \
@@ -84,14 +90,16 @@ msm-$(CONFIG_DRM_MSM_DPU) += \
8490
disp/dpu1/dpu_vbif.o \
8591
disp/dpu1/dpu_writeback.o
8692

87-
msm-$(CONFIG_DRM_MSM_MDSS) += \
93+
msm-display-$(CONFIG_DRM_MSM_MDSS) += \
8894
msm_mdss.o \
8995

90-
msm-y += \
96+
msm-display-y += \
9197
disp/mdp_format.o \
9298
disp/mdp_kms.o \
9399
disp/msm_disp_snapshot.o \
94100
disp/msm_disp_snapshot_util.o \
101+
102+
msm-y += \
95103
msm_atomic.o \
96104
msm_atomic_tracepoints.o \
97105
msm_debugfs.o \
@@ -113,14 +121,13 @@ msm-y += \
113121
msm_ringbuffer.o \
114122
msm_submitqueue.o \
115123
msm_gpu_tracepoints.o \
116-
msm_gpummu.o
117124

118-
msm-$(CONFIG_DEBUG_FS) += adreno/a5xx_debugfs.o \
119-
dp/dp_debug.o
125+
msm-$(CONFIG_DRM_FBDEV_EMULATION) += msm_fbdev.o
120126

121-
msm-$(CONFIG_DRM_MSM_GPU_STATE) += adreno/a6xx_gpu_state.o
127+
msm-display-$(CONFIG_DEBUG_FS) += \
128+
dp/dp_debug.o
122129

123-
msm-$(CONFIG_DRM_MSM_DP)+= dp/dp_aux.o \
130+
msm-display-$(CONFIG_DRM_MSM_DP)+= dp/dp_aux.o \
124131
dp/dp_catalog.o \
125132
dp/dp_ctrl.o \
126133
dp/dp_display.o \
@@ -130,21 +137,76 @@ msm-$(CONFIG_DRM_MSM_DP)+= dp/dp_aux.o \
130137
dp/dp_audio.o \
131138
dp/dp_utils.o
132139

133-
msm-$(CONFIG_DRM_FBDEV_EMULATION) += msm_fbdev.o
134-
135-
msm-$(CONFIG_DRM_MSM_HDMI_HDCP) += hdmi/hdmi_hdcp.o
140+
msm-display-$(CONFIG_DRM_MSM_HDMI_HDCP) += hdmi/hdmi_hdcp.o
136141

137-
msm-$(CONFIG_DRM_MSM_DSI) += dsi/dsi.o \
142+
msm-display-$(CONFIG_DRM_MSM_DSI) += dsi/dsi.o \
138143
dsi/dsi_cfg.o \
139144
dsi/dsi_host.o \
140145
dsi/dsi_manager.o \
141146
dsi/phy/dsi_phy.o
142147

143-
msm-$(CONFIG_DRM_MSM_DSI_28NM_PHY) += dsi/phy/dsi_phy_28nm.o
144-
msm-$(CONFIG_DRM_MSM_DSI_20NM_PHY) += dsi/phy/dsi_phy_20nm.o
145-
msm-$(CONFIG_DRM_MSM_DSI_28NM_8960_PHY) += dsi/phy/dsi_phy_28nm_8960.o
146-
msm-$(CONFIG_DRM_MSM_DSI_14NM_PHY) += dsi/phy/dsi_phy_14nm.o
147-
msm-$(CONFIG_DRM_MSM_DSI_10NM_PHY) += dsi/phy/dsi_phy_10nm.o
148-
msm-$(CONFIG_DRM_MSM_DSI_7NM_PHY) += dsi/phy/dsi_phy_7nm.o
148+
msm-display-$(CONFIG_DRM_MSM_DSI_28NM_PHY) += dsi/phy/dsi_phy_28nm.o
149+
msm-display-$(CONFIG_DRM_MSM_DSI_20NM_PHY) += dsi/phy/dsi_phy_20nm.o
150+
msm-display-$(CONFIG_DRM_MSM_DSI_28NM_8960_PHY) += dsi/phy/dsi_phy_28nm_8960.o
151+
msm-display-$(CONFIG_DRM_MSM_DSI_14NM_PHY) += dsi/phy/dsi_phy_14nm.o
152+
msm-display-$(CONFIG_DRM_MSM_DSI_10NM_PHY) += dsi/phy/dsi_phy_10nm.o
153+
msm-display-$(CONFIG_DRM_MSM_DSI_7NM_PHY) += dsi/phy/dsi_phy_7nm.o
154+
155+
msm-y += $(adreno-y) $(msm-display-y)
149156

150157
obj-$(CONFIG_DRM_MSM) += msm.o
158+
159+
ifeq (y,$(CONFIG_DRM_MSM_VALIDATE_XML))
160+
headergen-opts += --validate
161+
else
162+
headergen-opts += --no-validate
163+
endif
164+
165+
quiet_cmd_headergen = GENHDR $@
166+
cmd_headergen = mkdir -p $(obj)/generated && $(PYTHON3) $(srctree)/$(src)/registers/gen_header.py \
167+
$(headergen-opts) --rnn $(srctree)/$(src)/registers --xml $< c-defines > $@
168+
169+
$(obj)/generated/%.xml.h: $(src)/registers/adreno/%.xml \
170+
$(src)/registers/adreno/adreno_common.xml \
171+
$(src)/registers/adreno/adreno_pm4.xml \
172+
$(src)/registers/freedreno_copyright.xml \
173+
$(src)/registers/gen_header.py \
174+
$(src)/registers/rules-fd.xsd \
175+
FORCE
176+
$(call if_changed,headergen)
177+
178+
$(obj)/generated/%.xml.h: $(src)/registers/display/%.xml \
179+
$(src)/registers/freedreno_copyright.xml \
180+
$(src)/registers/gen_header.py \
181+
$(src)/registers/rules-fd.xsd \
182+
FORCE
183+
$(call if_changed,headergen)
184+
185+
ADRENO_HEADERS = \
186+
generated/a2xx.xml.h \
187+
generated/a3xx.xml.h \
188+
generated/a4xx.xml.h \
189+
generated/a5xx.xml.h \
190+
generated/a6xx.xml.h \
191+
generated/a6xx_gmu.xml.h \
192+
generated/adreno_common.xml.h \
193+
generated/adreno_pm4.xml.h \
194+
195+
DISPLAY_HEADERS = \
196+
generated/dsi_phy_7nm.xml.h \
197+
generated/dsi_phy_10nm.xml.h \
198+
generated/dsi_phy_14nm.xml.h \
199+
generated/dsi_phy_20nm.xml.h \
200+
generated/dsi_phy_28nm_8960.xml.h \
201+
generated/dsi_phy_28nm.xml.h \
202+
generated/dsi.xml.h \
203+
generated/hdmi.xml.h \
204+
generated/mdp4.xml.h \
205+
generated/mdp5.xml.h \
206+
generated/mdp_common.xml.h \
207+
generated/sfpb.xml.h
208+
209+
$(addprefix $(obj)/,$(adreno-y)): $(addprefix $(obj)/,$(ADRENO_HEADERS))
210+
$(addprefix $(obj)/,$(msm-display-y)): $(addprefix $(obj)/,$(DISPLAY_HEADERS))
211+
212+
targets += $(ADRENO_HEADERS) $(DISPLAY_HEADERS)

0 commit comments

Comments
 (0)