]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - processor-sdk/pdk.git/blob - packages/ti/board/diag/makefile
0a7978ff9444409d0c3c091c9d11dea223c72a4c
[processor-sdk/pdk.git] / packages / ti / board / diag / makefile
1 # Copyright (C) 2015-2019 Texas Instruments Incorporated - http://www.ti.com/
2 #
3 #
4 #  Redistribution and use in source and binary forms, with or without
5 #  modification, are permitted provided that the following conditions
6 #  are met:
7 #
8 #    Redistributions of source code must retain the above copyright
9 #    notice, this list of conditions and the following disclaimer.
10 #
11 #    Redistributions in binary form must reproduce the above copyright
12 #    notice, this list of conditions and the following disclaimer in the
13 #    documentation and/or other materials provided with the
14 #    distribution.
15 #
16 #    Neither the name of Texas Instruments Incorporated nor the names of
17 #    its contributors may be used to endorse or promote products derived
18 #    from this software without specific prior written permission.
19 #
20 #  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21 #  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22 #  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
23 #  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
24 #  OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
25 #  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
26 #  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
27 #  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
28 #  THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
29 #  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30 #  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32 # ROOT Directory
33 ifndef PDK_INSTALL_PATH
34 export ROOTDIR := ../..
35 else
36 export ROOTDIR = $(PDK_INSTALL_PATH)
37 endif
39 # PDK Board Library
40 ifndef PDK_DIAG_DIR
41 export PDK_DIAG_DIR = $(ROOTDIR)/ti/board
42 endif
44 ifeq ($(RULES_MAKE), )
45 include $(PDK_INSTALL_PATH)/ti/build/Rules.make
46 else
47 include $(RULES_MAKE)
48 endif
50 # Common Macros used in make
51 ifndef RM
52 export RM = rm -f
53 endif
55 ifndef CP
56 export CP = cp -p
57 endif
59 export MKDIR = mkdir -p
61 ifndef RMDIR
62 export RMDIR = rm -rf
63 endif
65 ifndef SED
66 export SED = sed
67 endif
69 ifndef MAKE
70 export MAKE = make
71 endif
73 ifeq ($(OS),Windows_NT)
74 export SDSCRIPT=create_sd.bat
75 else
76 export SDSCRIPT=./create_sd.sh
77 endif
79 ifeq ($(OS),Windows_NT)
80 export SPISCRIPT=create_spi.bat
81 else
82 export SPISCRIPT=./create_spi.sh
83 endif
85 ALL_BOARDS ?= idkAM571x idkAM572x idkAM574x evmAM572x evmK2G iceK2G evmAM335x evmAM437x idkAM437x skAM437x bbbAM335x icev2AM335x skAM335x evmOMAPL137 iceAMIC110 am65xx_evm am65xx_idk j721e_evm
88 idkAM571x_DIAG = dcan eeprom emmc framework framework_loader gmac haptics icss_emac lcd_touchscreen led led_industrial mcspi mem mmcsd pmic qspi timer uart
89 idkAM572x_DIAG = dcan eeprom emmc framework framework_loader gmac haptics icss_emac lcd_touchscreen led led_industrial mcspi mem mmcsd pmic qspi uart
90 evmAM571x_DIAG = eeprom framework framework_loader led mem pmic temperature uart
91 evmAM572x_DIAG = eeprom emmc framework framework_loader gmac led mem mmcsd pmic pwm temperature timer uart
92 idkAM574x_DIAG = dcan eeprom emmc framework framework_loader gmac haptics icss_emac lcd_touchscreen led led_industrial mcspi mem mmcsd pmic qspi uart
93 evmK2G_DIAG = dcan eeprom emmc framework hdmi lcd led mcasp mem nand norflash pwm qspi temperature uart uart2usb
94 iceK2G_DIAG = clock_generator current_monitor eeprom emac framework icss_emac led led_industrial mem oled_display qspi rotary_switch uart
95 am65xx_evm_DIAG = boot_eeprom boost_gpio boot_switch button current_monitor eeprom emac emmc ext_rtc framework icssg_emac lcd led led_industrial mcasp mem mmcsd norflash ospi pcie temperature uart usb_device usb_host
96 am65xx_idk_DIAG = boot_eeprom boot_switch button current_monitor eeprom emac emmc ext_rtc framework icssg_emac icssg_led led led_industrial mcan mem mmcsd norflash ospi pcie rotary_switch rs485_uart temperature uart usb_device usb_host
97 evmAM437x_DIAG = buzzer framework framework_loader haptics led mem uart mmcsd accelerometer temperature light_sensor eeprom rtc pmic adc button timer
98 evmAM335x_DIAG = framework framework_loader mem uart mmcsd buzzer accelerometer temperature light_sensor eeprom rtc pmic pwm adc timer
99 idkAM437x_DIAG = framework framework_loader led led_industrial qspi mem mmcsd uart eeprom mcspi pwm rtc
100 skAM437x_DIAG = framework framework_loader eeprom led uart mmcsd mem accelerometer rtc pmic adc button
101 bbbAM335x_DIAG = framework framework_loader eeprom uart mmcsd mem led rtc pmic
102 icev2AM335x_DIAG = framework framework_loader eeprom uart mmcsd mem led rtc pmic
103 skAM335x_DIAG = framework framework_loader eeprom uart mmcsd mem led accelerometer rtc pmic adc button
104 evmOMAPL137_DIAG = mcasp mcasp_audiodc
105 iceAMIC110_DIAG = framework framework_loader eeprom uart led mem mcspi ddrless_app
106 j721e_evm_DIAG = build
108 BUILD_DIRS = $(foreach a,$($(btests)),$(a)_build)
109 CLEAN_TARGETS = $(foreach a,$(ALL_BOARDS),$(a)_clean)
110 CLEAN_DIRS = $(foreach a,$($(ctests)),$(a)_clean)
111 ALL_SD = $(foreach a,$(ALL_BOARDS),$(a)_sd)
112 ALL_SPI = $(foreach a,$(ALL_BOARDS),$(a)_spi)
114 .NOTPARALLEL: 
115 .PHONY: $(ALL_BOARDS) $(BUILD_DIRS) $(CLEAN_TARGETS) $(CLEAN_DIRS) $(ALL_SD) $(ALL_SPI)
117 all: $(ALL_BOARDS)
119 $(ALL_BOARDS):
120         $(MAKE) buildtarget bboard=$@ btests=$@_DIAG
121  
122 buildtarget: $(BUILD_DIRS)
124 $(BUILD_DIRS):
125 ifeq ($(bboard),evmOMAPL137)
126         $(MAKE) -C $(subst _build,,$@) BOARD=$(bboard) TARGET=c674x
127         $(MAKE) -C $(subst _build,,$@) BOARD=$(bboard) TARGET=armv5
128 else ifeq ($(bboard),$(filter $(bboard), am65xx_evm am65xx_idk))
129         $(MAKE) -C $(subst _build,,$@) BOARD=$(bboard) TARGET=armv8 BOOTMODE=$(bboot) TESTMODE=STRESS_TEST
130         $(MAKE) -C $(subst _build,,$@) BOARD=$(bboard) TARGET=armv8 BOOTMODE=$(bboot) TESTMODE=FUNCTIONAL_TEST
131         $(MAKE) -C $(subst _build,,$@) BOARD=$(bboard) TARGET=armv8 BOOTMODE=$(bboot) TESTMODE=COMPLIANCE_TEST
132         $(MAKE) -C $(subst _build,,$@) BOARD=$(bboard) TARGET=armv7 BOOTMODE=$(bboot) TESTMODE=STRESS_TEST
133         $(MAKE) -C $(subst _build,,$@) BOARD=$(bboard) TARGET=armv7 BOOTMODE=$(bboot) TESTMODE=FUNCTIONAL_TEST
134         $(MAKE) -C $(subst _build,,$@) BOARD=$(bboard) TARGET=armv7 BOOTMODE=$(bboot) TESTMODE=COMPLIANCE_TEST
135 else ifeq ($(bboard),$(filter $(bboard), j721e_evm))
136         $(MAKE) -C $(subst _build,,$@) BOARD=$(bboard) CORE=mpu1_0 BUILD_COMP=examples
137         $(MAKE) -C $(subst _build,,$@) BOARD=$(bboard) CORE=mcu1_0 BUILD_COMP=examples
138 else
139         $(MAKE) -C $(subst _build,,$@) BOARD=$(bboard) TARGET=armv7 BOOTMODE=$(bboot)
140 endif
142 $(ALL_SD):
143         $(MAKE) sdtarget sboard=$(subst _sd,,$@) bboot=SD
145 sdtarget: $(sboard)
146 ifeq ($(sboard),$(filter $(sboard), am65xx_evm am65xx_idk))
147         $(SDSCRIPT) $(sboard) armv8 0
148         $(SDSCRIPT) $(sboard) armv7 4
149 else ifeq ($(sboard),$(filter $(sboard), j721e_evm))
150 # Nothing to be done for J7. Will be taken care by diag component make
151 else
152         $(SDSCRIPT) $(sboard) armv7 0
153 endif
155 $(ALL_SPI):
156         $(MAKE) spitarget sboard=$(subst _spi,,$@) bboot=SPI
158 spitarget: $(sboard)
159         $(SPISCRIPT) $(sboard)
161 clean: $(CLEAN_TARGETS)
163 $(CLEAN_TARGETS):
164         $(MAKE) cleantarget cboard=$(subst _clean,,$@) ctests=$(subst _clean,_DIAG,$@)
166 cleantarget: $(CLEAN_DIRS)
168 $(CLEAN_DIRS):
169 ifeq ($(cboard),evmOMAPL137)
170         -$(MAKE) -C $(subst _clean,,$@) BOARD=$(cboard) TARGET=armv5 clean
171         -$(MAKE) -C $(subst _clean,,$@) BOARD=$(cboard) TARGET=c674x clean
172 else ifeq ($(cboard),am65xx_evm)
173         -$(MAKE) -C $(subst _clean,,$@) BOARD=$(cboard) TARGET=armv8 clean
174 else ifeq ($(cboard),am65xx_idk)
175         -$(MAKE) -C $(subst _clean,,$@) BOARD=$(cboard) TARGET=armv8 clean
176 else ifeq ($(cboard),j721e_evm)
177         -$(MAKE) -C $(subst _clean,,$@) CORE=mpu1_0 BOARD=$(cboard) BUILD_COMP=examples_clean
178         -$(MAKE) -C $(subst _clean,,$@) CORE=mcu1_0 BOARD=$(cboard) BUILD_COMP=examples_clean
179 else
180         -$(MAKE) -C $(subst _clean,,$@) BOARD=$(cboard) TARGET=armv7 clean
181 endif