74e4a4b9fa999e6678998f37699f9389ae455dc7
[keystone-rtos/ibl.git] / src / hw / c64x / make / makefile
1 #**************************************************************************
2 #* FILE NAME: makefile
3 #*
4 #* DESCRIPTION: Makes the low level drivers for the hardware modules
5 #*
6 #**************************************************************************
8 ifndef IBL_ROOT
9         export IBL_ROOT=../../..
10 endif
12 ECODIR= $(IBL_ROOT)/hw
14 # If no target specified, set CSRC to all files (used for clean)
15 ifeq ($(TARGET),c6472)
16  CSRC= t64.c cpmacdrv.c pll.c psc.c emif31.c mdio.c gpio.c nandgpio.c i2c.c nandwrgpio.c
17 else
18  ifeq ($(TARGET),c6474)
19   CSRC= t64.c cpmacdrv.c pll.c psc.c emif31.c mdio.c gpio.c nandgpio.c i2c.c nandwrgpio.c sgmii.c
20  else
21   ifeq ($(TARGET),c6474l)
22    CSRC= t64.c cpmacdrv.c pll.c psc.c emif31.c mdio.c gpio.c nandgpio.c i2c.c nandwrgpio.c sgmii.c
23   else
24    ifeq ($(TARGET),c6457)
25     CSRC= t64.c cpmacdrv.c pll.c psc.c emif31.c mdio.c gpio.c nandgpio.c i2c.c nandwrgpio.c sgmii.c
26    else
27     ifeq ($(TARGET),c6455)
28      CSRC= t64.c cpmacdrv.c pll.c emif31.c mdio.c gpio.c nandgpio.c i2c.c nandwrgpio.c
29     else
30      CSRC= t64.c cpmacdrv.c pll.c psc.c emif31.c mdio.c gpio.c nandgpio.c i2c.c nandwrgpio.c sgmii.c
31     endif
32    endif
33   endif
34  endif
35 endif
37 CDEFS += -DIBL_I2C_CFG_EEPROM_BUS_ADDR=$(I2C_PARAM_BUS_ADDR)
39 .PHONY: hw
42 include $(IBL_ROOT)/make/$(ARCH)/makeeco.mk
45 C6X_C_DIR=   $(IBL_ROOT)
46 C6X_C_DIR+= ;$(IBL_ROOT)/arch/$(ARCH)
47 C6X_C_DIR+= ;$(ECODIR)
48 C6X_C_DIR+= ;$(STDINC)
49 C6X_C_DIR+= ;$(IBL_ROOT)/cfg/$(TARGET)
50 C6X_C_DIR+= ;$(IBL_ROOT)/hw/timer
51 C6X_C_DIR+= ;$(IBL_ROOT)/hw/macs/cpmac
52 C6X_C_DIR+= ;$(IBL_ROOT)/driver/eth
53 C6X_C_DIR+= ;$(IBL_ROOT)/device
54 C6X_C_DIR+= ;$(IBL_ROOT)/device/$(TARGET)
55 C6X_C_DIR+= ;$(IBL_ROOT)/hw/plls
56 C6X_C_DIR+= ;$(IBL_ROOT)/hw/pscs
57 C6X_C_DIR+= ;$(IBL_ROOT)/hw/mdio
58 C6X_C_DIR+= ;$(IBL_ROOT)/hw/gpio
59 C6X_C_DIR+= ;$(IBL_ROOT)/hw/nands
60 C6X_C_DIR+= ;$(IBL_ROOT)/hw/nands/gpio
61 C6X_C_DIR+= ;$(IBL_ROOT)/hw/i2c
62 C6X_C_DIR+= ;$(IBL_ROOT)/hw/sgmii
63 C6X_C_DIR+= ;$(IBL_ROOT)/ecc
64 export C6X_C_DIR
67 vpath % $(ECODIR)/timer/timer64
69 ifeq ($(TARGET),c6472)
70  vpath % $(ECODIR)/macs/cpmac
71  vpath % $(ECODIR)/plls/pllxx1p8
72  vpath % $(ECODIR)/pscs/psc2
73  vpath % $(ECODIR)/ddrs/emif31
74  vpath % $(ECODIR)/mdio
75  vpath % $(ECODIR)/gpio
76  vpath % $(ECODIR)/nands/gpio
77  vpath % $(ECODIR)/i2c
78 endif
80 ifeq ($(TARGET),c6474)
81  vpath % $(ECODIR)/macs/cpmac
82  vpath % $(ECODIR)/plls/pllxx1p8
83  vpath % $(ECODIR)/pscs/psc2
84  vpath % $(ECODIR)/ddrs/emif31
85  vpath % $(ECODIR)/mdio
86  vpath % $(ECODIR)/gpio
87  vpath % $(ECODIR)/nands/gpio
88  vpath % $(ECODIR)/i2c
89  vpath % $(ECODIR)/sgmii
90 endif
92 ifeq ($(TARGET),c6474l)
93  vpath % $(ECODIR)/macs/cpmac
94  vpath % $(ECODIR)/plls/pllxx1p8
95  vpath % $(ECODIR)/pscs/psc2
96  vpath % $(ECODIR)/ddrs/emif31
97  vpath % $(ECODIR)/mdio
98  vpath % $(ECODIR)/gpio
99  vpath % $(ECODIR)/nands/gpio
100  vpath % $(ECODIR)/i2c
101  vpath % $(ECODIR)/sgmii
102 endif
104 ifeq ($(TARGET),c6457)
105  vpath % $(ECODIR)/macs/cpmac
106  vpath % $(ECODIR)/plls/pllxx1p8
107  vpath % $(ECODIR)/pscs/psc2
108  vpath % $(ECODIR)/ddrs/emif31
109  vpath % $(ECODIR)/mdio
110  vpath % $(ECODIR)/gpio
111  vpath % $(ECODIR)/nands/gpio
112  vpath % $(ECODIR)/i2c
113  vpath % $(ECODIR)/sgmii
114 endif
116 ifeq ($(TARGET),c6455)
117  vpath % $(ECODIR)/macs/cpmac
118  vpath % $(ECODIR)/plls/pllxx1p8
119  vpath % $(ECODIR)/ddrs/emif31
120  vpath % $(ECODIR)/mdio
121  vpath % $(ECODIR)/gpio
122  vpath % $(ECODIR)/nands/gpio
123  vpath % $(ECODIR)/i2c
124 endif
127 hw: gen_cdefdep makefile $(OBJS)
129 $(OBJS): cdefdep
132 gen_cdefdep:
133         @echo Checking command line dependencies
134         @echo $(ENDIAN) $(TARGET) $(ARCH) $(CDEFS) $(DEBUG) > cdefdep.tmp
135         @sh -c 'if diff -q cdefdep.tmp cdefdep ; then echo same ; else $(CP) cdefdep.tmp cdefdep ; fi '