gpio: Add stm32mp157c_dk2 board support
Add support for stm32mp1x GPIO with Zephyr GPIO driver Signed-off-by: Yaël Boutreux <yael.boutreux@st.com> Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@st.com> Signed-off-by: Alexandre Torgue <alexandre.torgue@st.com>
This commit is contained in:
parent
524c625579
commit
b4b7020b03
9 changed files with 349 additions and 1 deletions
|
@ -16,4 +16,32 @@ config STM32_CORE_CM4
|
|||
bool "define stm32 core"
|
||||
default y
|
||||
|
||||
if GPIO_STM32
|
||||
|
||||
config GPIO_STM32_PORTD
|
||||
default y
|
||||
|
||||
config GPIO_STM32_PORTE
|
||||
default y
|
||||
|
||||
config GPIO_STM32_PORTF
|
||||
default y
|
||||
|
||||
config GPIO_STM32_PORTG
|
||||
default y
|
||||
|
||||
config GPIO_STM32_PORTH
|
||||
default y
|
||||
|
||||
config GPIO_STM32_PORTI
|
||||
default y
|
||||
|
||||
config GPIO_STM32_PORTJ
|
||||
default y
|
||||
|
||||
config GPIO_STM32_PORTK
|
||||
default y
|
||||
|
||||
endif # GPIO_STM32
|
||||
|
||||
endif # SOC_SERIES_STM32MP1X
|
||||
|
|
|
@ -8,4 +8,190 @@
|
|||
|
||||
#define DT_NUM_IRQ_PRIO_BITS DT_ARM_V7M_NVIC_E000E100_ARM_NUM_IRQ_PRIORITY_BITS
|
||||
|
||||
#define DT_GPIO_STM32_GPIOA_BASE_ADDRESS \
|
||||
DT_ST_STM32_GPIO_50002000_BASE_ADDRESS
|
||||
#define DT_GPIO_STM32_GPIOA_CLOCK_BITS_0 \
|
||||
DT_ST_STM32_GPIO_50002000_CLOCK_BITS_0
|
||||
#define DT_GPIO_STM32_GPIOA_CLOCK_BUS_0 \
|
||||
DT_ST_STM32_GPIO_50002000_CLOCK_BUS_0
|
||||
#define DT_GPIO_STM32_GPIOA_CLOCK_CONTROLLER \
|
||||
DT_ST_STM32_GPIO_50002000_CLOCK_CONTROLLER
|
||||
#define DT_GPIO_STM32_GPIOA_LABEL \
|
||||
DT_ST_STM32_GPIO_50002000_LABEL
|
||||
#define DT_GPIO_STM32_GPIOA_SIZE \
|
||||
DT_ST_STM32_GPIO_50002000_SIZE
|
||||
#define DT_GPIO_STM32_GPIOA_CLOCK_BITS \
|
||||
DT_ST_STM32_GPIO_50002000_CLOCK_BITS
|
||||
#define DT_GPIO_STM32_GPIOA_CLOCK_BUS \
|
||||
DT_ST_STM32_GPIO_50002000_CLOCK_BUS
|
||||
|
||||
#define DT_GPIO_STM32_GPIOB_BASE_ADDRESS \
|
||||
DT_ST_STM32_GPIO_50003000_BASE_ADDRESS
|
||||
#define DT_GPIO_STM32_GPIOB_CLOCK_BITS_0 \
|
||||
DT_ST_STM32_GPIO_50003000_CLOCK_BITS_0
|
||||
#define DT_GPIO_STM32_GPIOB_CLOCK_BUS_0 \
|
||||
DT_ST_STM32_GPIO_50003000_CLOCK_BUS_0
|
||||
#define DT_GPIO_STM32_GPIOB_CLOCK_CONTROLLER \
|
||||
DT_ST_STM32_GPIO_50003000_CLOCK_CONTROLLER
|
||||
#define DT_GPIO_STM32_GPIOB_LABEL \
|
||||
DT_ST_STM32_GPIO_50003000_LABEL
|
||||
#define DT_GPIO_STM32_GPIOB_SIZE \
|
||||
DT_ST_STM32_GPIO_50003000_SIZE
|
||||
#define DT_GPIO_STM32_GPIOB_CLOCK_BITS \
|
||||
DT_ST_STM32_GPIO_50003000_CLOCK_BITS
|
||||
#define DT_GPIO_STM32_GPIOB_CLOCK_BUS \
|
||||
DT_ST_STM32_GPIO_50003000_CLOCK_BUS
|
||||
|
||||
#define DT_GPIO_STM32_GPIOC_BASE_ADDRESS \
|
||||
DT_ST_STM32_GPIO_50004000_BASE_ADDRESS
|
||||
#define DT_GPIO_STM32_GPIOC_CLOCK_BITS_0 \
|
||||
DT_ST_STM32_GPIO_50004000_CLOCK_BITS_0
|
||||
#define DT_GPIO_STM32_GPIOC_CLOCK_BUS_0 \
|
||||
DT_ST_STM32_GPIO_50004000_CLOCK_BUS_0
|
||||
#define DT_GPIO_STM32_GPIOC_CLOCK_CONTROLLER \
|
||||
DT_ST_STM32_GPIO_50004000_CLOCK_CONTROLLER
|
||||
#define DT_GPIO_STM32_GPIOC_LABEL \
|
||||
DT_ST_STM32_GPIO_50004000_LABEL
|
||||
#define DT_GPIO_STM32_GPIOC_SIZE \
|
||||
DT_ST_STM32_GPIO_50004000_SIZE
|
||||
#define DT_GPIO_STM32_GPIOC_CLOCK_BITS \
|
||||
DT_ST_STM32_GPIO_50004000_CLOCK_BITS
|
||||
#define DT_GPIO_STM32_GPIOC_CLOCK_BUS \
|
||||
DT_ST_STM32_GPIO_50004000_CLOCK_BUS
|
||||
|
||||
#define DT_GPIO_STM32_GPIOD_BASE_ADDRESS \
|
||||
DT_ST_STM32_GPIO_50005000_BASE_ADDRESS
|
||||
#define DT_GPIO_STM32_GPIOD_CLOCK_BITS_0 \
|
||||
DT_ST_STM32_GPIO_50005000_CLOCK_BITS_0
|
||||
#define DT_GPIO_STM32_GPIOD_CLOCK_BUS_0 \
|
||||
T_ST_STM32_GPIO_50005000_CLOCK_BUS_0
|
||||
#define DT_GPIO_STM32_GPIOD_CLOCK_CONTROLLER \
|
||||
DT_ST_STM32_GPIO_50005000_CLOCK_CONTROLLER
|
||||
#define DT_GPIO_STM32_GPIOD_LABEL \
|
||||
DT_ST_STM32_GPIO_50005000_LABEL
|
||||
#define DT_GPIO_STM32_GPIOD_SIZE \
|
||||
DT_ST_STM32_GPIO_50005000_SIZE
|
||||
#define DT_GPIO_STM32_GPIOD_CLOCK_BITS \
|
||||
DT_ST_STM32_GPIO_50005000_CLOCK_BITS
|
||||
#define DT_GPIO_STM32_GPIOD_CLOCK_BUS \
|
||||
DT_ST_STM32_GPIO_50005000_CLOCK_BUS
|
||||
|
||||
#define DT_GPIO_STM32_GPIOE_BASE_ADDRESS \
|
||||
DT_ST_STM32_GPIO_50006000_BASE_ADDRESS
|
||||
#define DT_GPIO_STM32_GPIOE_CLOCK_BITS_0 \
|
||||
DT_ST_STM32_GPIO_50006000_CLOCK_BITS_0
|
||||
#define DT_GPIO_STM32_GPIOE_CLOCK_BUS_0 \
|
||||
DT_ST_STM32_GPIO_50006000_CLOCK_BUS_0
|
||||
#define DT_GPIO_STM32_GPIOE_CLOCK_CONTROLLER \
|
||||
DT_ST_STM32_GPIO_50006000_CLOCK_CONTROLLER
|
||||
#define DT_GPIO_STM32_GPIOE_LABEL \
|
||||
DT_ST_STM32_GPIO_50006000_LABEL
|
||||
#define DT_GPIO_STM32_GPIOE_SIZE \
|
||||
DT_ST_STM32_GPIO_50006000_SIZE
|
||||
#define DT_GPIO_STM32_GPIOE_CLOCK_BITS \
|
||||
DT_ST_STM32_GPIO_50006000_CLOCK_BITS
|
||||
#define DT_GPIO_STM32_GPIOE_CLOCK_BUS \
|
||||
DT_ST_STM32_GPIO_50006000_CLOCK_BUS
|
||||
|
||||
#define DT_GPIO_STM32_GPIOF_BASE_ADDRESS \
|
||||
DT_ST_STM32_GPIO_50007000_BASE_ADDRESS
|
||||
#define DT_GPIO_STM32_GPIOF_CLOCK_BITS_0 \
|
||||
DT_ST_STM32_GPIO_50007000_CLOCK_BITS_0
|
||||
#define DT_GPIO_STM32_GPIOF_CLOCK_BUS_0 \
|
||||
DT_ST_STM32_GPIO_50007000_CLOCK_BUS_0
|
||||
#define DT_GPIO_STM32_GPIOF_CLOCK_CONTROLLER \
|
||||
DT_ST_STM32_GPIO_50007000_CLOCK_CONTROLLER
|
||||
#define DT_GPIO_STM32_GPIOF_LABEL \
|
||||
DT_ST_STM32_GPIO_50007000_LABEL
|
||||
#define DT_GPIO_STM32_GPIOF_SIZE \
|
||||
DT_ST_STM32_GPIO_50007000_SIZE
|
||||
#define DT_GPIO_STM32_GPIOF_CLOCK_BITS \
|
||||
DT_ST_STM32_GPIO_50007000_CLOCK_BITS
|
||||
#define DT_GPIO_STM32_GPIOF_CLOCK_BUS \
|
||||
DT_ST_STM32_GPIO_50007000_CLOCK_BUS
|
||||
|
||||
#define DT_GPIO_STM32_GPIOG_BASE_ADDRESS \
|
||||
DT_ST_STM32_GPIO_50008000_BASE_ADDRESS
|
||||
#define DT_GPIO_STM32_GPIOG_CLOCK_BITS_0 \
|
||||
DT_ST_STM32_GPIO_50008000_CLOCK_BITS_0
|
||||
#define DT_GPIO_STM32_GPIOG_CLOCK_BUS_0 \
|
||||
DT_ST_STM32_GPIO_50008000_CLOCK_BUS_0
|
||||
#define DT_GPIO_STM32_GPIOG_CLOCK_CONTROLLER \
|
||||
DT_ST_STM32_GPIO_50008000_CLOCK_CONTROLLER
|
||||
#define DT_GPIO_STM32_GPIOG_LABEL \
|
||||
DT_ST_STM32_GPIO_50008000_LABEL
|
||||
#define DT_GPIO_STM32_GPIOG_SIZE \
|
||||
DT_ST_STM32_GPIO_50008000_SIZE
|
||||
#define DT_GPIO_STM32_GPIOG_CLOCK_BITS \
|
||||
DT_ST_STM32_GPIO_50008000_CLOCK_BITS
|
||||
#define DT_GPIO_STM32_GPIOG_CLOCK_BUS \
|
||||
DT_ST_STM32_GPIO_50008000_CLOCK_BUS
|
||||
|
||||
#define DT_GPIO_STM32_GPIOH_BASE_ADDRESS \
|
||||
DT_ST_STM32_GPIO_50009000_BASE_ADDRESS
|
||||
#define DT_GPIO_STM32_GPIOH_CLOCK_BITS_0 \
|
||||
DT_ST_STM32_GPIO_50009000_CLOCK_BITS_0
|
||||
#define DT_GPIO_STM32_GPIOH_CLOCK_BUS_0 \
|
||||
DT_ST_STM32_GPIO_50009000_CLOCK_BUS_0
|
||||
#define DT_GPIO_STM32_GPIOH_CLOCK_CONTROLLER \
|
||||
DT_ST_STM32_GPIO_50009000_CLOCK_CONTROLLER
|
||||
#define DT_GPIO_STM32_GPIOH_LABEL \
|
||||
DT_ST_STM32_GPIO_50009000_LABEL
|
||||
#define DT_GPIO_STM32_GPIOH_SIZE \
|
||||
DT_ST_STM32_GPIO_50009000_SIZE
|
||||
#define DT_GPIO_STM32_GPIOH_CLOCK_BITS \
|
||||
DT_ST_STM32_GPIO_50009000_CLOCK_BITS
|
||||
#define DT_GPIO_STM32_GPIOH_CLOCK_BUS \
|
||||
DT_ST_STM32_GPIO_50009000_CLOCK_BUS
|
||||
|
||||
#define DT_GPIO_STM32_GPIOI_BASE_ADDRESS \
|
||||
DT_ST_STM32_GPIO_5000A000_BASE_ADDRESS
|
||||
#define DT_GPIO_STM32_GPIOI_CLOCK_BITS_0 \
|
||||
DT_ST_STM32_GPIO_5000A000_CLOCK_BITS_0
|
||||
#define DT_GPIO_STM32_GPIOI_CLOCK_BUS_0 \
|
||||
DT_ST_STM32_GPIO_5000A000_CLOCK_BUS_0
|
||||
#define DT_GPIO_STM32_GPIOI_CLOCK_CONTROLLER \
|
||||
DT_ST_STM32_GPIO_5000A000_CLOCK_CONTROLLER
|
||||
#define DT_GPIO_STM32_GPIOI_LABEL \
|
||||
DT_ST_STM32_GPIO_5000A000_LABEL
|
||||
#define DT_GPIO_STM32_GPIOI_SIZE \
|
||||
DT_ST_STM32_GPIO_5000A000_SIZE
|
||||
#define DT_GPIO_STM32_GPIOI_CLOCK_BITS \
|
||||
DT_ST_STM32_GPIO_5000A000_CLOCK_BITS
|
||||
#define DT_GPIO_STM32_GPIOI_CLOCK_BUS \
|
||||
DT_ST_STM32_GPIO_5000A000_CLOCK_BUS
|
||||
|
||||
#define DT_GPIO_STM32_GPIOJ_BASE_ADDRESS \
|
||||
DT_ST_STM32_GPIO_5000B000_BASE_ADDRESS
|
||||
#define DT_GPIO_STM32_GPIOJ_CLOCK_BITS_0 \
|
||||
DT_ST_STM32_GPIO_5000B000_CLOCK_BITS_0
|
||||
#define DT_GPIO_STM32_GPIOJ_CLOCK_BUS_0 \
|
||||
DT_ST_STM32_GPIO_5000B000_CLOCK_BUS_0
|
||||
#define DT_GPIO_STM32_GPIOJ_CLOCK_CONTROLLER \
|
||||
DT_ST_STM32_GPIO_5000B000_CLOCK_CONTROLLER
|
||||
#define DT_GPIO_STM32_GPIOJ_LABEL \
|
||||
DT_ST_STM32_GPIO_5000B000_LABEL
|
||||
#define DT_GPIO_STM32_GPIOJ_SIZE \
|
||||
DT_ST_STM32_GPIO_5000B000_SIZE
|
||||
#define DT_GPIO_STM32_GPIOJ_CLOCK_BITS \
|
||||
DT_ST_STM32_GPIO_5000B000_CLOCK_BITS
|
||||
#define DT_GPIO_STM32_GPIOJ_CLOCK_BUS \
|
||||
DT_ST_STM32_GPIO_5000B000_CLOCK_BUS
|
||||
|
||||
#define DT_GPIO_STM32_GPIOK_BASE_ADDRESS \
|
||||
DT_ST_STM32_GPIO_5000C000_BASE_ADDRESS
|
||||
#define DT_GPIO_STM32_GPIOK_CLOCK_BITS_0 \
|
||||
DT_ST_STM32_GPIO_5000C000_CLOCK_BITS_0
|
||||
#define DT_GPIO_STM32_GPIOK_CLOCK_BUS_0 \
|
||||
DT_ST_STM32_GPIO_5000C000_CLOCK_BUS_0
|
||||
#define DT_GPIO_STM32_GPIOK_CLOCK_CONTROLLER \
|
||||
DT_ST_STM32_GPIO_5000C000_CLOCK_CONTROLLER
|
||||
#define DT_GPIO_STM32_GPIOK_LABEL \
|
||||
DT_ST_STM32_GPIO_5000C000_LABEL
|
||||
#define DT_GPIO_STM32_GPIOK_SIZE \
|
||||
DT_ST_STM32_GPIO_5000C000_SIZE
|
||||
#define DT_GPIO_STM32_GPIOK_CLOCK_BITS \
|
||||
DT_ST_STM32_GPIO_5000C000_CLOCK_BITS
|
||||
#define DT_GPIO_STM32_GPIOK_CLOCK_BUS \
|
||||
DT_ST_STM32_GPIO_5000C000_CLOCK_BUS
|
||||
/* End of SoC Level DTS fixup file */
|
||||
|
|
|
@ -31,6 +31,10 @@
|
|||
#include <stm32mp1xx_ll_exti.h>
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_GPIO_STM32
|
||||
#include <stm32mp1xx_ll_gpio.h>
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_CLOCK_CONTROL_STM32_CUBE
|
||||
#include <stm32mp1xx_ll_utils.h>
|
||||
#include <stm32mp1xx_ll_bus.h>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue