1# SPDX-License-Identifier: MIT
2#
3# Makefile for the drm device driver.  This driver provides support for the
4# Direct Rendering Infrastructure (DRI) in XFree86 4.1.0 and higher.
5
6hostprogs := mkregtable
7targets := rn50_reg_safe.h r100_reg_safe.h r200_reg_safe.h rv515_reg_safe.h r300_reg_safe.h r420_reg_safe.h rs600_reg_safe.h r600_reg_safe.h evergreen_reg_safe.h cayman_reg_safe.h
8
9quiet_cmd_mkregtable = MKREG   $@
10      cmd_mkregtable = $(obj)/mkregtable $< > $@
11
12$(obj)/%_reg_safe.h: $(src)/reg_srcs/% $(obj)/mkregtable FORCE
13	$(call if_changed,mkregtable)
14
15$(obj)/r100.o: $(obj)/r100_reg_safe.h $(obj)/rn50_reg_safe.h
16
17$(obj)/r200.o: $(obj)/r200_reg_safe.h
18
19$(obj)/rv515.o: $(obj)/rv515_reg_safe.h
20
21$(obj)/r300.o: $(obj)/r300_reg_safe.h
22
23$(obj)/r420.o: $(obj)/r420_reg_safe.h
24
25$(obj)/rs600.o: $(obj)/rs600_reg_safe.h
26
27$(obj)/r600_cs.o: $(obj)/r600_reg_safe.h
28
29$(obj)/evergreen_cs.o: $(obj)/evergreen_reg_safe.h $(obj)/cayman_reg_safe.h
30
31radeon-y := radeon_drv.o
32
33# add KMS driver
34radeon-y += radeon_device.o radeon_asic.o radeon_kms.o \
35	radeon_atombios.o radeon_agp.o atombios_crtc.o radeon_combios.o \
36	atom.o radeon_fence.o radeon_ttm.o radeon_object.o radeon_gart.o \
37	radeon_legacy_crtc.o radeon_legacy_encoders.o radeon_connectors.o \
38	radeon_encoders.o radeon_display.o radeon_cursor.o radeon_i2c.o \
39	radeon_clocks.o radeon_gem.o radeon_ring.o radeon_irq_kms.o \
40	radeon_cs.o radeon_bios.o radeon_benchmark.o r100.o r300.o r420.o \
41	rs400.o rs600.o rs690.o rv515.o r520.o r600.o rv770.o radeon_test.o \
42	r200.o radeon_legacy_tv.o r600_cs.o \
43	radeon_pm.o atombios_dp.o r600_hdmi.o dce3_1_afmt.o \
44	evergreen.o evergreen_cs.o \
45	evergreen_hdmi.o radeon_trace_points.o ni.o \
46	atombios_encoders.o radeon_semaphore.o radeon_sa.o atombios_i2c.o si.o \
47	radeon_prime.o cik.o \
48	r600_dpm.o rs780_dpm.o rv6xx_dpm.o rv770_dpm.o rv730_dpm.o rv740_dpm.o \
49	rv770_smc.o cypress_dpm.o btc_dpm.o sumo_dpm.o sumo_smc.o trinity_dpm.o \
50	trinity_smc.o ni_dpm.o si_smc.o si_dpm.o kv_smc.o kv_dpm.o ci_smc.o \
51	ci_dpm.o dce6_afmt.o radeon_vm.o radeon_ucode.o radeon_ib.o \
52	radeon_sync.o radeon_audio.o radeon_dp_auxch.o
53
54radeon-$(CONFIG_MMU_NOTIFIER) += radeon_mn.o
55
56# add async DMA block
57radeon-y += \
58	r600_dma.o \
59	rv770_dma.o \
60	evergreen_dma.o \
61	ni_dma.o \
62	si_dma.o \
63	cik_sdma.o \
64
65# add UVD block
66radeon-y += \
67	radeon_uvd.o \
68	uvd_v1_0.o \
69	uvd_v2_2.o \
70	uvd_v3_1.o \
71	uvd_v4_2.o
72
73# add VCE block
74radeon-y += \
75	radeon_vce.o \
76	vce_v1_0.o \
77	vce_v2_0.o
78
79radeon-$(CONFIG_DRM_FBDEV_EMULATION) += radeon_fbdev.o
80radeon-$(CONFIG_VGA_SWITCHEROO) += radeon_atpx_handler.o
81radeon-$(CONFIG_ACPI) += radeon_acpi.o
82
83obj-$(CONFIG_DRM_RADEON)+= radeon.o
84