summaryrefslogtreecommitdiff
path: root/bsp/stm32/libraries/HAL_Drivers/drivers/SConscript
blob: 0a9ceb24da507a1d3f1685433dfbf4108b9ab972 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
Import('RTT_ROOT')
Import('rtconfig')
from building import *
import os

cwd = GetCurrentDir()
group = []
src = []
# DMA-capable BSPs are expected to enable HAL_DMA_MODULE_ENABLED in the
# STM32 HAL configuration, so keep the common DMA helper in the build.

src += ['drv_dma.c']
path = [cwd]

if GetDepend(['RT_USING_DM']):
    group += SConscript(os.path.join('dm', 'SConscript'))

elif GetDepend(['RT_USING_PIN']):
    src += ['drv_gpio.c']

if GetDepend(['RT_USING_SERIAL']):
    if GetDepend(['RT_USING_SERIAL_V2']):
        src += ['drv_usart_v2.c']
    else:
        src += ['drv_usart.c']

if GetDepend(['BSP_USING_TIM']):
    src += ['drv_tim.c']

if GetDepend(['BSP_USING_PWM']):
    src += ['drv_pwm.c', 'drv_tim.c']

if GetDepend(['RT_USING_SPI']):
    src += ['drv_spi.c']

if GetDepend(['RT_USING_QSPI']):
    src += ['drv_qspi.c']

if GetDepend(['RT_USING_I2C']):
    if GetDepend('BSP_USING_HARD_I2C1') or GetDepend('BSP_USING_HARD_I2C2') or GetDepend('BSP_USING_HARD_I2C3') or GetDepend('BSP_USING_HARD_I2C4'):
        src += ['drv_hard_i2c.c']

eth_new_hal_soc = (GetDepend(['SOC_SERIES_STM32F4']) or
                   GetDepend(['SOC_SERIES_STM32F7']) or
                   GetDepend(['SOC_SERIES_STM32H7']))
if (eth_new_hal_soc and GetDepend(['RT_USING_LWIP']) and
        (GetDepend(['BSP_USING_ETH']) or GetDepend(['BSP_USING_ETH_H750']))):
    src += ['drv_eth.c']

if GetDepend(['RT_USING_ADC']) and not GetDepend(['RT_USING_ADC_V2']):
    src += ['drv_adc.c']

if GetDepend(['BSP_USING_ADC_V2']):
    src += ['drv_adc_v2.c']

    if GetDepend(['BSP_ADC_USING_TRIGGER']):
        src += ['drv_adc_v2_trigger.c']

    if GetDepend(['RT_USING_FINSH', 'RT_ADC_V2_USING_MSH']):
        src += ['drv_adc_v2_msh.c']

if GetDepend(['RT_USING_DAC']):
    src += ['drv_dac.c']

if GetDepend(['RT_USING_CAN']):
    if GetDepend(['SOC_SERIES_STM32H7']):
        src += ['drv_fdcan.c']
    else:
        src += ['drv_can.c']

if GetDepend(['RT_USING_PM']):
    src += ['drv_pm.c']

if GetDepend(['BSP_USING_LPTIM']):
    src += ['drv_lptim.c']

if GetDepend('BSP_USING_SDRAM'):
    src += ['drv_sdram.c']

if GetDepend(['BSP_USING_NAND1']):
    src += ['drv_nand.c']

if GetDepend('BSP_USING_LCD'):
    src += ['drv_lcd.c']

if GetDepend('BSP_USING_LCD_MIPI'):
    src += ['drv_lcd_mipi.c']

if GetDepend('BSP_USING_ONCHIP_RTC'):
    src += ['drv_rtc.c']

if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32G0']):
    src += [os.path.join('drv_flash', 'drv_flash_g0.c')]

if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32F0']):
    src += [os.path.join('drv_flash', 'drv_flash_f0.c')]

if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32F1']):
    src += [os.path.join('drv_flash', 'drv_flash_f1.c')]

if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32F2']):
    src += [os.path.join('drv_flash', 'drv_flash_f2.c')]

if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32F4']):
    src += [os.path.join('drv_flash', 'drv_flash_f4.c')]

if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32F7']):
    src += [os.path.join('drv_flash', 'drv_flash_f7.c')]

if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32L1']):
    src += [os.path.join('drv_flash', 'drv_flash_l1.c')]

if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32L4']):
    src += [os.path.join('drv_flash', 'drv_flash_l4.c')]

if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32H7']):
    src += [os.path.join('drv_flash', 'drv_flash_h7.c')]

if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32WB']):
    src += [os.path.join('drv_flash', 'drv_flash_wb.c')]

if GetDepend('RT_USING_HWCRYPTO'):
    src += ['drv_crypto.c']

if GetDepend(['BSP_USING_WDT']):
    src += ['drv_wdt.c']

if GetDepend(['BSP_USING_SDIO']):
    if GetDepend('SOC_SERIES_STM32H7RS') or GetDepend('SOC_SERIES_STM32H7') or GetDepend('SOC_SERIES_STM32F7') or GetDepend('SOC_SERIES_STM32L4') or GetDepend('SOC_SERIES_STM32L5'):
        src += ['drv_sdmmc.c']
    else:
        src += ['drv_sdio.c']

if GetDepend(['BSP_USING_USBD']):
    src += ['drv_usbd.c']

if GetDepend(['BSP_USING_PULSE_ENCODER']):
    src += ['drv_pulse_encoder.c']

if GetDepend(['BSP_USING_USBH']):
    src += ['drv_usbh.c']

path += [os.path.join(cwd, 'config')]

if GetDepend('BSP_USING_ON_CHIP_FLASH'):
    path += [os.path.join(cwd, 'drv_flash')]

group += DefineGroup('Drivers', src, depend = [''], CPPPATH = path)

Return('group')