1 #*
2 #*
3 #* Copyright (C) 2010 Texas Instruments Incorporated - http://www.ti.com/
4 #*
5 #*
6 #* Redistribution and use in source and binary forms, with or without
7 #* modification, are permitted provided that the following conditions
8 #* are met:
9 #*
10 #* Redistributions of source code must retain the above copyright
11 #* notice, this list of conditions and the following disclaimer.
12 #*
13 #* Redistributions in binary form must reproduce the above copyright
14 #* notice, this list of conditions and the following disclaimer in the
15 #* documentation and/or other materials provided with the
16 #* distribution.
17 #*
18 #* Neither the name of Texas Instruments Incorporated nor the names of
19 #* its contributors may be used to endorse or promote products derived
20 #* from this software without specific prior written permission.
21 #*
22 #* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
23 #* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
24 #* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
25 #* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
26 #* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
27 #* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
28 #* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
29 #* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
30 #* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
31 #* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
32 #* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
33 #*
36 #**************************************************************************
37 #* FILE NAME: makefile
38 #*
39 #* DESCRIPTION: Makes the low level drivers for the hardware modules
40 #*
41 #**************************************************************************
43 ifndef IBL_ROOT
44 export IBL_ROOT=../../..
45 endif
47 ECODIR= $(IBL_ROOT)/hw
49 # If no target specified, set CSRC to all files (used for clean)
50 ifeq ($(TARGET),c6472)
51 CSRC= t64.c cpmacdrv.c pll.c psc.c emif31.c mdio.c gpio.c nandgpio.c i2c.c null_uart.c
52 else
53 ifeq ($(TARGET),c6474)
54 CSRC= t64.c cpmacdrv.c pll.c psc.c emif31.c mdio.c gpio.c nandgpio.c i2c.c sgmii.c null_uart.c
55 else
56 ifeq ($(TARGET),c6474l)
57 CSRC= t64.c cpmacdrv.c pll.c psc.c emif31.c mdio.c gpio.c nandgpio.c i2c.c sgmii.c null_uart.c
58 else
59 ifeq ($(TARGET),c6457)
60 CSRC= t64.c cpmacdrv.c pll.c psc.c emif31.c mdio.c gpio.c nandgpio.c i2c.c sgmiicur.c null_uart.c
61 else
62 ifeq ($(TARGET),c6455)
63 CSRC= t64.c cpmacdrv.c pll.c emif31.c mdio.c gpio.c nandgpio.c i2c.c null_uart.c
64 else
65 ifeq ($(TARGET),c66x)
66 CSRC= t64.c pll.c cfgpll.c cfgpll2.c mdio.c i2c.c psc.c cpsw.c qm.c cpdma.c pa.c sgmii.c serdes.c gmacsl.c emif4.c gpio.c
67 CSRC+= nandemif25.c nandgpio.c spi.c nandspi.c noremif25.c norspi.c emif25.c spiutil.c c66x_uart.c
68 else
69 ifeq ($(TARGET),c665x)
70 CSRC= t64.c pll.c cfgpll.c cfgpll2.c mdio.c i2c.c psc.c mdio.c serdes.c sgmii.c emif4.c gpio.c cpmacdrv.c
71 CSRC+= nandemif25.c nandgpio.c spi.c nandspi.c noremif25.c norspi.c emif25.c spiutil.c c66x_uart.c
72 else
73 ifeq ($(TARGET),c66xk2x)
74 CSRC= t64.c pll.c cfgpll.c cfgpll2.c mdio.c i2c.c psc.c cpsw.c qm.c cpdma.c pa.c sgmii.c serdes.c gmacsl.c emif4.c gpio.c
75 CSRC+= nandemif25.c nandgpio.c spi.c nandspi.c noremif25.c norspi.c emif25.c spiutil.c c66x_uart.c
76 else
77 CSRC= t64.c cpmacdrv.c pll.c psc.c emif31.c mdio.c gpio.c nandgpio.c i2c.c sgmii.c cfgpll.c cfgpll2.c
78 CSRC+= qm.c cpdma.c pa.c serdes.c gmacsl.c emif4.c nandemif25.c spi.c nandspi.c noremif25.c norspi.c emif25.c spiutil.c
79 endif
80 endif
81 endif
82 endif
83 endif
84 endif
85 endif
86 endif
89 .PHONY: hw
92 include $(IBL_ROOT)/make/$(ARCH)/makeeco.mk
95 C6X_C_DIR= $(IBL_ROOT)
96 C6X_C_DIR+= ;$(IBL_ROOT)/arch/$(ARCH)
97 C6X_C_DIR+= ;$(ECODIR)
98 C6X_C_DIR+= ;$(STDINC)
99 C6X_C_DIR+= ;$(IBL_ROOT)/cfg/$(TARGET)
100 C6X_C_DIR+= ;$(IBL_ROOT)/hw/timer
101 C6X_C_DIR+= ;$(IBL_ROOT)/hw/macs/cpmac
102 C6X_C_DIR+= ;$(IBL_ROOT)/hw/macs
103 C6X_C_DIR+= ;$(IBL_ROOT)/hw/macs/cpmacsl
104 C6X_C_DIR+= ;$(IBL_ROOT)/driver/eth
105 C6X_C_DIR+= ;$(IBL_ROOT)/device
106 C6X_C_DIR+= ;$(IBL_ROOT)/device/$(TARGET)
107 C6X_C_DIR+= ;$(IBL_ROOT)/hw/plls
108 C6X_C_DIR+= ;$(IBL_ROOT)/hw/pscs
109 C6X_C_DIR+= ;$(IBL_ROOT)/hw/mdio
110 C6X_C_DIR+= ;$(IBL_ROOT)/hw/gpio
111 C6X_C_DIR+= ;$(IBL_ROOT)/hw/nands
112 C6X_C_DIR+= ;$(IBL_ROOT)/hw/nands/gpio
113 C6X_C_DIR+= ;$(IBL_ROOT)/hw/nands/emif25
114 C6X_C_DIR+= ;$(IBL_ROOT)/hw/nands/spi
115 C6X_C_DIR+= ;$(IBL_ROOT)/hw/i2c
116 C6X_C_DIR+= ;$(IBL_ROOT)/hw/sgmii
117 C6X_C_DIR+= ;$(IBL_ROOT)/hw/cpsw
118 C6X_C_DIR+= ;$(IBL_ROOT)/hw/cpdma
119 C6X_C_DIR+= ;$(IBL_ROOT)/hw/pa
120 C6X_C_DIR+= ;$(IBL_ROOT)/hw/spi
121 C6X_C_DIR+= ;$(IBL_ROOT)/hw/nors
122 C6X_C_DIR+= ;$(IBL_ROOT)/hw/emif25
123 C6X_C_DIR+= ;$(IBL_ROOT)/hw/uart
124 C6X_C_DIR+= ;$(IBL_ROOT)/ecc
125 export C6X_C_DIR
128 vpath % $(ECODIR)/timer/timer64
130 ifeq ($(TARGET),c6472)
131 vpath % $(ECODIR)/macs/cpmac
132 vpath % $(ECODIR)/plls/pllxx1p8
133 vpath % $(ECODIR)/pscs/psc2
134 vpath % $(ECODIR)/ddrs/emif31
135 vpath % $(ECODIR)/mdio
136 vpath % $(ECODIR)/gpio
137 vpath % $(ECODIR)/nands/gpio
138 vpath % $(ECODIR)/i2c
139 vpath % $(ECODIR)/uart/null_uart
140 endif
142 ifeq ($(TARGET),c6474)
143 vpath % $(ECODIR)/macs/cpmac
144 vpath % $(ECODIR)/plls/pllxx1p8
145 vpath % $(ECODIR)/pscs/psc2
146 vpath % $(ECODIR)/ddrs/emif31
147 vpath % $(ECODIR)/mdio
148 vpath % $(ECODIR)/gpio
149 vpath % $(ECODIR)/nands/gpio
150 vpath % $(ECODIR)/i2c
151 vpath % $(ECODIR)/sgmii
152 vpath % $(ECODIR)/uart/null_uart
153 endif
155 ifeq ($(TARGET),c6474l)
156 vpath % $(ECODIR)/macs/cpmac
157 vpath % $(ECODIR)/plls/pllxx1p8
158 vpath % $(ECODIR)/pscs/psc2
159 vpath % $(ECODIR)/ddrs/emif31
160 vpath % $(ECODIR)/mdio
161 vpath % $(ECODIR)/gpio
162 vpath % $(ECODIR)/nands/gpio
163 vpath % $(ECODIR)/i2c
164 vpath % $(ECODIR)/sgmii
165 vpath % $(ECODIR)/uart/null_uart
166 endif
168 ifeq ($(TARGET),c6457)
169 vpath % $(ECODIR)/macs/cpmac
170 vpath % $(ECODIR)/plls/pllcur
171 vpath % $(ECODIR)/pscs/psccur
172 vpath % $(ECODIR)/ddrs/emif31
173 vpath % $(ECODIR)/mdio
174 vpath % $(ECODIR)/gpio
175 vpath % $(ECODIR)/nands/gpio
176 vpath % $(ECODIR)/i2c
177 vpath % $(ECODIR)/sgmii
178 vpath % $(ECODIR)/uart/null_uart
179 endif
181 ifeq ($(TARGET),c6455)
182 vpath % $(ECODIR)/macs/cpmac
183 vpath % $(ECODIR)/plls/pllxx1p8
184 vpath % $(ECODIR)/ddrs/emif31
185 vpath % $(ECODIR)/mdio
186 vpath % $(ECODIR)/gpio
187 vpath % $(ECODIR)/nands/gpio
188 vpath % $(ECODIR)/i2c
189 vpath % $(ECODIR)/uart/null_uart
190 endif
192 ifeq ($(TARGET),c66x)
193 vpath % $(ECODIR)/plls/pll014phi
194 vpath % $(ECODIR)/mdio
195 vpath % $(ECODIR)/i2c
196 vpath % $(ECODIR)/pscs/psc2
197 vpath % $(ECODIR)/cpsw
198 vpath % $(ECODIR)/qm
199 vpath % $(ECODIR)/cpdma
200 vpath % $(ECODIR)/pa
201 vpath % $(ECODIR)/sgmii
202 vpath % $(ECODIR)/serdes
203 vpath % $(ECODIR)/gpio
204 vpath % $(ECODIR)/macs/cpmacsl
205 vpath % $(ECODIR)/ddrs/emif4
206 vpath % $(ECODIR)/nands/emif25
207 vpath % $(ECODIR)/nands/gpio
208 vpath % $(ECODIR)/nands/spi
209 vpath % $(ECODIR)/spi
210 vpath % $(ECODIR)/nors/emif25
211 vpath % $(ECODIR)/nors/spi
212 vpath % $(ECODIR)/emif25
213 vpath % $(ECODIR)/uart/c66x_uart
214 endif
216 ifeq ($(TARGET),c665x)
217 vpath % $(ECODIR)/plls/pll014phi
218 vpath % $(ECODIR)/mdio
219 vpath % $(ECODIR)/i2c
220 vpath % $(ECODIR)/pscs/psc2
221 vpath % $(ECODIR)/sgmii
222 vpath % $(ECODIR)/serdes
223 vpath % $(ECODIR)/gpio
224 vpath % $(ECODIR)/macs/cpmac
225 vpath % $(ECODIR)/ddrs/emif4
226 vpath % $(ECODIR)/nands/emif25
227 vpath % $(ECODIR)/nands/gpio
228 vpath % $(ECODIR)/nands/spi
229 vpath % $(ECODIR)/spi
230 vpath % $(ECODIR)/nors/emif25
231 vpath % $(ECODIR)/nors/spi
232 vpath % $(ECODIR)/emif25
233 vpath % $(ECODIR)/uart/c66x_uart
234 endif
236 ifeq ($(TARGET),c66xk2x)
237 vpath % $(ECODIR)/plls/pll014phi
238 vpath % $(ECODIR)/mdio
239 vpath % $(ECODIR)/i2c
240 vpath % $(ECODIR)/pscs/psc2
241 vpath % $(ECODIR)/cpsw
242 vpath % $(ECODIR)/qm
243 vpath % $(ECODIR)/cpdma
244 vpath % $(ECODIR)/pa
245 vpath % $(ECODIR)/sgmii
246 vpath % $(ECODIR)/serdes
247 vpath % $(ECODIR)/gpio
248 vpath % $(ECODIR)/macs/cpmacsl
249 vpath % $(ECODIR)/ddrs/emif4
250 vpath % $(ECODIR)/nands/emif25
251 vpath % $(ECODIR)/nands/gpio
252 vpath % $(ECODIR)/nands/spi
253 vpath % $(ECODIR)/spi
254 vpath % $(ECODIR)/nors/emif25
255 vpath % $(ECODIR)/nors/spi
256 vpath % $(ECODIR)/emif25
257 vpath % $(ECODIR)/uart/c66x_uart
258 endif
260 hw: gen_cdefdep makefile $(OBJS)
262 $(OBJS): cdefdep
265 gen_cdefdep:
266 @echo Checking command line dependencies
267 @echo $(TARGET) $(ARCH) $(CDEFS) $(DEBUG) > cdefdep.tmp
268 @sh -c 'if diff -q cdefdep.tmp cdefdep ; then echo same ; else $(CP) cdefdep.tmp cdefdep ; fi '
270 cleant:
271 make -f makestg2 clean2 ARCH=c64x