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