aboutsummaryrefslogtreecommitdiffstats
path: root/os/hal/ports/STM32/STM32F4xx
diff options
context:
space:
mode:
Diffstat (limited to 'os/hal/ports/STM32/STM32F4xx')
-rw-r--r--os/hal/ports/STM32/STM32F4xx/platform.mk129
1 files changed, 95 insertions, 34 deletions
diff --git a/os/hal/ports/STM32/STM32F4xx/platform.mk b/os/hal/ports/STM32/STM32F4xx/platform.mk
index 067a917d7..157210992 100644
--- a/os/hal/ports/STM32/STM32F4xx/platform.mk
+++ b/os/hal/ports/STM32/STM32F4xx/platform.mk
@@ -1,37 +1,98 @@
# List of all the STM32F2xx/STM32F4xx platform files.
-PLATFORMSRC = ${CHIBIOS}/os/hal/ports/common/ARMCMx/nvic.c \
- ${CHIBIOS}/os/hal/ports/STM32/STM32F4xx/stm32_dma.c \
- ${CHIBIOS}/os/hal/ports/STM32/STM32F4xx/hal_lld.c \
- ${CHIBIOS}/os/hal/ports/STM32/STM32F4xx/adc_lld.c \
- ${CHIBIOS}/os/hal/ports/STM32/STM32F4xx/ext_lld_isr.c \
- ${CHIBIOS}/os/hal/ports/STM32/LLD/can_lld.c \
- ${CHIBIOS}/os/hal/ports/STM32/LLD/ext_lld.c \
- ${CHIBIOS}/os/hal/ports/STM32/LLD/mac_lld.c \
- ${CHIBIOS}/os/hal/ports/STM32/LLD/sdc_lld.c \
- ${CHIBIOS}/os/hal/ports/STM32/LLD/DACv1/dac_lld.c \
- ${CHIBIOS}/os/hal/ports/STM32/LLD/GPIOv2/pal_lld.c \
- ${CHIBIOS}/os/hal/ports/STM32/LLD/I2Cv1/i2c_lld.c \
- ${CHIBIOS}/os/hal/ports/STM32/LLD/OTGv1/usb_lld.c \
- ${CHIBIOS}/os/hal/ports/STM32/LLD/RTCv2/rtc_lld.c \
- ${CHIBIOS}/os/hal/ports/STM32/LLD/SPIv1/i2s_lld.c \
- ${CHIBIOS}/os/hal/ports/STM32/LLD/SPIv1/spi_lld.c \
- ${CHIBIOS}/os/hal/ports/STM32/LLD/TIMv1/gpt_lld.c \
- ${CHIBIOS}/os/hal/ports/STM32/LLD/TIMv1/icu_lld.c \
- ${CHIBIOS}/os/hal/ports/STM32/LLD/TIMv1/pwm_lld.c \
- ${CHIBIOS}/os/hal/ports/STM32/LLD/TIMv1/st_lld.c \
- ${CHIBIOS}/os/hal/ports/STM32/LLD/USARTv1/serial_lld.c \
- ${CHIBIOS}/os/hal/ports/STM32/LLD/USARTv1/uart_lld.c
+ifeq ($(USE_SMART_BUILD),yes)
+HALCONF := $(strip $(shell cat halconf.h | egrep -e "define"))
+
+PLATFORMSRC := $(CHIBIOS)/os/hal/ports/common/ARMCMx/nvic.c \
+ $(CHIBIOS)/os/hal/ports/STM32/STM32F4xx/stm32_dma.c \
+ $(CHIBIOS)/os/hal/ports/STM32/STM32F4xx/hal_lld.c \
+ $(CHIBIOS)/os/hal/ports/STM32/LLD/TIMv1/st_lld.c
+ifneq ($(findstring HAL_USE_ADC TRUE,$(HALCONF)),)
+PLATFORMSRC += $(CHIBIOS)/os/hal/ports/STM32/STM32F4xx/adc_lld.c
+endif
+ifneq ($(findstring HAL_USE_EXT TRUE,$(HALCONF)),)
+PLATFORMSRC += $(CHIBIOS)/os/hal/ports/STM32/STM32F4xx/ext_lld_isr.c \
+ $(CHIBIOS)/os/hal/ports/STM32/LLD/ext_lld.c
+endif
+ifneq ($(findstring HAL_USE_CAN TRUE,$(HALCONF)),)
+PLATFORMSRC += $(CHIBIOS)/os/hal/ports/STM32/LLD/can_lld.c
+endif
+ifneq ($(findstring HAL_USE_MAC TRUE,$(HALCONF)),)
+PLATFORMSRC += $(CHIBIOS)/os/hal/ports/STM32/LLD/mac_lld.c
+endif
+ifneq ($(findstring HAL_USE_SDC TRUE,$(HALCONF)),)
+PLATFORMSRC += $(CHIBIOS)/os/hal/ports/STM32/LLD/sdc_lld.c
+endif
+ifneq ($(findstring HAL_USE_DAC TRUE,$(HALCONF)),)
+PLATFORMSRC += $(CHIBIOS)/os/hal/ports/STM32/LLD/DACv1/dac_lld.c
+endif
+ifneq ($(findstring HAL_USE_PAL TRUE,$(HALCONF)),)
+PLATFORMSRC += $(CHIBIOS)/os/hal/ports/STM32/LLD/GPIOv2/pal_lld.c
+endif
+ifneq ($(findstring "HAL_USE_I2C TRUE",$(HALCONF)),)
+PLATFORMSRC += $(CHIBIOS)/os/hal/ports/STM32/LLD/I2Cv1/i2c_lld.c
+endif
+ifneq ($(findstring HAL_USE_USB TRUE,$(HALCONF)),)
+PLATFORMSRC += $(CHIBIOS)/os/hal/ports/STM32/LLD/OTGv1/usb_lld.c
+endif
+ifneq ($(findstring HAL_USE_RTC TRUE,$(HALCONF)),)
+PLATFORMSRC += $(CHIBIOS)/os/hal/ports/STM32/LLD/RTCv2/rtc_lld.c
+endif
+ifneq ($(findstring HAL_USE_I2S TRUE,$(HALCONF)),)
+PLATFORMSRC += $(CHIBIOS)/os/hal/ports/STM32/LLD/SPIv1/i2s_lld.c
+endif
+ifneq ($(findstring HAL_USE_SPI TRUE,$(HALCONF)),)
+PLATFORMSRC += $(CHIBIOS)/os/hal/ports/STM32/LLD/SPIv1/spi_lld.c
+endif
+ifneq ($(findstring HAL_USE_GPT TRUE,$(HALCONF)),)
+PLATFORMSRC += $(CHIBIOS)/os/hal/ports/STM32/LLD/TIMv1/gpt_lld.c
+endif
+ifneq ($(findstring HAL_USE_ICU TRUE,$(HALCONF)),)
+PLATFORMSRC += $(CHIBIOS)/os/hal/ports/STM32/LLD/TIMv1/icu_lld.c
+endif
+ifneq ($(findstring HAL_USE_PWM TRUE,$(HALCONF)),)
+PLATFORMSRC += $(CHIBIOS)/os/hal/ports/STM32/LLD/TIMv1/pwm_lld.c
+endif
+ifneq ($(findstring HAL_USE_SERIAL TRUE,$(HALCONF)),)
+PLATFORMSRC += $(CHIBIOS)/os/hal/ports/STM32/LLD/USARTv1/serial_lld.c
+endif
+ifneq ($(findstring HAL_USE_UART TRUE,$(HALCONF)),)
+PLATFORMSRC += $(CHIBIOS)/os/hal/ports/STM32/LLD/USARTv1/uart_lld.c
+endif
+else
+PLATFORMSRC := $(CHIBIOS)/os/hal/ports/common/ARMCMx/nvic.c \
+ $(CHIBIOS)/os/hal/ports/STM32/STM32F4xx/stm32_dma.c \
+ $(CHIBIOS)/os/hal/ports/STM32/STM32F4xx/hal_lld.c \
+ $(CHIBIOS)/os/hal/ports/STM32/STM32F4xx/adc_lld.c \
+ $(CHIBIOS)/os/hal/ports/STM32/STM32F4xx/ext_lld_isr.c \
+ $(CHIBIOS)/os/hal/ports/STM32/LLD/can_lld.c \
+ $(CHIBIOS)/os/hal/ports/STM32/LLD/ext_lld.c \
+ $(CHIBIOS)/os/hal/ports/STM32/LLD/mac_lld.c \
+ $(CHIBIOS)/os/hal/ports/STM32/LLD/sdc_lld.c \
+ $(CHIBIOS)/os/hal/ports/STM32/LLD/DACv1/dac_lld.c \
+ $(CHIBIOS)/os/hal/ports/STM32/LLD/GPIOv2/pal_lld.c \
+ $(CHIBIOS)/os/hal/ports/STM32/LLD/I2Cv1/i2c_lld.c \
+ $(CHIBIOS)/os/hal/ports/STM32/LLD/OTGv1/usb_lld.c \
+ $(CHIBIOS)/os/hal/ports/STM32/LLD/RTCv2/rtc_lld.c \
+ $(CHIBIOS)/os/hal/ports/STM32/LLD/SPIv1/i2s_lld.c \
+ $(CHIBIOS)/os/hal/ports/STM32/LLD/SPIv1/spi_lld.c \
+ $(CHIBIOS)/os/hal/ports/STM32/LLD/TIMv1/gpt_lld.c \
+ $(CHIBIOS)/os/hal/ports/STM32/LLD/TIMv1/icu_lld.c \
+ $(CHIBIOS)/os/hal/ports/STM32/LLD/TIMv1/pwm_lld.c \
+ $(CHIBIOS)/os/hal/ports/STM32/LLD/TIMv1/st_lld.c \
+ $(CHIBIOS)/os/hal/ports/STM32/LLD/USARTv1/serial_lld.c \
+ $(CHIBIOS)/os/hal/ports/STM32/LLD/USARTv1/uart_lld.c
+endif
# Required include directories
-PLATFORMINC = ${CHIBIOS}/os/hal/ports/common/ARMCMx \
- ${CHIBIOS}/os/hal/ports/STM32/STM32F4xx \
- ${CHIBIOS}/os/hal/ports/STM32/LLD \
- ${CHIBIOS}/os/hal/ports/STM32/LLD/DACv1 \
- ${CHIBIOS}/os/hal/ports/STM32/LLD/GPIOv2 \
- ${CHIBIOS}/os/hal/ports/STM32/LLD/I2Cv1 \
- ${CHIBIOS}/os/hal/ports/STM32/LLD/OTGv1 \
- ${CHIBIOS}/os/hal/ports/STM32/LLD/RTCv2 \
- ${CHIBIOS}/os/hal/ports/STM32/LLD/SPIv1 \
- ${CHIBIOS}/os/hal/ports/STM32/LLD/TIMv1 \
- ${CHIBIOS}/os/hal/ports/STM32/LLD/USARTv1 \
- ${CHIBIOS}/os/hal/ports/STM32/LLD/FSMCv1
+PLATFORMINC := $(CHIBIOS)/os/hal/ports/common/ARMCMx \
+ $(CHIBIOS)/os/hal/ports/STM32/STM32F4xx \
+ $(CHIBIOS)/os/hal/ports/STM32/LLD \
+ $(CHIBIOS)/os/hal/ports/STM32/LLD/DACv1 \
+ $(CHIBIOS)/os/hal/ports/STM32/LLD/GPIOv2 \
+ $(CHIBIOS)/os/hal/ports/STM32/LLD/I2Cv1 \
+ $(CHIBIOS)/os/hal/ports/STM32/LLD/OTGv1 \
+ $(CHIBIOS)/os/hal/ports/STM32/LLD/RTCv2 \
+ $(CHIBIOS)/os/hal/ports/STM32/LLD/SPIv1 \
+ $(CHIBIOS)/os/hal/ports/STM32/LLD/TIMv1 \
+ $(CHIBIOS)/os/hal/ports/STM32/LLD/USARTv1 \
+ $(CHIBIOS)/os/hal/ports/STM32/LLD/FSMCv1