1Import('RTT_ROOT') 2Import('rtconfig') 3from building import * 4import os 5 6cwd = GetCurrentDir() 7group = [] 8src = [] 9path = [cwd] 10 11if GetDepend(['RT_USING_PIN']): 12 src += ['drv_gpio.c'] 13 14if GetDepend(['RT_USING_SERIAL']): 15 if GetDepend(['RT_USING_SERIAL_V2']): 16 src += ['drv_usart_v2.c'] 17 else: 18 src += ['drv_usart.c'] 19 20if GetDepend(['BSP_USING_TIM']): 21 src += ['drv_tim.c'] 22 23if GetDepend(['BSP_USING_PWM']): 24 src += ['drv_pwm.c', 'drv_tim.c'] 25 26if GetDepend(['RT_USING_SPI']): 27 src += ['drv_spi.c'] 28 29if GetDepend(['RT_USING_QSPI']): 30 src += ['drv_qspi.c'] 31 32if GetDepend('RT_USING_SOFT_SPI'): 33 src += ['drv_soft_spi.c'] 34 35if GetDepend(['RT_USING_I2C', 'RT_USING_I2C_BITOPS']): 36 if GetDepend('BSP_USING_I2C1') or GetDepend('BSP_USING_I2C2') or GetDepend('BSP_USING_I2C3') or GetDepend('BSP_USING_I2C4'): 37 src += ['drv_soft_i2c.c'] 38 39if GetDepend(['RT_USING_I2C']): 40 if GetDepend('BSP_USING_HARD_I2C1') or GetDepend('BSP_USING_HARD_I2C2') or GetDepend('BSP_USING_HARD_I2C3') or GetDepend('BSP_USING_HARD_I2C4'): 41 src += ['drv_hard_i2c.c'] 42 43if GetDepend(['BSP_USING_ETH', 'RT_USING_LWIP']) and not GetDepend(['SOC_STM32H750_ARTPI']): 44 src += ['drv_eth.c'] 45 46if GetDepend(['RT_USING_ADC']): 47 src += ['drv_adc.c'] 48 49if GetDepend(['RT_USING_DAC']): 50 src += ['drv_dac.c'] 51 52if GetDepend(['RT_USING_CAN']): 53 src += ['drv_can.c'] 54 55if GetDepend(['RT_USING_PM']): 56 src += ['drv_pm.c'] 57 58if GetDepend(['BSP_USING_LPTIM']): 59 src += ['drv_lptim.c'] 60 61if GetDepend('BSP_USING_SDRAM'): 62 src += ['drv_sdram.c'] 63 64if GetDepend(['BSP_USING_NAND1']): 65 src += ['drv_nand.c'] 66 67if GetDepend('BSP_USING_LCD'): 68 src += ['drv_lcd.c'] 69 70if GetDepend('BSP_USING_LCD_MIPI'): 71 src += ['drv_lcd_mipi.c'] 72 73if GetDepend('BSP_USING_ONCHIP_RTC'): 74 src += ['drv_rtc.c'] 75 76if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32G0']): 77 src += [os.path.join('drv_flash', 'drv_flash_g0.c')] 78 79if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32F0']): 80 src += [os.path.join('drv_flash', 'drv_flash_f0.c')] 81 82if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32F1']): 83 src += [os.path.join('drv_flash', 'drv_flash_f1.c')] 84 85if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32F2']): 86 src += [os.path.join('drv_flash', 'drv_flash_f2.c')] 87 88if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32F4']): 89 src += [os.path.join('drv_flash', 'drv_flash_f4.c')] 90 91if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32F7']): 92 src += [os.path.join('drv_flash', 'drv_flash_f7.c')] 93 94if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32L1']): 95 src += [os.path.join('drv_flash', 'drv_flash_l1.c')] 96 97if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32L4']): 98 src += [os.path.join('drv_flash', 'drv_flash_l4.c')] 99 100if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32H7']): 101 src += [os.path.join('drv_flash', 'drv_flash_h7.c')] 102 103if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32WB']): 104 src += [os.path.join('drv_flash', 'drv_flash_wb.c')] 105 106if GetDepend('RT_USING_HWCRYPTO'): 107 src += ['drv_crypto.c'] 108 109if GetDepend(['BSP_USING_WDT']): 110 src += ['drv_wdt.c'] 111 112if GetDepend(['BSP_USING_SDIO']): 113 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'): 114 src += ['drv_sdmmc.c'] 115 else: 116 src += ['drv_sdio.c'] 117 118if GetDepend(['BSP_USING_USBD']): 119 src += ['drv_usbd.c'] 120 121if GetDepend(['BSP_USING_PULSE_ENCODER']): 122 src += ['drv_pulse_encoder.c'] 123 124if GetDepend(['BSP_USING_USBH']): 125 src += ['drv_usbh.c'] 126 127path += [os.path.join(cwd, 'config')] 128 129if GetDepend('BSP_USING_ON_CHIP_FLASH'): 130 path += [os.path.join(cwd, 'drv_flash')] 131 132group = DefineGroup('Drivers', src, depend = [''], CPPPATH = path) 133 134Return('group') 135