Subversion Repositories Kolibri OS

Rev

Rev 5271 | Rev 6938 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
1125 serge 1
CC = gcc
1764 clevermous 2
LD = ld
3
AS = as
3031 serge 4
FASM = fasm.exe
1125 serge 5
 
6104 serge 6
DEFINES	 = -D__KERNEL__ -DCONFIG_X86_32 -DCONFIG_X86_CMPXCHG64 -DCONFIG_TINY_RCU
7
DEFINES += -DCONFIG_X86_L1_CACHE_SHIFT=6
8
DEFINES += -DCONFIG_DRM_FBDEV_EMULATION -DCONFIG_DMI -DCONFIG_ARCH_HAS_CACHE_LINE_SIZE
1404 serge 9
 
1408 serge 10
DRV_TOPDIR   = $(CURDIR)/../../..
1125 serge 11
DRM_TOPDIR   = $(CURDIR)/..
12
 
1408 serge 13
DRV_INCLUDES = $(DRV_TOPDIR)/include
1404 serge 14
 
5271 serge 15
INCLUDES =	-I$(DRV_INCLUDES)	\
16
		-I$(DRV_INCLUDES)/asm 	\
17
		-I$(DRV_INCLUDES)/uapi	\
18
		-I$(DRV_INCLUDES)/drm -I./ -I$(DRV_INCLUDES)
1408 serge 19
 
5271 serge 20
CFLAGS= -c -O2 $(INCLUDES) $(DEFINES) -march=i686 -fno-ident -fomit-frame-pointer -fno-builtin-printf
21
CFLAGS+= -mno-stack-arg-probe -mpreferred-stack-boundary=2 -mincoming-stack-boundary=2 -mno-ms-bitfields
1404 serge 22
 
1408 serge 23
LIBPATH:= $(DRV_TOPDIR)/ddk
1125 serge 24
 
3764 Serge 25
LIBS:=    -lddk -lcore -lgcc
1125 serge 26
 
1404 serge 27
LDFLAGS = -nostdlib -shared -s -Map atikms.map --image-base 0\
28
	  --file-alignment 512 --section-alignment 4096
29
 
30
 
1125 serge 31
NAME:=	  atikms
32
 
1408 serge 33
HFILES:=     		$(DRV_INCLUDES)/linux/types.h		\
34
			$(DRV_INCLUDES)/linux/list.h		\
35
			$(DRV_INCLUDES)/linux/pci.h		\
36
			$(DRV_INCLUDES)/drm/drmP.h		\
37
			$(DRV_INCLUDES)/drm/drm_edid.h		\
38
			$(DRV_INCLUDES)/drm/drm_crtc.h		\
39
			$(DRV_INCLUDES)/drm/drm_mm.h		\
1126 serge 40
			atom.h					\
41
			radeon.h				\
1125 serge 42
			radeon_asic.h
43
 
1126 serge 44
NAME_SRC=							\
5078 serge 45
			main.c					\
1126 serge 46
			pci.c					\
5078 serge 47
			../ttm/ttm_bo.c				\
48
			../ttm/ttm_bo_manager.c			\
49
			../ttm/ttm_bo_util.c			\
50
			../ttm/ttm_execbuf_util.c		\
51
			../ttm/ttm_memory.c			\
52
			../ttm/ttm_page_alloc.c			\
53
			../ttm/ttm_tt.c				\
6104 serge 54
			$(DRM_TOPDIR)/drm_atomic.c		\
55
			$(DRM_TOPDIR)/drm_atomic_helper.c	\
56
			$(DRM_TOPDIR)/drm_bridge.c		\
3764 Serge 57
			$(DRM_TOPDIR)/drm_cache.c		\
1125 serge 58
			$(DRM_TOPDIR)/drm_crtc.c		\
59
			$(DRM_TOPDIR)/drm_crtc_helper.c		\
3192 Serge 60
			$(DRM_TOPDIR)/drm_dp_helper.c		\
6104 serge 61
			$(DRM_TOPDIR)/drm_dp_mst_topology.c	\
5078 serge 62
			$(DRM_TOPDIR)/drm_drv.c			\
2997 Serge 63
			$(DRM_TOPDIR)/drm_edid.c		\
1179 serge 64
			$(DRM_TOPDIR)/drm_fb_helper.c		\
3764 Serge 65
			$(DRM_TOPDIR)/drm_gem.c			\
66
			$(DRM_TOPDIR)/drm_global.c		\
2997 Serge 67
			$(DRM_TOPDIR)/drm_irq.c			\
68
			$(DRM_TOPDIR)/drm_mm.c			\
69
			$(DRM_TOPDIR)/drm_modes.c		\
5078 serge 70
			$(DRM_TOPDIR)/drm_modeset_lock.c	\
2997 Serge 71
			$(DRM_TOPDIR)/drm_pci.c			\
5078 serge 72
			$(DRM_TOPDIR)/drm_plane_helper.c	\
73
			$(DRM_TOPDIR)/drm_probe_helper.c	\
74
			$(DRM_TOPDIR)/drm_rect.c		\
2997 Serge 75
			$(DRM_TOPDIR)/drm_stub.c		\
5078 serge 76
			$(DRM_TOPDIR)/drm_vma_manager.c		\
1125 serge 77
			$(DRM_TOPDIR)/i2c/i2c-core.c		\
78
			$(DRM_TOPDIR)/i2c/i2c-algo-bit.c	\
3120 serge 79
			hmm.c					\
1126 serge 80
			radeon_device.c				\
1125 serge 81
			atom.c					\
3764 Serge 82
			atombios_crtc.c				\
83
			atombios_dp.c				\
84
			atombios_encoders.c			\
85
			atombios_i2c.c				\
5078 serge 86
			btc_dpm.c				\
87
			cayman_blit_shaders.c			\
88
			ci_dpm.c				\
89
			ci_smc.c				\
90
			cik.c					\
91
			cik_blit_shaders.c			\
92
			cik_sdma.c				\
93
			cypress_dpm.c				\
94
			dce3_1_afmt.c				\
95
			dce6_afmt.c				\
96
			evergreen.c				\
97
			evergreen_blit_shaders.c		\
98
			evergreen_cs.c				\
99
			evergreen_dma.c				\
100
			evergreen_hdmi.c			\
101
			kv_dpm.c				\
102
			kv_smc.c				\
103
			ni.c					\
104
			ni_dma.c				\
105
			ni_dpm.c				\
1221 serge 106
			radeon_agp.c				\
1963 serge 107
			radeon_asic.c				\
2004 serge 108
			radeon_atombios.c			\
6104 serge 109
			radeon_audio.c				\
2005 serge 110
			radeon_benchmark.c			\
2004 serge 111
			radeon_bios.c				\
112
			radeon_combios.c			\
113
			radeon_connectors.c			\
5078 serge 114
			radeon_cs.c				\
115
			radeon_clocks.c				\
3764 Serge 116
			radeon_display.c			\
6104 serge 117
			radeon_dp_auxch.c			\
118
			radeon_dp_mst.c				\
1125 serge 119
			radeon_encoders.c			\
2004 serge 120
			radeon_fence.c				\
3764 Serge 121
			radeon_fb.c				\
122
			radeon_gart.c				\
2004 serge 123
			radeon_gem.c				\
124
			radeon_i2c.c				\
5078 serge 125
			radeon_ib.c				\
2004 serge 126
			radeon_irq_kms.c			\
6104 serge 127
			radeon_kms.c				\
1125 serge 128
			radeon_legacy_crtc.c			\
129
			radeon_legacy_encoders.c		\
1179 serge 130
			radeon_legacy_tv.c			\
5078 serge 131
			radeon_object.c				\
3764 Serge 132
			radeon_pm.c				\
1126 serge 133
			radeon_ring.c				\
2997 Serge 134
			radeon_sa.c				\
135
			radeon_semaphore.c			\
5271 serge 136
			radeon_sync.c				\
5078 serge 137
			radeon_test.c				\
138
			radeon_ttm.c				\
139
			radeon_ucode.c				\
140
			radeon_uvd.c				\
141
			radeon_vce.c				\
142
			radeon_vm.c				\
143
			rdisplay_kms.c				\
1126 serge 144
			r100.c					\
1179 serge 145
			r200.c					\
1126 serge 146
			r300.c					\
1129 serge 147
			r420.c					\
1126 serge 148
			rv515.c					\
5078 serge 149
			rv730_dpm.c				\
150
			rv740_dpm.c				\
1126 serge 151
			r520.c					\
1233 serge 152
			r600.c					\
2005 serge 153
			r600_blit_shaders.c			\
5078 serge 154
			r600_cs.c				\
155
			r600_dma.c				\
156
			r600_dpm.c				\
1404 serge 157
			r600_hdmi.c				\
1129 serge 158
			rs400.c					\
159
			rs600.c					\
160
			rs690.c					\
5078 serge 161
			rv6xx_dpm.c				\
162
			rs780_dpm.c				\
1233 serge 163
			rv770.c					\
5078 serge 164
			rv770_dma.c				\
165
			rv770_dpm.c				\
166
			rv770_smc.c				\
1246 serge 167
			rdisplay.c				\
1313 serge 168
			cmdline.c				\
2997 Serge 169
			si.c					\
170
			si_blit_shaders.c			\
5078 serge 171
			si_dma.c				\
172
			si_dpm.c				\
173
			si_smc.c				\
174
			sumo_dpm.c				\
175
			sumo_smc.c				\
176
			trinity_dpm.c				\
177
			trinity_smc.c				\
3764 Serge 178
			utils.c					\
5078 serge 179
			uvd_v1_0.c				\
180
			uvd_v2_2.c				\
181
			uvd_v3_1.c				\
182
			uvd_v4_2.c				\
183
			vce_v1_0.c				\
184
			vce_v2_0.c				\
1412 serge 185
			fwblob.asm
1125 serge 186
 
1413 serge 187
FW_BINS=							\
188
			firmware/R100_cp.bin			\
189
			firmware/R200_cp.bin			\
190
			firmware/R300_cp.bin			\
191
			firmware/R420_cp.bin			\
192
			firmware/R520_cp.bin			\
193
								\
194
			firmware/RS690_cp.bin			\
195
			firmware/RS600_cp.bin			\
196
			firmware/RS780_me.bin			\
197
			firmware/RS780_pfp.bin			\
198
								\
199
			firmware/RV610_me.bin			\
200
			firmware/RV620_me.bin			\
201
			firmware/RV630_me.bin			\
202
			firmware/RV635_me.bin			\
203
			firmware/RV670_me.bin			\
204
			firmware/RV710_me.bin			\
205
			firmware/RV730_me.bin			\
206
			firmware/RV770_me.bin			\
207
								\
208
			firmware/RV610_pfp.bin			\
209
			firmware/RV620_pfp.bin			\
210
			firmware/RV630_pfp.bin			\
211
			firmware/RV635_pfp.bin			\
212
			firmware/RV670_pfp.bin			\
213
			firmware/RV710_pfp.bin			\
214
			firmware/RV730_pfp.bin			\
215
			firmware/RV770_pfp.bin			\
216
								\
217
			firmware/R600_rlc.bin			\
218
			firmware/R700_rlc.bin
1125 serge 219
 
1412 serge 220
 
1125 serge 221
SRC_DEP:=
222
 
223
 
1313 serge 224
NAME_OBJS =  $(patsubst %.S, %.o, $(patsubst %.asm, %.o,\
1179 serge 225
            $(patsubst %.c, %.o, $(NAME_SRC))))
1125 serge 226
 
1986 serge 227
 
228
 
1125 serge 229
all: $(NAME).dll
230
 
1764 clevermous 231
$(NAME).dll: $(NAME_OBJS) $(FW_BINS) $(SRC_DEP) $(HFILES) $(LIBPATH)/libcore.a $(LIBPATH)/libddk.a atikms.lds Makefile
232
	$(LD) -L$(LIBPATH) $(LDFLAGS) -T atikms.lds -o $@ $(NAME_OBJS) $(LIBS)
1125 serge 233
 
234
 
1179 serge 235
%.o : %.c $(HFILES) Makefile
1404 serge 236
	$(CC) $(CFLAGS) $(DEFINES) -o $@ $<
1313 serge 237
 
238
%.o : %.S $(HFILES) Makefile
1764 clevermous 239
	$(AS) -o $@ $<
1412 serge 240
 
241
fwblob.o:  fwblob.asm $(FW_BINS) Makefile
242
	$(FASM) $< $@
243
 
1986 serge 244
 
1970 serge 245
clean:
246
	-rm -f */*.o
247