soc: arm: kv5x: add NXP Kinetis KV5x SoC series support
Add initial support for the NXP Kinetis KV5x SoC series (MKV56F24 and MKV58F24). Signed-off-by: Filip Brozovic <fbrozovic@gmail.com>
This commit is contained in:
parent
c07827f2d8
commit
edcb7deb88
21 changed files with 1075 additions and 0 deletions
137
soc/arm/nxp_kinetis/kv5x/dts_fixup.h
Normal file
137
soc/arm/nxp_kinetis/kv5x/dts_fixup.h
Normal file
|
@ -0,0 +1,137 @@
|
|||
/*
|
||||
* Copyright (c) 2019 SEAL AG
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
||||
/* SoC level DTS fixup file */
|
||||
#define DT_NUM_IRQ_PRIO_BITS DT_ARM_V7M_NVIC_E000E100_ARM_NUM_IRQ_PRIORITY_BITS
|
||||
|
||||
#define DT_SIM_NAME DT_NXP_KINETIS_SIM_40047000_LABEL
|
||||
#ifdef DT_NXP_KINETIS_SIM_40047000_CLKOUT_DIVIDER
|
||||
#define DT_SIM_CLKOUT_DIVIDER DT_NXP_KINETIS_SIM_40047000_CLKOUT_DIVIDER
|
||||
#endif /* DT_NXP_KINETIS_SIM_40047000_CLKOUT_DIVIDER */
|
||||
#ifdef DT_NXP_KINETIS_SIM_40047000_CLKOUT_SOURCE
|
||||
#define DT_SIM_CLKOUT_SOURCE DT_NXP_KINETIS_SIM_40047000_CLKOUT_SOURCE
|
||||
#endif /* DT_NXP_KINETIS_SIM_40047000_CLKOUT_SOURCE */
|
||||
|
||||
#define DT_FLASH_DEV_BASE_ADDRESS DT_NXP_KINETIS_FTFE_40020000_BASE_ADDRESS
|
||||
#define DT_FLASH_DEV_NAME DT_NXP_KINETIS_FTFE_40020000_LABEL
|
||||
|
||||
#define DT_ADC_0_BASE_ADDRESS DT_NXP_KINETIS_ADC16_4003B000_BASE_ADDRESS
|
||||
#define DT_ADC_0_IRQ DT_NXP_KINETIS_ADC16_4003B000_IRQ_0
|
||||
#define DT_ADC_0_IRQ_PRI DT_NXP_KINETIS_ADC16_4003B000_IRQ_0_PRIORITY
|
||||
#define DT_ADC_0_NAME DT_NXP_KINETIS_ADC16_4003B000_LABEL
|
||||
|
||||
#define DT_FTM_1_BASE_ADDRESS DT_NXP_KINETIS_FTM_40038000_BASE_ADDRESS
|
||||
#define DT_FTM_1_IRQ DT_NXP_KINETIS_FTM_40038000_IRQ_0
|
||||
#define DT_FTM_1_IRQ_PRI DT_NXP_KINETIS_FTM_40038000_IRQ_0_PRIORITY
|
||||
#define DT_FTM_1_NAME DT_NXP_KINETIS_FTM_40038000_LABEL
|
||||
|
||||
#define DT_FTM_2_BASE_ADDRESS DT_NXP_KINETIS_FTM_40039000_BASE_ADDRESS
|
||||
#define DT_FTM_2_IRQ DT_NXP_KINETIS_FTM_40039000_IRQ_0
|
||||
#define DT_FTM_2_IRQ_PRI DT_NXP_KINETIS_FTM_40039000_IRQ_0_PRIORITY
|
||||
#define DT_FTM_2_NAME DT_NXP_KINETIS_FTM_40039000_LABEL
|
||||
|
||||
#define DT_FTM_3_BASE_ADDRESS DT_NXP_KINETIS_FTM_4003A000_BASE_ADDRESS
|
||||
#define DT_FTM_3_IRQ DT_NXP_KINETIS_FTM_4003A000_IRQ_0
|
||||
#define DT_FTM_3_IRQ_PRI DT_NXP_KINETIS_FTM_4003A000_IRQ_0_PRIORITY
|
||||
#define DT_FTM_3_NAME DT_NXP_KINETIS_FTM_4003A000_LABEL
|
||||
|
||||
#define DT_FTM_4_BASE_ADDRESS DT_NXP_KINETIS_FTM_40026000_BASE_ADDRESS
|
||||
#define DT_FTM_4_IRQ DT_NXP_KINETIS_FTM_40026000_IRQ_0
|
||||
#define DT_FTM_4_IRQ_PRI DT_NXP_KINETIS_FTM_40026000_IRQ_0_PRIORITY
|
||||
#define DT_FTM_4_NAME DT_NXP_KINETIS_FTM_40026000_LABEL
|
||||
|
||||
#define DT_I2C_0_NAME DT_NXP_KINETIS_I2C_40066000_LABEL
|
||||
#define DT_I2C_MCUX_0_BASE_ADDRESS DT_NXP_KINETIS_I2C_40066000_BASE_ADDRESS
|
||||
#define DT_I2C_MCUX_0_IRQ DT_NXP_KINETIS_I2C_40066000_IRQ_0
|
||||
#define DT_I2C_MCUX_0_IRQ_PRI DT_NXP_KINETIS_I2C_40066000_IRQ_0_PRIORITY
|
||||
#define DT_I2C_MCUX_0_BITRATE DT_NXP_KINETIS_I2C_40066000_CLOCK_FREQUENCY
|
||||
|
||||
#define DT_I2C_1_NAME DT_NXP_KINETIS_I2C_40067000_LABEL
|
||||
#define DT_I2C_MCUX_1_BASE_ADDRESS DT_NXP_KINETIS_I2C_40067000_BASE_ADDRESS
|
||||
#define DT_I2C_MCUX_1_IRQ DT_NXP_KINETIS_I2C_40067000_IRQ_0
|
||||
#define DT_I2C_MCUX_1_IRQ_PRI DT_NXP_KINETIS_I2C_40067000_IRQ_0_PRIORITY
|
||||
#define DT_I2C_MCUX_1_BITRATE DT_NXP_KINETIS_I2C_40067000_CLOCK_FREQUENCY
|
||||
|
||||
#define DT_SPI_0_NAME DT_NXP_KINETIS_DSPI_4002C000_LABEL
|
||||
#define DT_SPI_0_BASE_ADDRESS DT_NXP_KINETIS_DSPI_4002C000_BASE_ADDRESS
|
||||
#define DT_SPI_0_IRQ DT_NXP_KINETIS_DSPI_4002C000_IRQ_0
|
||||
#define DT_SPI_0_IRQ_PRI DT_NXP_KINETIS_DSPI_4002C000_IRQ_0_PRIORITY
|
||||
#define DT_SPI_0_CLOCK_NAME DT_NXP_KINETIS_DSPI_4002C000_CLOCK_CONTROLLER
|
||||
#define DT_SPI_0_CLOCK_SUBSYS DT_NXP_KINETIS_DSPI_4002C000_CLOCK_NAME
|
||||
|
||||
#define DT_SPI_1_NAME DT_NXP_KINETIS_DSPI_4002D000_LABEL
|
||||
#define DT_SPI_1_BASE_ADDRESS DT_NXP_KINETIS_DSPI_4002D000_BASE_ADDRESS
|
||||
#define DT_SPI_1_IRQ DT_NXP_KINETIS_DSPI_4002D000_IRQ_0
|
||||
#define DT_SPI_1_IRQ_PRI DT_NXP_KINETIS_DSPI_4002D000_IRQ_0_PRIORITY
|
||||
#define DT_SPI_1_CLOCK_NAME DT_NXP_KINETIS_DSPI_4002D000_CLOCK_CONTROLLER
|
||||
#define DT_SPI_1_CLOCK_SUBSYS DT_NXP_KINETIS_DSPI_4002D000_CLOCK_NAME
|
||||
|
||||
#define DT_SPI_2_NAME DT_NXP_KINETIS_DSPI_400AC000_LABEL
|
||||
#define DT_SPI_2_BASE_ADDRESS DT_NXP_KINETIS_DSPI_400AC000_BASE_ADDRESS
|
||||
#define DT_SPI_2_IRQ DT_NXP_KINETIS_DSPI_400AC000_IRQ_0
|
||||
#define DT_SPI_2_IRQ_PRI DT_NXP_KINETIS_DSPI_400AC000_IRQ_0_PRIORITY
|
||||
#define DT_SPI_2_CLOCK_NAME DT_NXP_KINETIS_DSPI_400AC000_CLOCK_CONTROLLER
|
||||
#define DT_SPI_2_CLOCK_SUBSYS DT_NXP_KINETIS_DSPI_400AC000_CLOCK_NAME
|
||||
|
||||
#define DT_UART_MCUX_0_BAUD_RATE DT_NXP_KINETIS_UART_4006A000_CURRENT_SPEED
|
||||
#define DT_UART_MCUX_0_NAME DT_NXP_KINETIS_UART_4006A000_LABEL
|
||||
#define DT_UART_MCUX_0_IRQ_ERROR DT_NXP_KINETIS_UART_4006A000_IRQ_ERROR
|
||||
#define DT_UART_MCUX_0_IRQ_ERROR_PRI DT_NXP_KINETIS_UART_4006A000_IRQ_ERROR_PRIORITY
|
||||
#define DT_UART_MCUX_0_IRQ_STATUS DT_NXP_KINETIS_UART_4006A000_IRQ_STATUS
|
||||
#define DT_UART_MCUX_0_IRQ_STATUS_PRI DT_NXP_KINETIS_UART_4006A000_IRQ_STATUS_PRIORITY
|
||||
#define DT_UART_MCUX_0_HW_FLOW_CONTROL DT_NXP_KINETIS_UART_4006A000_HW_FLOW_CONTROL
|
||||
#define DT_UART_MCUX_0_CLOCK_NAME DT_NXP_KINETIS_UART_4006A000_CLOCK_CONTROLLER
|
||||
#define DT_UART_MCUX_0_CLOCK_SUBSYS DT_NXP_KINETIS_UART_4006A000_CLOCK_NAME
|
||||
|
||||
#define DT_UART_MCUX_1_BAUD_RATE DT_NXP_KINETIS_UART_4006B000_CURRENT_SPEED
|
||||
#define DT_UART_MCUX_1_NAME DT_NXP_KINETIS_UART_4006B000_LABEL
|
||||
#define DT_UART_MCUX_1_IRQ_ERROR DT_NXP_KINETIS_UART_4006B000_IRQ_ERROR
|
||||
#define DT_UART_MCUX_1_IRQ_ERROR_PRI DT_NXP_KINETIS_UART_4006B000_IRQ_ERROR_PRIORITY
|
||||
#define DT_UART_MCUX_1_IRQ_STATUS DT_NXP_KINETIS_UART_4006B000_IRQ_STATUS
|
||||
#define DT_UART_MCUX_1_IRQ_STATUS_PRI DT_NXP_KINETIS_UART_4006B000_IRQ_STATUS_PRIORITY
|
||||
#define DT_UART_MCUX_1_HW_FLOW_CONTROL DT_NXP_KINETIS_UART_4006B000_HW_FLOW_CONTROL
|
||||
#define DT_UART_MCUX_1_CLOCK_NAME DT_NXP_KINETIS_UART_4006B000_CLOCK_CONTROLLER
|
||||
#define DT_UART_MCUX_1_CLOCK_SUBSYS DT_NXP_KINETIS_UART_4006B000_CLOCK_NAME
|
||||
|
||||
#define DT_UART_MCUX_2_BAUD_RATE DT_NXP_KINETIS_UART_4006C000_CURRENT_SPEED
|
||||
#define DT_UART_MCUX_2_NAME DT_NXP_KINETIS_UART_4006C000_LABEL
|
||||
#define DT_UART_MCUX_2_IRQ_ERROR DT_NXP_KINETIS_UART_4006C000_IRQ_ERROR
|
||||
#define DT_UART_MCUX_2_IRQ_ERROR_PRI DT_NXP_KINETIS_UART_4006C000_IRQ_ERROR_PRIORITY
|
||||
#define DT_UART_MCUX_2_IRQ_STATUS DT_NXP_KINETIS_UART_4006C000_IRQ_STATUS
|
||||
#define DT_UART_MCUX_2_IRQ_STATUS_PRI DT_NXP_KINETIS_UART_4006C000_IRQ_STATUS_PRIORITY
|
||||
#define DT_UART_MCUX_2_HW_FLOW_CONTROL DT_NXP_KINETIS_UART_4006C000_HW_FLOW_CONTROL
|
||||
#define DT_UART_MCUX_2_CLOCK_NAME DT_NXP_KINETIS_UART_4006C000_CLOCK_CONTROLLER
|
||||
#define DT_UART_MCUX_2_CLOCK_SUBSYS DT_NXP_KINETIS_UART_4006C000_CLOCK_NAME
|
||||
|
||||
#define DT_UART_MCUX_3_BAUD_RATE DT_NXP_KINETIS_UART_4006D000_CURRENT_SPEED
|
||||
#define DT_UART_MCUX_3_NAME DT_NXP_KINETIS_UART_4006D000_LABEL
|
||||
#define DT_UART_MCUX_3_IRQ_ERROR DT_NXP_KINETIS_UART_4006D000_IRQ_ERROR
|
||||
#define DT_UART_MCUX_3_IRQ_ERROR_PRI DT_NXP_KINETIS_UART_4006D000_IRQ_ERROR_PRIORITY
|
||||
#define DT_UART_MCUX_3_IRQ_STATUS DT_NXP_KINETIS_UART_4006D000_IRQ_STATUS
|
||||
#define DT_UART_MCUX_3_IRQ_STATUS_PRI DT_NXP_KINETIS_UART_4006D000_IRQ_STATUS_PRIORITY
|
||||
#define DT_UART_MCUX_3_HW_FLOW_CONTROL DT_NXP_KINETIS_UART_4006D000_HW_FLOW_CONTROL
|
||||
#define DT_UART_MCUX_3_CLOCK_NAME DT_NXP_KINETIS_UART_4006D000_CLOCK_CONTROLLER
|
||||
#define DT_UART_MCUX_3_CLOCK_SUBSYS DT_NXP_KINETIS_UART_4006D000_CLOCK_NAME
|
||||
|
||||
#define DT_UART_MCUX_4_BAUD_RATE DT_NXP_KINETIS_UART_400EA000_CURRENT_SPEED
|
||||
#define DT_UART_MCUX_4_NAME DT_NXP_KINETIS_UART_400EA000_LABEL
|
||||
#define DT_UART_MCUX_4_IRQ_ERROR DT_NXP_KINETIS_UART_400EA000_IRQ_ERROR
|
||||
#define DT_UART_MCUX_4_IRQ_ERROR_PRI DT_NXP_KINETIS_UART_400EA000_IRQ_ERROR_PRIORITY
|
||||
#define DT_UART_MCUX_4_IRQ_STATUS DT_NXP_KINETIS_UART_400EA000_IRQ_STATUS
|
||||
#define DT_UART_MCUX_4_IRQ_STATUS_PRI DT_NXP_KINETIS_UART_400EA000_IRQ_STATUS_PRIORITY
|
||||
#define DT_UART_MCUX_4_HW_FLOW_CONTROL DT_NXP_KINETIS_UART_400EA000_HW_FLOW_CONTROL
|
||||
#define DT_UART_MCUX_4_CLOCK_NAME DT_NXP_KINETIS_UART_400EA000_CLOCK_CONTROLLER
|
||||
#define DT_UART_MCUX_4_CLOCK_SUBSYS DT_NXP_KINETIS_UART_400EA000_CLOCK_NAME
|
||||
|
||||
#define DT_UART_MCUX_5_BAUD_RATE DT_NXP_KINETIS_UART_400EB000_CURRENT_SPEED
|
||||
#define DT_UART_MCUX_5_NAME DT_NXP_KINETIS_UART_400EB000_LABEL
|
||||
#define DT_UART_MCUX_5_IRQ_ERROR DT_NXP_KINETIS_UART_400EB000_IRQ_ERROR
|
||||
#define DT_UART_MCUX_5_IRQ_ERROR_PRI DT_NXP_KINETIS_UART_400EB000_IRQ_ERROR_PRIORITY
|
||||
#define DT_UART_MCUX_5_IRQ_STATUS DT_NXP_KINETIS_UART_400EB000_IRQ_STATUS
|
||||
#define DT_UART_MCUX_5_IRQ_STATUS_PRI DT_NXP_KINETIS_UART_400EB000_IRQ_STATUS_PRIORITY
|
||||
#define DT_UART_MCUX_5_HW_FLOW_CONTROL DT_NXP_KINETIS_UART_400EB000_HW_FLOW_CONTROL
|
||||
#define DT_UART_MCUX_5_CLOCK_NAME DT_NXP_KINETIS_UART_400EB000_CLOCK_CONTROLLER
|
||||
#define DT_UART_MCUX_5_CLOCK_SUBSYS DT_NXP_KINETIS_UART_400EB000_CLOCK_NAME
|
Loading…
Add table
Add a link
Reference in a new issue