Home | History | Annotate | Line # | Download | only in amdgpu
      1 #
      2 # Copyright 2017 Advanced Micro Devices, Inc.
      3 #
      4 # Permission is hereby granted, free of charge, to any person obtaining a
      5 # copy of this software and associated documentation files (the "Software"),
      6 # to deal in the Software without restriction, including without limitation
      7 # the rights to use, copy, modify, merge, publish, distribute, sublicense,
      8 # and/or sell copies of the Software, and to permit persons to whom the
      9 # Software is furnished to do so, subject to the following conditions:
     10 #
     11 # The above copyright notice and this permission notice shall be included in
     12 # all copies or substantial portions of the Software.
     13 #
     14 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
     15 # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
     16 # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
     17 # THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR
     18 # OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
     19 # ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
     20 # OTHER DEALINGS IN THE SOFTWARE.
     21 #
     22 #
     23 # Makefile for the drm device driver.  This driver provides support for the
     24 # Direct Rendering Infrastructure (DRI) in XFree86 4.1.0 and higher.
     25 
     26 FULL_AMD_PATH=$(srctree)/$(src)/..
     27 DISPLAY_FOLDER_NAME=display
     28 FULL_AMD_DISPLAY_PATH = $(FULL_AMD_PATH)/$(DISPLAY_FOLDER_NAME)
     29 
     30 ccflags-y := -I$(FULL_AMD_PATH)/include/asic_reg \
     31 	-I$(FULL_AMD_PATH)/include \
     32 	-I$(FULL_AMD_PATH)/amdgpu \
     33 	-I$(FULL_AMD_PATH)/powerplay/inc \
     34 	-I$(FULL_AMD_PATH)/acp/include \
     35 	-I$(FULL_AMD_DISPLAY_PATH) \
     36 	-I$(FULL_AMD_DISPLAY_PATH)/include \
     37 	-I$(FULL_AMD_DISPLAY_PATH)/dc \
     38 	-I$(FULL_AMD_DISPLAY_PATH)/amdgpu_dm \
     39 	-I$(FULL_AMD_PATH)/amdkfd
     40 
     41 amdgpu-y := amdgpu_drv.o
     42 
     43 # add KMS driver
     44 amdgpu-y += amdgpu_device.o amdgpu_kms.o \
     45 	amdgpu_atombios.o atombios_crtc.o amdgpu_connectors.o \
     46 	atom.o amdgpu_fence.o amdgpu_ttm.o amdgpu_object.o amdgpu_gart.o \
     47 	amdgpu_encoders.o amdgpu_display.o amdgpu_i2c.o \
     48 	amdgpu_fb.o amdgpu_gem.o amdgpu_ring.o \
     49 	amdgpu_cs.o amdgpu_bios.o amdgpu_benchmark.o amdgpu_test.o \
     50 	amdgpu_pm.o atombios_dp.o amdgpu_afmt.o amdgpu_trace_points.o \
     51 	atombios_encoders.o amdgpu_sa.o atombios_i2c.o \
     52 	amdgpu_dma_buf.o amdgpu_vm.o amdgpu_ib.o amdgpu_pll.o \
     53 	amdgpu_ucode.o amdgpu_bo_list.o amdgpu_ctx.o amdgpu_sync.o \
     54 	amdgpu_gtt_mgr.o amdgpu_vram_mgr.o amdgpu_virt.o amdgpu_atomfirmware.o \
     55 	amdgpu_vf_error.o amdgpu_sched.o amdgpu_debugfs.o amdgpu_ids.o \
     56 	amdgpu_gmc.o amdgpu_mmhub.o amdgpu_xgmi.o amdgpu_csa.o amdgpu_ras.o amdgpu_vm_cpu.o \
     57 	amdgpu_vm_sdma.o amdgpu_discovery.o amdgpu_ras_eeprom.o amdgpu_nbio.o \
     58 	amdgpu_umc.o smu_v11_0_i2c.o
     59 
     60 amdgpu-$(CONFIG_PERF_EVENTS) += amdgpu_pmu.o
     61 
     62 # add asic specific block
     63 amdgpu-$(CONFIG_DRM_AMDGPU_CIK)+= cik.o cik_ih.o kv_smc.o kv_dpm.o \
     64 	dce_v8_0.o gfx_v7_0.o cik_sdma.o uvd_v4_2.o vce_v2_0.o
     65 
     66 amdgpu-$(CONFIG_DRM_AMDGPU_SI)+= si.o gmc_v6_0.o gfx_v6_0.o si_ih.o si_dma.o dce_v6_0.o si_dpm.o si_smc.o
     67 
     68 amdgpu-y += \
     69 	vi.o mxgpu_vi.o nbio_v6_1.o soc15.o emu_soc.o mxgpu_ai.o nbio_v7_0.o vega10_reg_init.o \
     70 	vega20_reg_init.o nbio_v7_4.o nbio_v2_3.o nv.o navi10_reg_init.o navi14_reg_init.o \
     71 	arct_reg_init.o navi12_reg_init.o mxgpu_nv.o
     72 
     73 # add DF block
     74 amdgpu-y += \
     75 	df_v1_7.o \
     76 	df_v3_6.o
     77 
     78 # add GMC block
     79 amdgpu-y += \
     80 	gmc_v7_0.o \
     81 	gmc_v8_0.o \
     82 	gfxhub_v1_0.o mmhub_v1_0.o gmc_v9_0.o gfxhub_v1_1.o mmhub_v9_4.o \
     83 	gfxhub_v2_0.o mmhub_v2_0.o gmc_v10_0.o
     84 
     85 # add UMC block
     86 amdgpu-y += \
     87 	umc_v6_1.o umc_v6_0.o
     88 
     89 # add IH block
     90 amdgpu-y += \
     91 	amdgpu_irq.o \
     92 	amdgpu_ih.o \
     93 	iceland_ih.o \
     94 	tonga_ih.o \
     95 	cz_ih.o \
     96 	vega10_ih.o \
     97 	navi10_ih.o
     98 
     99 # add PSP block
    100 amdgpu-y += \
    101 	amdgpu_psp.o \
    102 	psp_v3_1.o \
    103 	psp_v10_0.o \
    104 	psp_v11_0.o \
    105 	psp_v12_0.o
    106 
    107 # add SMC block
    108 amdgpu-y += \
    109 	amdgpu_dpm.o
    110 
    111 # add DCE block
    112 amdgpu-y += \
    113 	dce_v10_0.o \
    114 	dce_v11_0.o \
    115 	dce_virtual.o
    116 
    117 # add GFX block
    118 amdgpu-y += \
    119 	amdgpu_gfx.o \
    120 	amdgpu_rlc.o \
    121 	gfx_v8_0.o \
    122 	gfx_v9_0.o \
    123 	gfx_v9_4.o \
    124 	gfx_v10_0.o
    125 
    126 # add async DMA block
    127 amdgpu-y += \
    128 	amdgpu_sdma.o \
    129 	sdma_v2_4.o \
    130 	sdma_v3_0.o \
    131 	sdma_v4_0.o \
    132 	sdma_v5_0.o
    133 
    134 # add MES block
    135 amdgpu-y += \
    136 	mes_v10_1.o
    137 
    138 # add UVD block
    139 amdgpu-y += \
    140 	amdgpu_uvd.o \
    141 	uvd_v5_0.o \
    142 	uvd_v6_0.o \
    143 	uvd_v7_0.o
    144 
    145 # add VCE block
    146 amdgpu-y += \
    147 	amdgpu_vce.o \
    148 	vce_v3_0.o \
    149 	vce_v4_0.o
    150 
    151 # add VCN and JPEG block
    152 amdgpu-y += \
    153 	amdgpu_vcn.o \
    154 	vcn_v1_0.o \
    155 	vcn_v2_0.o \
    156 	vcn_v2_5.o \
    157 	amdgpu_jpeg.o \
    158 	jpeg_v1_0.o \
    159 	jpeg_v2_0.o \
    160 	jpeg_v2_5.o
    161 
    162 # add ATHUB block
    163 amdgpu-y += \
    164 	athub_v1_0.o \
    165 	athub_v2_0.o
    166 
    167 # add amdkfd interfaces
    168 amdgpu-y += amdgpu_amdkfd.o
    169 
    170 ifneq ($(CONFIG_HSA_AMD),)
    171 AMDKFD_PATH := ../amdkfd
    172 include $(FULL_AMD_PATH)/amdkfd/Makefile
    173 amdgpu-y += $(AMDKFD_FILES)
    174 amdgpu-y += \
    175 	 amdgpu_amdkfd_fence.o \
    176 	 amdgpu_amdkfd_gpuvm.o \
    177 	 amdgpu_amdkfd_gfx_v8.o \
    178 	 amdgpu_amdkfd_gfx_v9.o \
    179 	 amdgpu_amdkfd_arcturus.o \
    180 	 amdgpu_amdkfd_gfx_v10.o
    181 
    182 ifneq ($(CONFIG_DRM_AMDGPU_CIK),)
    183 amdgpu-y += amdgpu_amdkfd_gfx_v7.o
    184 endif
    185 
    186 endif
    187 
    188 # add cgs
    189 amdgpu-y += amdgpu_cgs.o
    190 
    191 # GPU scheduler
    192 amdgpu-y += amdgpu_job.o
    193 
    194 # ACP componet
    195 ifneq ($(CONFIG_DRM_AMD_ACP),)
    196 amdgpu-y += amdgpu_acp.o
    197 
    198 AMDACPPATH := ../acp
    199 include $(FULL_AMD_PATH)/acp/Makefile
    200 
    201 amdgpu-y += $(AMD_ACP_FILES)
    202 endif
    203 
    204 amdgpu-$(CONFIG_COMPAT) += amdgpu_ioc32.o
    205 amdgpu-$(CONFIG_VGA_SWITCHEROO) += amdgpu_atpx_handler.o
    206 amdgpu-$(CONFIG_ACPI) += amdgpu_acpi.o
    207 amdgpu-$(CONFIG_HMM_MIRROR) += amdgpu_mn.o
    208 
    209 include $(FULL_AMD_PATH)/powerplay/Makefile
    210 
    211 amdgpu-y += $(AMD_POWERPLAY_FILES)
    212 
    213 ifneq ($(CONFIG_DRM_AMD_DC),)
    214 
    215 RELATIVE_AMD_DISPLAY_PATH = ../$(DISPLAY_FOLDER_NAME)
    216 include $(FULL_AMD_DISPLAY_PATH)/Makefile
    217 
    218 amdgpu-y += $(AMD_DISPLAY_FILES)
    219 
    220 endif
    221 
    222 obj-$(CONFIG_DRM_AMDGPU)+= amdgpu.o
    223