# hw definition file for processing by chibios_hwdef.py
# for F765 bootloader

# MCU class and specific type
MCU STM32F7xx STM32F767xx

# crystal frequency
OSCILLATOR_HZ 16000000

# board ID for firmware load
APJ_BOARD_ID 41775

# default to all pins low to avoid ESD issues
DEFAULTGPIO OUTPUT LOW PULLDOWN

FLASH_SIZE_KB 2048

# bootloader is installed at zero offset
FLASH_RESERVE_START_KB 0

# the location where the bootloader will put the firmware
FLASH_BOOTLOADER_LOAD_KB 32

PB1 LED_BOOTLOADER OUTPUT HIGH
PB0 LED_ACTIVITY OUTPUT HIGH
define HAL_LED_ON 0

# order of UARTs (and USB)
SERIAL_ORDER OTG1 UART7 UART5 USART2 USART3

PA11 OTG_FS_DM OTG1
PA12 OTG_FS_DP OTG1

PA13 JTMS-SWDIO SWD
PA14 JTCK-SWCLK SWD

# UARTs

# USART2 is telem3, MSS_SPARE_4W
PA3 USART2_RX USART2 NODMA
PD5 USART2_TX USART2
PD3 USART2_CTS USART2
PD4 USART2_RTS USART2

# USART3, UART_2W_DEBUG
PD9 USART3_RX USART3 NODMA
PD8 USART3_TX USART3

# UART5 Telem 2, MSS_UART_4W
PD2 UART5_RX UART5
PB9 UART5_TX UART5
PC8 UART5_RTS UART5
PC9 UART5_CTS UART5

# UART7 Telem 1, TELEM_UART_4W
PE7 UART7_RX UART7
PE8 UART7_TX UART7
PE9 UART7_RTS UART7
PE10 UART7_CTS UART7

# Add CS pins to ensure they are high in bootloader
PF3  ICM20602_CS CS SPEED_VERYLOW
PF4  BMI088_G_CS CS
PG10 BMI088_A_CS CS
PF5  FRAM_CS CS SPEED_VERYLOW
PF11 SPARE_CS CS
PH5  AUXMEM_CS CS
PI4  EXTERNAL1_CS1 CS
PI10 EXTERNAL1_CS2 CS
PI11 EXTERNAL1_CS3 CS
PI6  EXTERNAL2_CS1 CS
PI7  EXTERNAL2_CS2 CS
PI8  EXTERNAL2_CS3 CS