1b2441318SGreg Kroah-Hartman# SPDX-License-Identifier: GPL-2.0 2b1992c37SMasahiro Yamadaccflags-y := -I $(src) 30fddd045SDmitry Baryshkovccflags-y += -I $(obj)/generated 4b1992c37SMasahiro Yamadaccflags-y += -I $(src)/disp/dpu1 5b1992c37SMasahiro Yamadaccflags-$(CONFIG_DRM_MSM_DSI) += -I $(src)/dsi 6b1992c37SMasahiro Yamadaccflags-$(CONFIG_DRM_MSM_DP) += -I $(src)/dp 7c8afe684SRob Clark 80fddd045SDmitry Baryshkovadreno-y := \ 9bfd28b13SRob Clark adreno/adreno_device.o \ 107198e6b0SRob Clark adreno/adreno_gpu.o \ 112e819c42SRob Clark adreno/a2xx_catalog.o \ 1221af872cSJonathan Marek adreno/a2xx_gpu.o \ 13d86b9c57SDmitry Baryshkov adreno/a2xx_gpummu.o \ 142e819c42SRob Clark adreno/a3xx_catalog.o \ 157198e6b0SRob Clark adreno/a3xx_gpu.o \ 162e819c42SRob Clark adreno/a4xx_catalog.o \ 1723bd62fdSAravind Ganesan adreno/a4xx_gpu.o \ 182e819c42SRob Clark adreno/a5xx_catalog.o \ 19b5f103abSJordan Crouse adreno/a5xx_gpu.o \ 202401a008SJordan Crouse adreno/a5xx_power.o \ 21b1fc2839SJordan Crouse adreno/a5xx_preempt.o \ 222e819c42SRob Clark adreno/a6xx_catalog.o \ 234b565ca5SJordan Crouse adreno/a6xx_gpu.o \ 244b565ca5SJordan Crouse adreno/a6xx_gmu.o \ 254b565ca5SJordan Crouse adreno/a6xx_hfi.o \ 26e7ae83daSAntonino Maniscalco adreno/a6xx_preempt.o \ 27*288a9320SAkhil P Oommen adreno/a8xx_gpu.o \ 28dc43e923SDmitry Baryshkov 290fddd045SDmitry Baryshkovadreno-$(CONFIG_DEBUG_FS) += adreno/a5xx_debugfs.o \ 300fddd045SDmitry Baryshkov 310fddd045SDmitry Baryshkovadreno-$(CONFIG_DRM_MSM_GPU_STATE) += adreno/a6xx_gpu_state.o 320fddd045SDmitry Baryshkov 330fddd045SDmitry Baryshkovmsm-display-$(CONFIG_DRM_MSM_HDMI) += \ 34c8afe684SRob Clark hdmi/hdmi.o \ 35c0c0d9eeSRob Clark hdmi/hdmi_audio.o \ 36a3376e3eSRob Clark hdmi/hdmi_bridge.o \ 37caa24223SDmitry Baryshkov hdmi/hdmi_hpd.o \ 38c8afe684SRob Clark hdmi/hdmi_i2c.o \ 3915b4a452SArchit Taneja hdmi/hdmi_phy.o \ 40c8afe684SRob Clark hdmi/hdmi_phy_8960.o \ 41afece15aSArnd Bergmann hdmi/hdmi_phy_8996.o \ 42caedbf17SArnaud Vrac hdmi/hdmi_phy_8998.o \ 43c8afe684SRob Clark hdmi/hdmi_phy_8x60.o \ 44dada25bdSRob Clark hdmi/hdmi_phy_8x74.o \ 45afece15aSArnd Bergmann hdmi/hdmi_pll_8960.o \ 46dc43e923SDmitry Baryshkov 470fddd045SDmitry Baryshkovmsm-display-$(CONFIG_DRM_MSM_MDP4) += \ 4814be3200SRob Clark disp/mdp4/mdp4_crtc.o \ 49dc43e923SDmitry Baryshkov disp/mdp4/mdp4_dsi_encoder.o \ 5014be3200SRob Clark disp/mdp4/mdp4_dtv_encoder.o \ 5114be3200SRob Clark disp/mdp4/mdp4_lcdc_encoder.o \ 52afece15aSArnd Bergmann disp/mdp4/mdp4_lvds_pll.o \ 5314be3200SRob Clark disp/mdp4/mdp4_irq.o \ 5414be3200SRob Clark disp/mdp4/mdp4_kms.o \ 5514be3200SRob Clark disp/mdp4/mdp4_plane.o \ 56dc43e923SDmitry Baryshkov 570fddd045SDmitry Baryshkovmsm-display-$(CONFIG_DRM_MSM_MDP5) += \ 5814be3200SRob Clark disp/mdp5/mdp5_cfg.o \ 59dc43e923SDmitry Baryshkov disp/mdp5/mdp5_cmd_encoder.o \ 6014be3200SRob Clark disp/mdp5/mdp5_ctl.o \ 6114be3200SRob Clark disp/mdp5/mdp5_crtc.o \ 6214be3200SRob Clark disp/mdp5/mdp5_encoder.o \ 6314be3200SRob Clark disp/mdp5/mdp5_irq.o \ 6414be3200SRob Clark disp/mdp5/mdp5_kms.o \ 6514be3200SRob Clark disp/mdp5/mdp5_pipe.o \ 6614be3200SRob Clark disp/mdp5/mdp5_mixer.o \ 6714be3200SRob Clark disp/mdp5/mdp5_plane.o \ 6814be3200SRob Clark disp/mdp5/mdp5_smp.o \ 69dc43e923SDmitry Baryshkov 700fddd045SDmitry Baryshkovmsm-display-$(CONFIG_DRM_MSM_DPU) += \ 7125fdd593SJeykumar Sankaran disp/dpu1/dpu_core_perf.o \ 7225fdd593SJeykumar Sankaran disp/dpu1/dpu_crtc.o \ 7325fdd593SJeykumar Sankaran disp/dpu1/dpu_encoder.o \ 7425fdd593SJeykumar Sankaran disp/dpu1/dpu_encoder_phys_cmd.o \ 7525fdd593SJeykumar Sankaran disp/dpu1/dpu_encoder_phys_vid.o \ 76d7d0e73fSAbhinav Kumar disp/dpu1/dpu_encoder_phys_wb.o \ 7725fdd593SJeykumar Sankaran disp/dpu1/dpu_formats.o \ 7825fdd593SJeykumar Sankaran disp/dpu1/dpu_hw_catalog.o \ 790afac0baSAbhinav Kumar disp/dpu1/dpu_hw_cdm.o \ 8025fdd593SJeykumar Sankaran disp/dpu1/dpu_hw_ctl.o \ 81aae87364SJessica Zhang disp/dpu1/dpu_hw_cwb.o \ 82c110cfd1SVinod Koul disp/dpu1/dpu_hw_dsc.o \ 838c4094b2SKuogee Hsieh disp/dpu1/dpu_hw_dsc_1_2.o \ 8425fdd593SJeykumar Sankaran disp/dpu1/dpu_hw_interrupts.o \ 8525fdd593SJeykumar Sankaran disp/dpu1/dpu_hw_intf.o \ 8625fdd593SJeykumar Sankaran disp/dpu1/dpu_hw_lm.o \ 8725fdd593SJeykumar Sankaran disp/dpu1/dpu_hw_pingpong.o \ 8825fdd593SJeykumar Sankaran disp/dpu1/dpu_hw_sspp.o \ 89e47616dfSKalyan Thota disp/dpu1/dpu_hw_dspp.o \ 904369c93cSDmitry Baryshkov disp/dpu1/dpu_hw_merge3d.o \ 9125fdd593SJeykumar Sankaran disp/dpu1/dpu_hw_top.o \ 9225fdd593SJeykumar Sankaran disp/dpu1/dpu_hw_util.o \ 9325fdd593SJeykumar Sankaran disp/dpu1/dpu_hw_vbif.o \ 9484a33d0fSAbhinav Kumar disp/dpu1/dpu_hw_wb.o \ 9525fdd593SJeykumar Sankaran disp/dpu1/dpu_kms.o \ 9625fdd593SJeykumar Sankaran disp/dpu1/dpu_plane.o \ 9725fdd593SJeykumar Sankaran disp/dpu1/dpu_rm.o \ 9825fdd593SJeykumar Sankaran disp/dpu1/dpu_vbif.o \ 9977b001acSAbhinav Kumar disp/dpu1/dpu_writeback.o 100dc43e923SDmitry Baryshkov 1010fddd045SDmitry Baryshkovmsm-display-$(CONFIG_DRM_MSM_MDSS) += \ 102dc43e923SDmitry Baryshkov msm_mdss.o \ 103dc43e923SDmitry Baryshkov 10498290b0aSDmitry Baryshkovmsm-display-$(CONFIG_DRM_MSM_KMS) += \ 105dc43e923SDmitry Baryshkov disp/mdp_format.o \ 106dc43e923SDmitry Baryshkov disp/mdp_kms.o \ 10798659487SAbhinav Kumar disp/msm_disp_snapshot.o \ 10898659487SAbhinav Kumar disp/msm_disp_snapshot_util.o \ 1090fddd045SDmitry Baryshkov 1100fddd045SDmitry Baryshkovmsm-y += \ 111edcd60ceSRob Clark msm_debugfs.o \ 112c8afe684SRob Clark msm_drv.o \ 113fde5de6cSRob Clark msm_fence.o \ 1147198e6b0SRob Clark msm_gem.o \ 11505b84911SRob Clark msm_gem_prime.o \ 11668209390SRob Clark msm_gem_shrinker.o \ 1177198e6b0SRob Clark msm_gem_submit.o \ 118667ce33eSRob Clark msm_gem_vma.o \ 1197198e6b0SRob Clark msm_gpu.o \ 120af5b4fffSRob Clark msm_gpu_devfreq.o \ 121d89e5028SDmitry Baryshkov msm_io_utils.o \ 122871d812aSRob Clark msm_iommu.o \ 12370c70f09SRob Clark msm_perf.o \ 124a7d3c950SRob Clark msm_rd.o \ 125f7de1545SJordan Crouse msm_ringbuffer.o \ 1264241db42SJordan Crouse msm_submitqueue.o \ 127e1341f91SRob Clark msm_syncobj.o \ 128c2052a4eSJonathan Marek msm_gpu_tracepoints.o \ 129c8afe684SRob Clark 13098290b0aSDmitry Baryshkovmsm-$(CONFIG_DRM_MSM_KMS) += \ 13198290b0aSDmitry Baryshkov msm_atomic.o \ 13298290b0aSDmitry Baryshkov msm_atomic_tracepoints.o \ 13398290b0aSDmitry Baryshkov msm_fb.o \ 13498290b0aSDmitry Baryshkov msm_kms.o \ 1350fddd045SDmitry Baryshkov 13698290b0aSDmitry Baryshkovmsm-$(CONFIG_DRM_MSM_KMS_FBDEV) += msm_fbdev.o 137331dc0bcSRob Clark 1380fddd045SDmitry Baryshkovmsm-display-$(CONFIG_DRM_MSM_DP)+= dp/dp_aux.o \ 139c943b494SChandan Uddaraju dp/dp_ctrl.o \ 14098290b0aSDmitry Baryshkov dp/dp_debug.o \ 141c943b494SChandan Uddaraju dp/dp_display.o \ 142c943b494SChandan Uddaraju dp/dp_drm.o \ 143c943b494SChandan Uddaraju dp/dp_link.o \ 144c943b494SChandan Uddaraju dp/dp_panel.o \ 14509b27a48SPaloma Arellano dp/dp_audio.o \ 14609b27a48SPaloma Arellano dp/dp_utils.o 147c943b494SChandan Uddaraju 1480fddd045SDmitry Baryshkovmsm-display-$(CONFIG_DRM_MSM_HDMI_HDCP) += hdmi/hdmi_hdcp.o 149825637b9SHai Li 1500fddd045SDmitry Baryshkovmsm-display-$(CONFIG_DRM_MSM_DSI) += dsi/dsi.o \ 151d248b61fSHai Li dsi/dsi_cfg.o \ 152a689554bSHai Li dsi/dsi_host.o \ 153a689554bSHai Li dsi/dsi_manager.o \ 154dc43e923SDmitry Baryshkov dsi/phy/dsi_phy.o 155c8afe684SRob Clark 1560fddd045SDmitry Baryshkovmsm-display-$(CONFIG_DRM_MSM_DSI_28NM_PHY) += dsi/phy/dsi_phy_28nm.o 1570fddd045SDmitry Baryshkovmsm-display-$(CONFIG_DRM_MSM_DSI_20NM_PHY) += dsi/phy/dsi_phy_20nm.o 1580fddd045SDmitry Baryshkovmsm-display-$(CONFIG_DRM_MSM_DSI_28NM_8960_PHY) += dsi/phy/dsi_phy_28nm_8960.o 1590fddd045SDmitry Baryshkovmsm-display-$(CONFIG_DRM_MSM_DSI_14NM_PHY) += dsi/phy/dsi_phy_14nm.o 1600fddd045SDmitry Baryshkovmsm-display-$(CONFIG_DRM_MSM_DSI_10NM_PHY) += dsi/phy/dsi_phy_10nm.o 1610fddd045SDmitry Baryshkovmsm-display-$(CONFIG_DRM_MSM_DSI_7NM_PHY) += dsi/phy/dsi_phy_7nm.o 1620fddd045SDmitry Baryshkov 16398290b0aSDmitry Baryshkovmsm-y += $(adreno-y) 16498290b0aSDmitry Baryshkovmsm-$(CONFIG_DRM_MSM_KMS) += $(msm-display-y) 1651bf4d7c5SHai Li 166c8afe684SRob Clarkobj-$(CONFIG_DRM_MSM) += msm.o 1670fddd045SDmitry Baryshkov 168b587f413SDmitry Baryshkovifeq (y,$(CONFIG_DRM_MSM_VALIDATE_XML)) 169b587f413SDmitry Baryshkov headergen-opts += --validate 170b587f413SDmitry Baryshkovelse 171b587f413SDmitry Baryshkov headergen-opts += --no-validate 172b587f413SDmitry Baryshkovendif 173b587f413SDmitry Baryshkov 1740fddd045SDmitry Baryshkovquiet_cmd_headergen = GENHDR $@ 175ff9a7930SLinus Torvalds cmd_headergen = mkdir -p $(obj)/generated && $(PYTHON3) $(src)/registers/gen_header.py \ 176ff9a7930SLinus Torvalds $(headergen-opts) --rnn $(src)/registers --xml $< c-defines > $@ 1770fddd045SDmitry Baryshkov 1780fddd045SDmitry Baryshkov$(obj)/generated/%.xml.h: $(src)/registers/adreno/%.xml \ 1790fddd045SDmitry Baryshkov $(src)/registers/adreno/adreno_common.xml \ 1800fddd045SDmitry Baryshkov $(src)/registers/adreno/adreno_pm4.xml \ 1810fddd045SDmitry Baryshkov $(src)/registers/freedreno_copyright.xml \ 1820fddd045SDmitry Baryshkov $(src)/registers/gen_header.py \ 1830fddd045SDmitry Baryshkov $(src)/registers/rules-fd.xsd \ 1840fddd045SDmitry Baryshkov FORCE 1850fddd045SDmitry Baryshkov $(call if_changed,headergen) 1860fddd045SDmitry Baryshkov 1870fddd045SDmitry Baryshkov$(obj)/generated/%.xml.h: $(src)/registers/display/%.xml \ 1880fddd045SDmitry Baryshkov $(src)/registers/freedreno_copyright.xml \ 1890fddd045SDmitry Baryshkov $(src)/registers/gen_header.py \ 1900fddd045SDmitry Baryshkov $(src)/registers/rules-fd.xsd \ 1910fddd045SDmitry Baryshkov FORCE 1920fddd045SDmitry Baryshkov $(call if_changed,headergen) 1930fddd045SDmitry Baryshkov 1940fddd045SDmitry BaryshkovADRENO_HEADERS = \ 1950fddd045SDmitry Baryshkov generated/a2xx.xml.h \ 1960fddd045SDmitry Baryshkov generated/a3xx.xml.h \ 1970fddd045SDmitry Baryshkov generated/a4xx.xml.h \ 1980fddd045SDmitry Baryshkov generated/a5xx.xml.h \ 1990fddd045SDmitry Baryshkov generated/a6xx.xml.h \ 2006733d827SRob Clark generated/a6xx_descriptors.xml.h \ 2016733d827SRob Clark generated/a6xx_enums.xml.h \ 2026733d827SRob Clark generated/a6xx_perfcntrs.xml.h \ 2036733d827SRob Clark generated/a7xx_enums.xml.h \ 2046733d827SRob Clark generated/a7xx_perfcntrs.xml.h \ 2051ef05ef9SAkhil P Oommen generated/a8xx_enums.xml.h \ 2060fddd045SDmitry Baryshkov generated/a6xx_gmu.xml.h \ 2070fddd045SDmitry Baryshkov generated/adreno_common.xml.h \ 2080fddd045SDmitry Baryshkov generated/adreno_pm4.xml.h \ 2090fddd045SDmitry Baryshkov 2100fddd045SDmitry BaryshkovDISPLAY_HEADERS = \ 2110fddd045SDmitry Baryshkov generated/dsi_phy_7nm.xml.h \ 2120fddd045SDmitry Baryshkov generated/dsi_phy_10nm.xml.h \ 2130fddd045SDmitry Baryshkov generated/dsi_phy_14nm.xml.h \ 2140fddd045SDmitry Baryshkov generated/dsi_phy_20nm.xml.h \ 2150fddd045SDmitry Baryshkov generated/dsi_phy_28nm_8960.xml.h \ 2160fddd045SDmitry Baryshkov generated/dsi_phy_28nm.xml.h \ 2170fddd045SDmitry Baryshkov generated/dsi.xml.h \ 2180fddd045SDmitry Baryshkov generated/hdmi.xml.h \ 2190fddd045SDmitry Baryshkov generated/mdp4.xml.h \ 2200fddd045SDmitry Baryshkov generated/mdp5.xml.h \ 2210fddd045SDmitry Baryshkov generated/mdp_common.xml.h \ 22292de8137SDmitry Baryshkov generated/mdss.xml.h \ 2230fddd045SDmitry Baryshkov generated/sfpb.xml.h 2240fddd045SDmitry Baryshkov 2250fddd045SDmitry Baryshkov$(addprefix $(obj)/,$(adreno-y)): $(addprefix $(obj)/,$(ADRENO_HEADERS)) 2260fddd045SDmitry Baryshkov$(addprefix $(obj)/,$(msm-display-y)): $(addprefix $(obj)/,$(DISPLAY_HEADERS)) 2270fddd045SDmitry Baryshkov 2280fddd045SDmitry Baryshkovtargets += $(ADRENO_HEADERS) $(DISPLAY_HEADERS) 229