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 \ 27dc43e923SDmitry Baryshkov 280fddd045SDmitry Baryshkovadreno-$(CONFIG_DEBUG_FS) += adreno/a5xx_debugfs.o \ 290fddd045SDmitry Baryshkov 300fddd045SDmitry Baryshkovadreno-$(CONFIG_DRM_MSM_GPU_STATE) += adreno/a6xx_gpu_state.o 310fddd045SDmitry Baryshkov 320fddd045SDmitry Baryshkovmsm-display-$(CONFIG_DRM_MSM_HDMI) += \ 33c8afe684SRob Clark hdmi/hdmi.o \ 34c0c0d9eeSRob Clark hdmi/hdmi_audio.o \ 35a3376e3eSRob Clark hdmi/hdmi_bridge.o \ 36caa24223SDmitry Baryshkov hdmi/hdmi_hpd.o \ 37c8afe684SRob Clark hdmi/hdmi_i2c.o \ 3815b4a452SArchit Taneja hdmi/hdmi_phy.o \ 39c8afe684SRob Clark hdmi/hdmi_phy_8960.o \ 40afece15aSArnd Bergmann hdmi/hdmi_phy_8996.o \ 41caedbf17SArnaud Vrac hdmi/hdmi_phy_8998.o \ 42c8afe684SRob Clark hdmi/hdmi_phy_8x60.o \ 43dada25bdSRob Clark hdmi/hdmi_phy_8x74.o \ 44afece15aSArnd Bergmann hdmi/hdmi_pll_8960.o \ 45dc43e923SDmitry Baryshkov 460fddd045SDmitry Baryshkovmsm-display-$(CONFIG_DRM_MSM_MDP4) += \ 4714be3200SRob Clark disp/mdp4/mdp4_crtc.o \ 48dc43e923SDmitry Baryshkov disp/mdp4/mdp4_dsi_encoder.o \ 4914be3200SRob Clark disp/mdp4/mdp4_dtv_encoder.o \ 5014be3200SRob Clark disp/mdp4/mdp4_lcdc_encoder.o \ 51afece15aSArnd Bergmann disp/mdp4/mdp4_lvds_pll.o \ 5214be3200SRob Clark disp/mdp4/mdp4_irq.o \ 5314be3200SRob Clark disp/mdp4/mdp4_kms.o \ 5414be3200SRob Clark disp/mdp4/mdp4_plane.o \ 55dc43e923SDmitry Baryshkov 560fddd045SDmitry Baryshkovmsm-display-$(CONFIG_DRM_MSM_MDP5) += \ 5714be3200SRob Clark disp/mdp5/mdp5_cfg.o \ 58dc43e923SDmitry Baryshkov disp/mdp5/mdp5_cmd_encoder.o \ 5914be3200SRob Clark disp/mdp5/mdp5_ctl.o \ 6014be3200SRob Clark disp/mdp5/mdp5_crtc.o \ 6114be3200SRob Clark disp/mdp5/mdp5_encoder.o \ 6214be3200SRob Clark disp/mdp5/mdp5_irq.o \ 6314be3200SRob Clark disp/mdp5/mdp5_kms.o \ 6414be3200SRob Clark disp/mdp5/mdp5_pipe.o \ 6514be3200SRob Clark disp/mdp5/mdp5_mixer.o \ 6614be3200SRob Clark disp/mdp5/mdp5_plane.o \ 6714be3200SRob Clark disp/mdp5/mdp5_smp.o \ 68dc43e923SDmitry Baryshkov 690fddd045SDmitry Baryshkovmsm-display-$(CONFIG_DRM_MSM_DPU) += \ 7025fdd593SJeykumar Sankaran disp/dpu1/dpu_core_perf.o \ 7125fdd593SJeykumar Sankaran disp/dpu1/dpu_crtc.o \ 7225fdd593SJeykumar Sankaran disp/dpu1/dpu_encoder.o \ 7325fdd593SJeykumar Sankaran disp/dpu1/dpu_encoder_phys_cmd.o \ 7425fdd593SJeykumar Sankaran disp/dpu1/dpu_encoder_phys_vid.o \ 75d7d0e73fSAbhinav Kumar disp/dpu1/dpu_encoder_phys_wb.o \ 7625fdd593SJeykumar Sankaran disp/dpu1/dpu_formats.o \ 7725fdd593SJeykumar Sankaran disp/dpu1/dpu_hw_catalog.o \ 780afac0baSAbhinav Kumar disp/dpu1/dpu_hw_cdm.o \ 7925fdd593SJeykumar Sankaran disp/dpu1/dpu_hw_ctl.o \ 80aae87364SJessica Zhang disp/dpu1/dpu_hw_cwb.o \ 81c110cfd1SVinod Koul disp/dpu1/dpu_hw_dsc.o \ 828c4094b2SKuogee Hsieh disp/dpu1/dpu_hw_dsc_1_2.o \ 8325fdd593SJeykumar Sankaran disp/dpu1/dpu_hw_interrupts.o \ 8425fdd593SJeykumar Sankaran disp/dpu1/dpu_hw_intf.o \ 8525fdd593SJeykumar Sankaran disp/dpu1/dpu_hw_lm.o \ 8625fdd593SJeykumar Sankaran disp/dpu1/dpu_hw_pingpong.o \ 8725fdd593SJeykumar Sankaran disp/dpu1/dpu_hw_sspp.o \ 88e47616dfSKalyan Thota disp/dpu1/dpu_hw_dspp.o \ 894369c93cSDmitry Baryshkov disp/dpu1/dpu_hw_merge3d.o \ 9025fdd593SJeykumar Sankaran disp/dpu1/dpu_hw_top.o \ 9125fdd593SJeykumar Sankaran disp/dpu1/dpu_hw_util.o \ 9225fdd593SJeykumar Sankaran disp/dpu1/dpu_hw_vbif.o \ 9384a33d0fSAbhinav Kumar disp/dpu1/dpu_hw_wb.o \ 9425fdd593SJeykumar Sankaran disp/dpu1/dpu_kms.o \ 9525fdd593SJeykumar Sankaran disp/dpu1/dpu_plane.o \ 9625fdd593SJeykumar Sankaran disp/dpu1/dpu_rm.o \ 9725fdd593SJeykumar Sankaran disp/dpu1/dpu_vbif.o \ 9877b001acSAbhinav Kumar disp/dpu1/dpu_writeback.o 99dc43e923SDmitry Baryshkov 1000fddd045SDmitry Baryshkovmsm-display-$(CONFIG_DRM_MSM_MDSS) += \ 101dc43e923SDmitry Baryshkov msm_mdss.o \ 102dc43e923SDmitry Baryshkov 103*98290b0aSDmitry Baryshkovmsm-display-$(CONFIG_DRM_MSM_KMS) += \ 104dc43e923SDmitry Baryshkov disp/mdp_format.o \ 105dc43e923SDmitry Baryshkov disp/mdp_kms.o \ 10698659487SAbhinav Kumar disp/msm_disp_snapshot.o \ 10798659487SAbhinav Kumar disp/msm_disp_snapshot_util.o \ 1080fddd045SDmitry Baryshkov 1090fddd045SDmitry Baryshkovmsm-y += \ 110edcd60ceSRob Clark msm_debugfs.o \ 111c8afe684SRob Clark msm_drv.o \ 112fde5de6cSRob Clark msm_fence.o \ 1137198e6b0SRob Clark msm_gem.o \ 11405b84911SRob Clark msm_gem_prime.o \ 11568209390SRob Clark msm_gem_shrinker.o \ 1167198e6b0SRob Clark msm_gem_submit.o \ 117667ce33eSRob Clark msm_gem_vma.o \ 1187198e6b0SRob Clark msm_gpu.o \ 119af5b4fffSRob Clark msm_gpu_devfreq.o \ 120d89e5028SDmitry Baryshkov msm_io_utils.o \ 121871d812aSRob Clark msm_iommu.o \ 12270c70f09SRob Clark msm_perf.o \ 123a7d3c950SRob Clark msm_rd.o \ 124f7de1545SJordan Crouse msm_ringbuffer.o \ 1254241db42SJordan Crouse msm_submitqueue.o \ 126e1341f91SRob Clark msm_syncobj.o \ 127c2052a4eSJonathan Marek msm_gpu_tracepoints.o \ 128c8afe684SRob Clark 129*98290b0aSDmitry Baryshkovmsm-$(CONFIG_DRM_MSM_KMS) += \ 130*98290b0aSDmitry Baryshkov msm_atomic.o \ 131*98290b0aSDmitry Baryshkov msm_atomic_tracepoints.o \ 132*98290b0aSDmitry Baryshkov msm_fb.o \ 133*98290b0aSDmitry Baryshkov msm_kms.o \ 1340fddd045SDmitry Baryshkov 135*98290b0aSDmitry Baryshkovmsm-$(CONFIG_DRM_MSM_KMS_FBDEV) += msm_fbdev.o 136331dc0bcSRob Clark 1370fddd045SDmitry Baryshkovmsm-display-$(CONFIG_DRM_MSM_DP)+= dp/dp_aux.o \ 138c943b494SChandan Uddaraju dp/dp_ctrl.o \ 139*98290b0aSDmitry Baryshkov dp/dp_debug.o \ 140c943b494SChandan Uddaraju dp/dp_display.o \ 141c943b494SChandan Uddaraju dp/dp_drm.o \ 142c943b494SChandan Uddaraju dp/dp_link.o \ 143c943b494SChandan Uddaraju dp/dp_panel.o \ 14409b27a48SPaloma Arellano dp/dp_audio.o \ 14509b27a48SPaloma Arellano dp/dp_utils.o 146c943b494SChandan Uddaraju 1470fddd045SDmitry Baryshkovmsm-display-$(CONFIG_DRM_MSM_HDMI_HDCP) += hdmi/hdmi_hdcp.o 148825637b9SHai Li 1490fddd045SDmitry Baryshkovmsm-display-$(CONFIG_DRM_MSM_DSI) += dsi/dsi.o \ 150d248b61fSHai Li dsi/dsi_cfg.o \ 151a689554bSHai Li dsi/dsi_host.o \ 152a689554bSHai Li dsi/dsi_manager.o \ 153dc43e923SDmitry Baryshkov dsi/phy/dsi_phy.o 154c8afe684SRob Clark 1550fddd045SDmitry Baryshkovmsm-display-$(CONFIG_DRM_MSM_DSI_28NM_PHY) += dsi/phy/dsi_phy_28nm.o 1560fddd045SDmitry Baryshkovmsm-display-$(CONFIG_DRM_MSM_DSI_20NM_PHY) += dsi/phy/dsi_phy_20nm.o 1570fddd045SDmitry Baryshkovmsm-display-$(CONFIG_DRM_MSM_DSI_28NM_8960_PHY) += dsi/phy/dsi_phy_28nm_8960.o 1580fddd045SDmitry Baryshkovmsm-display-$(CONFIG_DRM_MSM_DSI_14NM_PHY) += dsi/phy/dsi_phy_14nm.o 1590fddd045SDmitry Baryshkovmsm-display-$(CONFIG_DRM_MSM_DSI_10NM_PHY) += dsi/phy/dsi_phy_10nm.o 1600fddd045SDmitry Baryshkovmsm-display-$(CONFIG_DRM_MSM_DSI_7NM_PHY) += dsi/phy/dsi_phy_7nm.o 1610fddd045SDmitry Baryshkov 162*98290b0aSDmitry Baryshkovmsm-y += $(adreno-y) 163*98290b0aSDmitry Baryshkovmsm-$(CONFIG_DRM_MSM_KMS) += $(msm-display-y) 1641bf4d7c5SHai Li 165c8afe684SRob Clarkobj-$(CONFIG_DRM_MSM) += msm.o 1660fddd045SDmitry Baryshkov 167b587f413SDmitry Baryshkovifeq (y,$(CONFIG_DRM_MSM_VALIDATE_XML)) 168b587f413SDmitry Baryshkov headergen-opts += --validate 169b587f413SDmitry Baryshkovelse 170b587f413SDmitry Baryshkov headergen-opts += --no-validate 171b587f413SDmitry Baryshkovendif 172b587f413SDmitry Baryshkov 1730fddd045SDmitry Baryshkovquiet_cmd_headergen = GENHDR $@ 174ff9a7930SLinus Torvalds cmd_headergen = mkdir -p $(obj)/generated && $(PYTHON3) $(src)/registers/gen_header.py \ 175ff9a7930SLinus Torvalds $(headergen-opts) --rnn $(src)/registers --xml $< c-defines > $@ 1760fddd045SDmitry Baryshkov 1770fddd045SDmitry Baryshkov$(obj)/generated/%.xml.h: $(src)/registers/adreno/%.xml \ 1780fddd045SDmitry Baryshkov $(src)/registers/adreno/adreno_common.xml \ 1790fddd045SDmitry Baryshkov $(src)/registers/adreno/adreno_pm4.xml \ 1800fddd045SDmitry Baryshkov $(src)/registers/freedreno_copyright.xml \ 1810fddd045SDmitry Baryshkov $(src)/registers/gen_header.py \ 1820fddd045SDmitry Baryshkov $(src)/registers/rules-fd.xsd \ 1830fddd045SDmitry Baryshkov FORCE 1840fddd045SDmitry Baryshkov $(call if_changed,headergen) 1850fddd045SDmitry Baryshkov 1860fddd045SDmitry Baryshkov$(obj)/generated/%.xml.h: $(src)/registers/display/%.xml \ 1870fddd045SDmitry Baryshkov $(src)/registers/freedreno_copyright.xml \ 1880fddd045SDmitry Baryshkov $(src)/registers/gen_header.py \ 1890fddd045SDmitry Baryshkov $(src)/registers/rules-fd.xsd \ 1900fddd045SDmitry Baryshkov FORCE 1910fddd045SDmitry Baryshkov $(call if_changed,headergen) 1920fddd045SDmitry Baryshkov 1930fddd045SDmitry BaryshkovADRENO_HEADERS = \ 1940fddd045SDmitry Baryshkov generated/a2xx.xml.h \ 1950fddd045SDmitry Baryshkov generated/a3xx.xml.h \ 1960fddd045SDmitry Baryshkov generated/a4xx.xml.h \ 1970fddd045SDmitry Baryshkov generated/a5xx.xml.h \ 1980fddd045SDmitry Baryshkov generated/a6xx.xml.h \ 1996733d827SRob Clark generated/a6xx_descriptors.xml.h \ 2006733d827SRob Clark generated/a6xx_enums.xml.h \ 2016733d827SRob Clark generated/a6xx_perfcntrs.xml.h \ 2026733d827SRob Clark generated/a7xx_enums.xml.h \ 2036733d827SRob Clark generated/a7xx_perfcntrs.xml.h \ 2040fddd045SDmitry Baryshkov generated/a6xx_gmu.xml.h \ 2050fddd045SDmitry Baryshkov generated/adreno_common.xml.h \ 2060fddd045SDmitry Baryshkov generated/adreno_pm4.xml.h \ 2070fddd045SDmitry Baryshkov 2080fddd045SDmitry BaryshkovDISPLAY_HEADERS = \ 2090fddd045SDmitry Baryshkov generated/dsi_phy_7nm.xml.h \ 2100fddd045SDmitry Baryshkov generated/dsi_phy_10nm.xml.h \ 2110fddd045SDmitry Baryshkov generated/dsi_phy_14nm.xml.h \ 2120fddd045SDmitry Baryshkov generated/dsi_phy_20nm.xml.h \ 2130fddd045SDmitry Baryshkov generated/dsi_phy_28nm_8960.xml.h \ 2140fddd045SDmitry Baryshkov generated/dsi_phy_28nm.xml.h \ 2150fddd045SDmitry Baryshkov generated/dsi.xml.h \ 2160fddd045SDmitry Baryshkov generated/hdmi.xml.h \ 2170fddd045SDmitry Baryshkov generated/mdp4.xml.h \ 2180fddd045SDmitry Baryshkov generated/mdp5.xml.h \ 2190fddd045SDmitry Baryshkov generated/mdp_common.xml.h \ 22092de8137SDmitry Baryshkov generated/mdss.xml.h \ 2210fddd045SDmitry Baryshkov generated/sfpb.xml.h 2220fddd045SDmitry Baryshkov 2230fddd045SDmitry Baryshkov$(addprefix $(obj)/,$(adreno-y)): $(addprefix $(obj)/,$(ADRENO_HEADERS)) 2240fddd045SDmitry Baryshkov$(addprefix $(obj)/,$(msm-display-y)): $(addprefix $(obj)/,$(DISPLAY_HEADERS)) 2250fddd045SDmitry Baryshkov 2260fddd045SDmitry Baryshkovtargets += $(ADRENO_HEADERS) $(DISPLAY_HEADERS) 227