diff --git a/drivers/pwm/pwm_stm32.c b/drivers/pwm/pwm_stm32.c index f2b16c45cff..487a193addc 100644 --- a/drivers/pwm/pwm_stm32.c +++ b/drivers/pwm/pwm_stm32.c @@ -202,16 +202,16 @@ static int pwm_stm32_init(struct device *dev) return 0; } -#define PWM_DEVICE_INIT_STM32(n, apb, grp, prescaler) \ +#define PWM_DEVICE_INIT_STM32(n) \ static struct pwm_stm32_data pwm_stm32_dev_data_ ## n = { \ /* Default case */ \ - .pwm_prescaler = prescaler, \ + .pwm_prescaler = DT_PWM_STM32_## n ##_PRESCALER, \ }; \ \ static const struct pwm_stm32_config pwm_stm32_dev_cfg_ ## n = { \ - .pwm_base = TIM ## n ## _BASE, \ - .pclken = { .bus = STM32_CLOCK_BUS_ ## apb, \ - .enr = LL_##apb##_##grp##_PERIPH_TIM##n }, \ + .pwm_base = DT_TIM_STM32_## n ##_BASE_ADDRESS, \ + .pclken = { .bus = DT_TIM_STM32_## n ##_CLOCK_BUS, \ + .enr = DT_TIM_STM32_## n ##_CLOCK_BITS }, \ }; \ \ DEVICE_AND_API_INIT(pwm_stm32_ ## n, \ @@ -224,116 +224,100 @@ static int pwm_stm32_init(struct device *dev) #ifdef CONFIG_PWM_STM32_1 /* 16-bit advanced-control timer */ -#ifdef CONFIG_SOC_SERIES_STM32F0X -PWM_DEVICE_INIT_STM32(1, APB1, GRP2, DT_PWM_STM32_1_PRESCALER) -#else -PWM_DEVICE_INIT_STM32(1, APB2, GRP1, DT_PWM_STM32_1_PRESCALER) -#endif /*CONFIG_SOC_SERIES_STM32F0X */ +PWM_DEVICE_INIT_STM32(1) #endif /* CONFIG_PWM_STM32_1 */ #ifdef CONFIG_PWM_STM32_2 /* 32-bit general-purpose timer */ -PWM_DEVICE_INIT_STM32(2, APB1, GRP1, DT_PWM_STM32_2_PRESCALER) +PWM_DEVICE_INIT_STM32(2) #endif /* CONFIG_PWM_STM32_2 */ #ifdef CONFIG_PWM_STM32_3 /* 16-bit general-purpose timer */ -PWM_DEVICE_INIT_STM32(3, APB1, GRP1, DT_PWM_STM32_3_PRESCALER) +PWM_DEVICE_INIT_STM32(3) #endif /* CONFIG_PWM_STM32_3 */ #ifdef CONFIG_PWM_STM32_4 /* 16-bit general-purpose timer */ -PWM_DEVICE_INIT_STM32(4, APB1, GRP1, DT_PWM_STM32_4_PRESCALER) +PWM_DEVICE_INIT_STM32(4) #endif /* CONFIG_PWM_STM32_4 */ #ifdef CONFIG_PWM_STM32_5 /* 32-bit general-purpose timer */ -PWM_DEVICE_INIT_STM32(5, APB1, GRP1, DT_PWM_STM32_5_PRESCALER) +PWM_DEVICE_INIT_STM32(5) #endif /* CONFIG_PWM_STM32_5 */ #ifdef CONFIG_PWM_STM32_6 /* 16-bit basic timer */ -PWM_DEVICE_INIT_STM32(6, APB1, GRP1, DT_PWM_STM32_6_PRESCALER) +PWM_DEVICE_INIT_STM32(6) #endif /* CONFIG_PWM_STM32_6 */ #ifdef CONFIG_PWM_STM32_7 /* 16-bit basic timer */ -PWM_DEVICE_INIT_STM32(7, APB1, GRP1, DT_PWM_STM32_7_PRESCALER) +PWM_DEVICE_INIT_STM32(7) #endif /* CONFIG_PWM_STM32_7 */ #ifdef CONFIG_PWM_STM32_8 /* 16-bit advanced-control timer */ -PWM_DEVICE_INIT_STM32(8, APB2, GRP1, DT_PWM_STM32_8_PRESCALER) +PWM_DEVICE_INIT_STM32(8) #endif /* CONFIG_PWM_STM32_8 */ #ifdef CONFIG_PWM_STM32_9 /* 16-bit general-purpose timer */ -PWM_DEVICE_INIT_STM32(9, APB2, GRP1, DT_PWM_STM32_9_PRESCALER) +PWM_DEVICE_INIT_STM32(9) #endif /* CONFIG_PWM_STM32_9 */ #ifdef CONFIG_PWM_STM32_10 /* 16-bit general-purpose timer */ -PWM_DEVICE_INIT_STM32(10, APB2, GRP1, DT_PWM_STM32_10_PRESCALER) +PWM_DEVICE_INIT_STM32(10) #endif /* CONFIG_PWM_STM32_10 */ #ifdef CONFIG_PWM_STM32_11 /* 16-bit general-purpose timer */ -PWM_DEVICE_INIT_STM32(11, APB2, GRP1, DT_PWM_STM32_11_PRESCALER) +PWM_DEVICE_INIT_STM32(11) #endif /* CONFIG_PWM_STM32_11 */ #ifdef CONFIG_PWM_STM32_12 /* 16-bit general-purpose timer */ -PWM_DEVICE_INIT_STM32(12, APB1, GRP1, DT_PWM_STM32_12_PRESCALER) +PWM_DEVICE_INIT_STM32(12) #endif /* CONFIG_PWM_STM32_12 */ #ifdef CONFIG_PWM_STM32_13 /* 16-bit general-purpose timer */ -PWM_DEVICE_INIT_STM32(13, APB1, GRP1, DT_PWM_STM32_13_PRESCALER) +PWM_DEVICE_INIT_STM32(13) #endif /* CONFIG_PWM_STM32_13 */ #ifdef CONFIG_PWM_STM32_14 /* 16-bit general-purpose timer */ -PWM_DEVICE_INIT_STM32(14, APB1, GRP1, DT_PWM_STM32_14_PRESCALER) +PWM_DEVICE_INIT_STM32(14) #endif /* CONFIG_PWM_STM32_14 */ #ifdef CONFIG_PWM_STM32_15 /* 16-bit general-purpose timer */ -#ifdef CONFIG_SOC_SERIES_STM32F0X -PWM_DEVICE_INIT_STM32(15, APB1, GRP2, DT_PWM_STM32_15_PRESCALER) -#else -PWM_DEVICE_INIT_STM32(15, APB2, GRP1, DT_PWM_STM32_15_PRESCALER) -#endif /* CONFIG_SOC_SERIES_STM32F0X */ +PWM_DEVICE_INIT_STM32(15) #endif /* CONFIG_PWM_STM32_15 */ #ifdef CONFIG_PWM_STM32_16 /* 16-bit general-purpose timer */ -#ifdef CONFIG_SOC_SERIES_STM32F0X -PWM_DEVICE_INIT_STM32(16, APB1, GRP2, DT_PWM_STM32_16_PRESCALER) -#else -PWM_DEVICE_INIT_STM32(16, APB2, GRP1, DT_PWM_STM32_16_PRESCALER) -#endif /* CONFIG_SOC_SERIES_STM32F0X */ +PWM_DEVICE_INIT_STM32(16) #endif /* CONFIG_PWM_STM32_16 */ #ifdef CONFIG_PWM_STM32_17 /* 16-bit general-purpose timer */ -#ifdef CONFIG_SOC_SERIES_STM32F0X -PWM_DEVICE_INIT_STM32(17, APB1, GRP2, DT_PWM_STM32_17_PRESCALER) -#else -PWM_DEVICE_INIT_STM32(17, APB2, GRP1, DT_PWM_STM32_17_PRESCALER) -#endif /* CONFIG_SOC_SERIES_STM32F0X */ +PWM_DEVICE_INIT_STM32(17) #endif /* CONFIG_PWM_STM32_17 */ #ifdef CONFIG_PWM_STM32_18 /* 16-bit advanced timer */ -PWM_DEVICE_INIT_STM32(18, APB1, GRP1, DT_PWM_STM32_18_PRESCALER) +PWM_DEVICE_INIT_STM32(18) #endif /* CONFIG_PWM_STM32_18 */ #ifdef CONFIG_PWM_STM32_19 /* 16-bit general-purpose timer */ -PWM_DEVICE_INIT_STM32(19, APB2, GRP1, DT_PWM_STM32_19_PRESCALER) +PWM_DEVICE_INIT_STM32(19) #endif /* CONFIG_PWM_STM32_19 */ #ifdef CONFIG_PWM_STM32_20 /* 16-bit advanced timer */ -PWM_DEVICE_INIT_STM32(20, APB2, GRP1, DT_PWM_STM32_20_PRESCALER) +PWM_DEVICE_INIT_STM32(20) #endif /* CONFIG_PWM_STM32_20 */ diff --git a/soc/arm/st_stm32/stm32f0/dts_fixup.h b/soc/arm/st_stm32/stm32f0/dts_fixup.h index 0dded75d843..746a016b90c 100644 --- a/soc/arm/st_stm32/stm32f0/dts_fixup.h +++ b/soc/arm/st_stm32/stm32f0/dts_fixup.h @@ -125,29 +125,56 @@ #define DT_PWM_STM32_1_DEV_NAME DT_ST_STM32_PWM_40012C00_PWM_LABEL #define DT_PWM_STM32_1_PRESCALER DT_ST_STM32_PWM_40012C00_PWM_ST_PRESCALER +#define DT_TIM_STM32_1_BASE_ADDRESS DT_ST_STM32_TIMERS_40012C00_BASE_ADDRESS +#define DT_TIM_STM32_1_CLOCK_BITS DT_ST_STM32_TIMERS_40012C00_CLOCK_BITS +#define DT_TIM_STM32_1_CLOCK_BUS DT_ST_STM32_TIMERS_40012C00_CLOCK_BUS #define DT_PWM_STM32_2_DEV_NAME DT_ST_STM32_PWM_40000000_PWM_LABEL #define DT_PWM_STM32_2_PRESCALER DT_ST_STM32_PWM_40000000_PWM_ST_PRESCALER +#define DT_TIM_STM32_2_BASE_ADDRESS DT_ST_STM32_TIMERS_40000000_BASE_ADDRESS +#define DT_TIM_STM32_2_CLOCK_BITS DT_ST_STM32_TIMERS_40000000_CLOCK_BITS +#define DT_TIM_STM32_2_CLOCK_BUS DT_ST_STM32_TIMERS_40000000_CLOCK_BUS #define DT_PWM_STM32_3_DEV_NAME DT_ST_STM32_PWM_40000400_PWM_LABEL #define DT_PWM_STM32_3_PRESCALER DT_ST_STM32_PWM_40000400_PWM_ST_PRESCALER +#define DT_TIM_STM32_3_BASE_ADDRESS DT_ST_STM32_TIMERS_40000400_BASE_ADDRESS +#define DT_TIM_STM32_3_CLOCK_BITS DT_ST_STM32_TIMERS_40000400_CLOCK_BITS +#define DT_TIM_STM32_3_CLOCK_BUS DT_ST_STM32_TIMERS_40000400_CLOCK_BUS #define DT_PWM_STM32_6_DEV_NAME DT_ST_STM32_PWM_40001000_PWM_LABEL #define DT_PWM_STM32_6_PRESCALER DT_ST_STM32_PWM_40001000_PWM_ST_PRESCALER +#define DT_TIM_STM32_6_BASE_ADDRESS DT_ST_STM32_TIMERS_40001000_BASE_ADDRESS +#define DT_TIM_STM32_6_CLOCK_BITS DT_ST_STM32_TIMERS_40001000_CLOCK_BITS +#define DT_TIM_STM32_6_CLOCK_BUS DT_ST_STM32_TIMERS_40001000_CLOCK_BUS #define DT_PWM_STM32_7_DEV_NAME DT_ST_STM32_PWM_40001400_PWM_LABEL #define DT_PWM_STM32_7_PRESCALER DT_ST_STM32_PWM_40001400_PWM_ST_PRESCALER +#define DT_TIM_STM32_7_BASE_ADDRESS DT_ST_STM32_TIMERS_40001400_BASE_ADDRESS +#define DT_TIM_STM32_7_CLOCK_BITS DT_ST_STM32_TIMERS_40001400_CLOCK_BITS +#define DT_TIM_STM32_7_CLOCK_BUS DT_ST_STM32_TIMERS_40001400_CLOCK_BUS #define DT_PWM_STM32_14_DEV_NAME DT_ST_STM32_PWM_40002000_PWM_LABEL #define DT_PWM_STM32_14_PRESCALER DT_ST_STM32_PWM_40002000_PWM_ST_PRESCALER +#define DT_TIM_STM32_14_BASE_ADDRESS DT_ST_STM32_TIMERS_40002000_BASE_ADDRESS +#define DT_TIM_STM32_14_CLOCK_BITS DT_ST_STM32_TIMERS_40002000_CLOCK_BITS +#define DT_TIM_STM32_14_CLOCK_BUS DT_ST_STM32_TIMERS_40002000_CLOCK_BUS #define DT_PWM_STM32_15_DEV_NAME DT_ST_STM32_PWM_40014000_PWM_LABEL #define DT_PWM_STM32_15_PRESCALER DT_ST_STM32_PWM_40014000_PWM_ST_PRESCALER +#define DT_TIM_STM32_15_BASE_ADDRESS DT_ST_STM32_TIMERS_40014000_BASE_ADDRESS +#define DT_TIM_STM32_15_CLOCK_BITS DT_ST_STM32_TIMERS_40014000_CLOCK_BITS +#define DT_TIM_STM32_15_CLOCK_BUS DT_ST_STM32_TIMERS_40014000_CLOCK_BUS #define DT_PWM_STM32_16_DEV_NAME DT_ST_STM32_PWM_40014400_PWM_LABEL #define DT_PWM_STM32_16_PRESCALER DT_ST_STM32_PWM_40014400_PWM_ST_PRESCALER +#define DT_TIM_STM32_16_BASE_ADDRESS DT_ST_STM32_TIMERS_40014400_BASE_ADDRESS +#define DT_TIM_STM32_16_CLOCK_BITS DT_ST_STM32_TIMERS_40014400_CLOCK_BITS +#define DT_TIM_STM32_16_CLOCK_BUS DT_ST_STM32_TIMERS_40014400_CLOCK_BUS #define DT_PWM_STM32_17_DEV_NAME DT_ST_STM32_PWM_40014800_PWM_LABEL #define DT_PWM_STM32_17_PRESCALER DT_ST_STM32_PWM_40014800_PWM_ST_PRESCALER +#define DT_TIM_STM32_17_BASE_ADDRESS DT_ST_STM32_TIMERS_40014800_BASE_ADDRESS +#define DT_TIM_STM32_17_CLOCK_BITS DT_ST_STM32_TIMERS_40014800_CLOCK_BITS +#define DT_TIM_STM32_17_CLOCK_BUS DT_ST_STM32_TIMERS_40014800_CLOCK_BUS /* End of SoC Level DTS fixup file */ diff --git a/soc/arm/st_stm32/stm32f1/dts_fixup.h b/soc/arm/st_stm32/stm32f1/dts_fixup.h index e159c5c3bcb..bda101d96a2 100644 --- a/soc/arm/st_stm32/stm32f1/dts_fixup.h +++ b/soc/arm/st_stm32/stm32f1/dts_fixup.h @@ -144,26 +144,50 @@ #define DT_PWM_STM32_1_DEV_NAME DT_ST_STM32_PWM_40012C00_PWM_LABEL #define DT_PWM_STM32_1_PRESCALER DT_ST_STM32_PWM_40012C00_PWM_ST_PRESCALER +#define DT_TIM_STM32_1_BASE_ADDRESS DT_ST_STM32_TIMERS_40012C00_BASE_ADDRESS +#define DT_TIM_STM32_1_CLOCK_BITS DT_ST_STM32_TIMERS_40012C00_CLOCK_BITS +#define DT_TIM_STM32_1_CLOCK_BUS DT_ST_STM32_TIMERS_40012C00_CLOCK_BUS #define DT_PWM_STM32_2_DEV_NAME DT_ST_STM32_PWM_40000000_PWM_LABEL #define DT_PWM_STM32_2_PRESCALER DT_ST_STM32_PWM_40000000_PWM_ST_PRESCALER +#define DT_TIM_STM32_2_BASE_ADDRESS DT_ST_STM32_TIMERS_40000000_BASE_ADDRESS +#define DT_TIM_STM32_2_CLOCK_BITS DT_ST_STM32_TIMERS_40000000_CLOCK_BITS +#define DT_TIM_STM32_2_CLOCK_BUS DT_ST_STM32_TIMERS_40000000_CLOCK_BUS #define DT_PWM_STM32_3_DEV_NAME DT_ST_STM32_PWM_40000400_PWM_LABEL #define DT_PWM_STM32_3_PRESCALER DT_ST_STM32_PWM_40000400_PWM_ST_PRESCALER +#define DT_TIM_STM32_3_BASE_ADDRESS DT_ST_STM32_TIMERS_40000400_BASE_ADDRESS +#define DT_TIM_STM32_3_CLOCK_BITS DT_ST_STM32_TIMERS_40000400_CLOCK_BITS +#define DT_TIM_STM32_3_CLOCK_BUS DT_ST_STM32_TIMERS_40000400_CLOCK_BUS #define DT_PWM_STM32_4_DEV_NAME DT_ST_STM32_PWM_40000800_PWM_LABEL #define DT_PWM_STM32_4_PRESCALER DT_ST_STM32_PWM_40000800_PWM_ST_PRESCALER +#define DT_TIM_STM32_4_BASE_ADDRESS DT_ST_STM32_TIMERS_40000800_BASE_ADDRESS +#define DT_TIM_STM32_4_CLOCK_BITS DT_ST_STM32_TIMERS_40000800_CLOCK_BITS +#define DT_TIM_STM32_4_CLOCK_BUS DT_ST_STM32_TIMERS_40000800_CLOCK_BUS #define DT_PWM_STM32_5_DEV_NAME DT_ST_STM32_PWM_40000C00_PWM_LABEL #define DT_PWM_STM32_5_PRESCALER DT_ST_STM32_PWM_40000C00_PWM_ST_PRESCALER +#define DT_TIM_STM32_5_BASE_ADDRESS DT_ST_STM32_TIMERS_40000C00_BASE_ADDRESS +#define DT_TIM_STM32_5_CLOCK_BITS DT_ST_STM32_TIMERS_40000C00_CLOCK_BITS +#define DT_TIM_STM32_5_CLOCK_BUS DT_ST_STM32_TIMERS_40000C00_CLOCK_BUS #define DT_PWM_STM32_6_DEV_NAME DT_ST_STM32_PWM_40001000_PWM_LABEL #define DT_PWM_STM32_6_PRESCALER DT_ST_STM32_PWM_40001000_PWM_ST_PRESCALER +#define DT_TIM_STM32_6_BASE_ADDRESS DT_ST_STM32_TIMERS_40001000_BASE_ADDRESS +#define DT_TIM_STM32_6_CLOCK_BITS DT_ST_STM32_TIMERS_40001000_CLOCK_BITS +#define DT_TIM_STM32_6_CLOCK_BUS DT_ST_STM32_TIMERS_40001000_CLOCK_BUS #define DT_PWM_STM32_7_DEV_NAME DT_ST_STM32_PWM_40001400_PWM_LABEL #define DT_PWM_STM32_7_PRESCALER DT_ST_STM32_PWM_40001400_PWM_ST_PRESCALER +#define DT_TIM_STM32_7_BASE_ADDRESS DT_ST_STM32_TIMERS_40001400_BASE_ADDRESS +#define DT_TIM_STM32_7_CLOCK_BITS DT_ST_STM32_TIMERS_40001400_CLOCK_BITS +#define DT_TIM_STM32_7_CLOCK_BUS DT_ST_STM32_TIMERS_40001400_CLOCK_BUS #define DT_PWM_STM32_8_DEV_NAME DT_ST_STM32_PWM_40013400_PWM_LABEL #define DT_PWM_STM32_8_PRESCALER DT_ST_STM32_PWM_40013400_PWM_ST_PRESCALER +#define DT_TIM_STM32_8_BASE_ADDRESS DT_ST_STM32_TIMERS_40013400_BASE_ADDRESS +#define DT_TIM_STM32_8_CLOCK_BITS DT_ST_STM32_TIMERS_40013400_CLOCK_BITS +#define DT_TIM_STM32_8_CLOCK_BUS DT_ST_STM32_TIMERS_40013400_CLOCK_BUS /* End of SoC Level DTS fixup file */ diff --git a/soc/arm/st_stm32/stm32f3/dts_fixup.h b/soc/arm/st_stm32/stm32f3/dts_fixup.h index 9d2bbbc52d8..5a6eb5ac079 100644 --- a/soc/arm/st_stm32/stm32f3/dts_fixup.h +++ b/soc/arm/st_stm32/stm32f3/dts_fixup.h @@ -149,54 +149,105 @@ #define DT_PWM_STM32_1_DEV_NAME DT_ST_STM32_PWM_40012C00_PWM_LABEL #define DT_PWM_STM32_1_PRESCALER DT_ST_STM32_PWM_40012C00_PWM_ST_PRESCALER +#define DT_TIM_STM32_1_BASE_ADDRESS DT_ST_STM32_TIMERS_40012C00_BASE_ADDRESS +#define DT_TIM_STM32_1_CLOCK_BITS DT_ST_STM32_TIMERS_40012C00_CLOCK_BITS +#define DT_TIM_STM32_1_CLOCK_BUS DT_ST_STM32_TIMERS_40012C00_CLOCK_BUS #define DT_PWM_STM32_2_DEV_NAME DT_ST_STM32_PWM_40000000_PWM_LABEL #define DT_PWM_STM32_2_PRESCALER DT_ST_STM32_PWM_40000000_PWM_ST_PRESCALER +#define DT_TIM_STM32_2_BASE_ADDRESS DT_ST_STM32_TIMERS_40000000_BASE_ADDRESS +#define DT_TIM_STM32_2_CLOCK_BITS DT_ST_STM32_TIMERS_40000000_CLOCK_BITS +#define DT_TIM_STM32_2_CLOCK_BUS DT_ST_STM32_TIMERS_40000000_CLOCK_BUS #define DT_PWM_STM32_3_DEV_NAME DT_ST_STM32_PWM_40000400_PWM_LABEL #define DT_PWM_STM32_3_PRESCALER DT_ST_STM32_PWM_40000400_PWM_ST_PRESCALER +#define DT_TIM_STM32_3_BASE_ADDRESS DT_ST_STM32_TIMERS_40000400_BASE_ADDRESS +#define DT_TIM_STM32_3_CLOCK_BITS DT_ST_STM32_TIMERS_40000400_CLOCK_BITS +#define DT_TIM_STM32_3_CLOCK_BUS DT_ST_STM32_TIMERS_40000400_CLOCK_BUS #define DT_PWM_STM32_4_DEV_NAME DT_ST_STM32_PWM_40000800_PWM_LABEL #define DT_PWM_STM32_4_PRESCALER DT_ST_STM32_PWM_40000800_PWM_ST_PRESCALER +#define DT_TIM_STM32_4_BASE_ADDRESS DT_ST_STM32_TIMERS_40000800_BASE_ADDRESS +#define DT_TIM_STM32_4_CLOCK_BITS DT_ST_STM32_TIMERS_40000800_CLOCK_BITS +#define DT_TIM_STM32_4_CLOCK_BUS DT_ST_STM32_TIMERS_40000800_CLOCK_BUS #define DT_PWM_STM32_5_DEV_NAME DT_ST_STM32_PWM_40000C00_PWM_LABEL #define DT_PWM_STM32_5_PRESCALER DT_ST_STM32_PWM_40000C00_PWM_ST_PRESCALER +#define DT_TIM_STM32_5_BASE_ADDRESS DT_ST_STM32_TIMERS_40000C00_BASE_ADDRESS +#define DT_TIM_STM32_5_CLOCK_BITS DT_ST_STM32_TIMERS_40000C00_CLOCK_BITS +#define DT_TIM_STM32_5_CLOCK_BUS DT_ST_STM32_TIMERS_40000C00_CLOCK_BUS #define DT_PWM_STM32_6_DEV_NAME DT_ST_STM32_PWM_40001000_PWM_LABEL #define DT_PWM_STM32_6_PRESCALER DT_ST_STM32_PWM_40001000_PWM_ST_PRESCALER +#define DT_TIM_STM32_6_BASE_ADDRESS DT_ST_STM32_TIMERS_40001000_BASE_ADDRESS +#define DT_TIM_STM32_6_CLOCK_BITS DT_ST_STM32_TIMERS_40001000_CLOCK_BITS +#define DT_TIM_STM32_6_CLOCK_BUS DT_ST_STM32_TIMERS_40001000_CLOCK_BUS #define DT_PWM_STM32_7_DEV_NAME DT_ST_STM32_PWM_40001400_PWM_LABEL #define DT_PWM_STM32_7_PRESCALER DT_ST_STM32_PWM_40001400_PWM_ST_PRESCALER +#define DT_TIM_STM32_7_BASE_ADDRESS DT_ST_STM32_TIMERS_40001400_BASE_ADDRESS +#define DT_TIM_STM32_7_CLOCK_BITS DT_ST_STM32_TIMERS_40001400_CLOCK_BITS +#define DT_TIM_STM32_7_CLOCK_BUS DT_ST_STM32_TIMERS_40001400_CLOCK_BUS #define DT_PWM_STM32_8_DEV_NAME DT_ST_STM32_PWM_40013400_PWM_LABEL #define DT_PWM_STM32_8_PRESCALER DT_ST_STM32_PWM_40013400_PWM_ST_PRESCALER +#define DT_TIM_STM32_8_BASE_ADDRESS DT_ST_STM32_TIMERS_40013400_BASE_ADDRESS +#define DT_TIM_STM32_8_CLOCK_BITS DT_ST_STM32_TIMERS_40013400_CLOCK_BITS +#define DT_TIM_STM32_8_CLOCK_BUS DT_ST_STM32_TIMERS_40013400_CLOCK_BUS #define DT_PWM_STM32_12_DEV_NAME DT_ST_STM32_PWM_40001800_PWM_LABEL #define DT_PWM_STM32_12_PRESCALER DT_ST_STM32_PWM_40001800_PWM_ST_PRESCALER +#define DT_TIM_STM32_12_BASE_ADDRESS DT_ST_STM32_TIMERS_40001800_BASE_ADDRESS +#define DT_TIM_STM32_12_CLOCK_BITS DT_ST_STM32_TIMERS_40001800_CLOCK_BITS +#define DT_TIM_STM32_12_CLOCK_BUS DT_ST_STM32_TIMERS_40001800_CLOCK_BUS #define DT_PWM_STM32_13_DEV_NAME DT_ST_STM32_PWM_40001C00_PWM_LABEL #define DT_PWM_STM32_13_PRESCALER DT_ST_STM32_PWM_40001C00_PWM_ST_PRESCALER +#define DT_TIM_STM32_13_BASE_ADDRESS DT_ST_STM32_TIMERS_40001C00_BASE_ADDRESS +#define DT_TIM_STM32_13_CLOCK_BITS DT_ST_STM32_TIMERS_40001C00_CLOCK_BITS +#define DT_TIM_STM32_13_CLOCK_BUS DT_ST_STM32_TIMERS_40001C00_CLOCK_BUS #define DT_PWM_STM32_14_DEV_NAME DT_ST_STM32_PWM_40002000_PWM_LABEL #define DT_PWM_STM32_14_PRESCALER DT_ST_STM32_PWM_40002000_PWM_ST_PRESCALER +#define DT_TIM_STM32_14_BASE_ADDRESS DT_ST_STM32_TIMERS_40002000_BASE_ADDRESS +#define DT_TIM_STM32_14_CLOCK_BITS DT_ST_STM32_TIMERS_40002000_CLOCK_BITS +#define DT_TIM_STM32_14_CLOCK_BUS DT_ST_STM32_TIMERS_40002000_CLOCK_BUS #define DT_PWM_STM32_15_DEV_NAME DT_ST_STM32_PWM_40014000_PWM_LABEL #define DT_PWM_STM32_15_PRESCALER DT_ST_STM32_PWM_40014000_PWM_ST_PRESCALER +#define DT_TIM_STM32_15_BASE_ADDRESS DT_ST_STM32_TIMERS_40014000_BASE_ADDRESS +#define DT_TIM_STM32_15_CLOCK_BITS DT_ST_STM32_TIMERS_40014000_CLOCK_BITS +#define DT_TIM_STM32_15_CLOCK_BUS DT_ST_STM32_TIMERS_40014000_CLOCK_BUS #define DT_PWM_STM32_16_DEV_NAME DT_ST_STM32_PWM_40014400_PWM_LABEL #define DT_PWM_STM32_16_PRESCALER DT_ST_STM32_PWM_40014400_PWM_ST_PRESCALER +#define DT_TIM_STM32_16_BASE_ADDRESS DT_ST_STM32_TIMERS_40014400_BASE_ADDRESS +#define DT_TIM_STM32_16_CLOCK_BITS DT_ST_STM32_TIMERS_40014400_CLOCK_BITS +#define DT_TIM_STM32_16_CLOCK_BUS DT_ST_STM32_TIMERS_40014400_CLOCK_BUS #define DT_PWM_STM32_17_DEV_NAME DT_ST_STM32_PWM_40014800_PWM_LABEL #define DT_PWM_STM32_17_PRESCALER DT_ST_STM32_PWM_40014800_PWM_ST_PRESCALER +#define DT_TIM_STM32_17_BASE_ADDRESS DT_ST_STM32_TIMERS_40014800_BASE_ADDRESS +#define DT_TIM_STM32_17_CLOCK_BITS DT_ST_STM32_TIMERS_40014800_CLOCK_BITS +#define DT_TIM_STM32_17_CLOCK_BUS DT_ST_STM32_TIMERS_40014800_CLOCK_BUS #define DT_PWM_STM32_18_DEV_NAME DT_ST_STM32_PWM_40009C00_PWM_LABEL #define DT_PWM_STM32_18_PRESCALER DT_ST_STM32_PWM_40009C00_PWM_ST_PRESCALER +#define DT_TIM_STM32_18_BASE_ADDRESS DT_ST_STM32_TIMERS_40009C00_BASE_ADDRESS +#define DT_TIM_STM32_18_CLOCK_BITS DT_ST_STM32_TIMERS_40009C00_CLOCK_BITS +#define DT_TIM_STM32_18_CLOCK_BUS DT_ST_STM32_TIMERS_40009C00_CLOCK_BUS #define DT_PWM_STM32_19_DEV_NAME DT_ST_STM32_PWM_40015C00_PWM_LABEL #define DT_PWM_STM32_19_PRESCALER DT_ST_STM32_PWM_40015C00_PWM_ST_PRESCALER +#define DT_TIM_STM32_19_BASE_ADDRESS DT_ST_STM32_TIMERS_40015C00_BASE_ADDRESS +#define DT_TIM_STM32_19_CLOCK_BITS DT_ST_STM32_TIMERS_40015C00_CLOCK_BITS +#define DT_TIM_STM32_19_CLOCK_BUS DT_ST_STM32_TIMERS_40015C00_CLOCK_BUS #define DT_PWM_STM32_20_DEV_NAME DT_ST_STM32_PWM_40015000_PWM_LABEL #define DT_PWM_STM32_20_PRESCALER DT_ST_STM32_PWM_40015000_PWM_ST_PRESCALER +#define DT_TIM_STM32_20_BASE_ADDRESS DT_ST_STM32_TIMERS_40015000_BASE_ADDRESS +#define DT_TIM_STM32_20_CLOCK_BITS DT_ST_STM32_TIMERS_40015000_CLOCK_BITS +#define DT_TIM_STM32_20_CLOCK_BUS DT_ST_STM32_TIMERS_40015000_CLOCK_BUS #define DT_RTC_0_BASE_ADDRESS DT_ST_STM32_RTC_40002800_BASE_ADDRESS #define CONFIG_RTC_0_IRQ_PRI DT_ST_STM32_RTC_40002800_IRQ_0_PRIORITY diff --git a/soc/arm/st_stm32/stm32f4/dts_fixup.h b/soc/arm/st_stm32/stm32f4/dts_fixup.h index 1a9febf6499..6176f757a1a 100644 --- a/soc/arm/st_stm32/stm32f4/dts_fixup.h +++ b/soc/arm/st_stm32/stm32f4/dts_fixup.h @@ -270,45 +270,87 @@ #define DT_PWM_STM32_1_DEV_NAME DT_ST_STM32_PWM_40010000_PWM_LABEL #define DT_PWM_STM32_1_PRESCALER DT_ST_STM32_PWM_40010000_PWM_ST_PRESCALER +#define DT_TIM_STM32_1_BASE_ADDRESS DT_ST_STM32_TIMERS_40010000_BASE_ADDRESS +#define DT_TIM_STM32_1_CLOCK_BITS DT_ST_STM32_TIMERS_40010000_CLOCK_BITS +#define DT_TIM_STM32_1_CLOCK_BUS DT_ST_STM32_TIMERS_40010000_CLOCK_BUS #define DT_PWM_STM32_2_DEV_NAME DT_ST_STM32_PWM_40000000_PWM_LABEL #define DT_PWM_STM32_2_PRESCALER DT_ST_STM32_PWM_40000000_PWM_ST_PRESCALER +#define DT_TIM_STM32_2_BASE_ADDRESS DT_ST_STM32_TIMERS_40000000_BASE_ADDRESS +#define DT_TIM_STM32_2_CLOCK_BITS DT_ST_STM32_TIMERS_40000000_CLOCK_BITS +#define DT_TIM_STM32_2_CLOCK_BUS DT_ST_STM32_TIMERS_40000000_CLOCK_BUS #define DT_PWM_STM32_3_DEV_NAME DT_ST_STM32_PWM_40000400_PWM_LABEL #define DT_PWM_STM32_3_PRESCALER DT_ST_STM32_PWM_40000400_PWM_ST_PRESCALER +#define DT_TIM_STM32_3_BASE_ADDRESS DT_ST_STM32_TIMERS_40000400_BASE_ADDRESS +#define DT_TIM_STM32_3_CLOCK_BITS DT_ST_STM32_TIMERS_40000400_CLOCK_BITS +#define DT_TIM_STM32_3_CLOCK_BUS DT_ST_STM32_TIMERS_40000400_CLOCK_BUS #define DT_PWM_STM32_4_DEV_NAME DT_ST_STM32_PWM_40000800_PWM_LABEL #define DT_PWM_STM32_4_PRESCALER DT_ST_STM32_PWM_40000800_PWM_ST_PRESCALER +#define DT_TIM_STM32_4_BASE_ADDRESS DT_ST_STM32_TIMERS_40000800_BASE_ADDRESS +#define DT_TIM_STM32_4_CLOCK_BITS DT_ST_STM32_TIMERS_40000800_CLOCK_BITS +#define DT_TIM_STM32_4_CLOCK_BUS DT_ST_STM32_TIMERS_40000800_CLOCK_BUS #define DT_PWM_STM32_5_DEV_NAME DT_ST_STM32_PWM_40000C00_PWM_LABEL #define DT_PWM_STM32_5_PRESCALER DT_ST_STM32_PWM_40000C00_PWM_ST_PRESCALER +#define DT_TIM_STM32_5_BASE_ADDRESS DT_ST_STM32_TIMERS_40000C00_BASE_ADDRESS +#define DT_TIM_STM32_5_CLOCK_BITS DT_ST_STM32_TIMERS_40000C00_CLOCK_BITS +#define DT_TIM_STM32_5_CLOCK_BUS DT_ST_STM32_TIMERS_40000C00_CLOCK_BUS #define DT_PWM_STM32_6_DEV_NAME DT_ST_STM32_PWM_40001000_PWM_LABEL #define DT_PWM_STM32_6_PRESCALER DT_ST_STM32_PWM_40001000_PWM_ST_PRESCALER +#define DT_TIM_STM32_6_BASE_ADDRESS DT_ST_STM32_TIMERS_40001000_BASE_ADDRESS +#define DT_TIM_STM32_6_CLOCK_BITS DT_ST_STM32_TIMERS_40001000_CLOCK_BITS +#define DT_TIM_STM32_6_CLOCK_BUS DT_ST_STM32_TIMERS_40001000_CLOCK_BUS #define DT_PWM_STM32_7_DEV_NAME DT_ST_STM32_PWM_40001400_PWM_LABEL #define DT_PWM_STM32_7_PRESCALER DT_ST_STM32_PWM_40001400_PWM_ST_PRESCALER +#define DT_TIM_STM32_7_BASE_ADDRESS DT_ST_STM32_TIMERS_40001400_BASE_ADDRESS +#define DT_TIM_STM32_7_CLOCK_BITS DT_ST_STM32_TIMERS_40001400_CLOCK_BITS +#define DT_TIM_STM32_7_CLOCK_BUS DT_ST_STM32_TIMERS_40001400_CLOCK_BUS #define DT_PWM_STM32_8_DEV_NAME DT_ST_STM32_PWM_40010400_PWM_LABEL #define DT_PWM_STM32_8_PRESCALER DT_ST_STM32_PWM_40010400_PWM_ST_PRESCALER +#define DT_TIM_STM32_8_BASE_ADDRESS DT_ST_STM32_TIMERS_40010400_BASE_ADDRESS +#define DT_TIM_STM32_8_CLOCK_BITS DT_ST_STM32_TIMERS_40010400_CLOCK_BITS +#define DT_TIM_STM32_8_CLOCK_BUS DT_ST_STM32_TIMERS_40010400_CLOCK_BUS #define DT_PWM_STM32_9_DEV_NAME DT_ST_STM32_PWM_40014000_PWM_LABEL #define DT_PWM_STM32_9_PRESCALER DT_ST_STM32_PWM_40014000_PWM_ST_PRESCALER +#define DT_TIM_STM32_9_BASE_ADDRESS DT_ST_STM32_TIMERS_40014000_BASE_ADDRESS +#define DT_TIM_STM32_9_CLOCK_BITS DT_ST_STM32_TIMERS_40014000_CLOCK_BITS +#define DT_TIM_STM32_9_CLOCK_BUS DT_ST_STM32_TIMERS_40014000_CLOCK_BUS #define DT_PWM_STM32_10_DEV_NAME DT_ST_STM32_PWM_40014400_PWM_LABEL #define DT_PWM_STM32_10_PRESCALER DT_ST_STM32_PWM_40014400_PWM_ST_PRESCALER +#define DT_TIM_STM32_10_BASE_ADDRESS DT_ST_STM32_TIMERS_40014400_BASE_ADDRESS +#define DT_TIM_STM32_10_CLOCK_BITS DT_ST_STM32_TIMERS_40014400_CLOCK_BITS +#define DT_TIM_STM32_10_CLOCK_BUS DT_ST_STM32_TIMERS_40014400_CLOCK_BUS #define DT_PWM_STM32_11_DEV_NAME DT_ST_STM32_PWM_40014800_PWM_LABEL #define DT_PWM_STM32_11_PRESCALER DT_ST_STM32_PWM_40014800_PWM_ST_PRESCALER +#define DT_TIM_STM32_11_BASE_ADDRESS DT_ST_STM32_TIMERS_40014800_BASE_ADDRESS +#define DT_TIM_STM32_11_CLOCK_BITS DT_ST_STM32_TIMERS_40014800_CLOCK_BITS +#define DT_TIM_STM32_11_CLOCK_BUS DT_ST_STM32_TIMERS_40014800_CLOCK_BUS #define DT_PWM_STM32_12_DEV_NAME DT_ST_STM32_PWM_40001800_PWM_LABEL #define DT_PWM_STM32_12_PRESCALER DT_ST_STM32_PWM_40001800_PWM_ST_PRESCALER +#define DT_TIM_STM32_12_BASE_ADDRESS DT_ST_STM32_TIMERS_40001800_BASE_ADDRESS +#define DT_TIM_STM32_12_CLOCK_BITS DT_ST_STM32_TIMERS_40001800_CLOCK_BITS +#define DT_TIM_STM32_12_CLOCK_BUS DT_ST_STM32_TIMERS_40001800_CLOCK_BUS #define DT_PWM_STM32_13_DEV_NAME DT_ST_STM32_PWM_40001C00_PWM_LABEL #define DT_PWM_STM32_13_PRESCALER DT_ST_STM32_PWM_40001C00_PWM_ST_PRESCALER +#define DT_TIM_STM32_13_BASE_ADDRESS DT_ST_STM32_TIMERS_40001C00_BASE_ADDRESS +#define DT_TIM_STM32_13_CLOCK_BITS DT_ST_STM32_TIMERS_40001C00_CLOCK_BITS +#define DT_TIM_STM32_13_CLOCK_BUS DT_ST_STM32_TIMERS_40001C00_CLOCK_BUS #define DT_PWM_STM32_14_DEV_NAME DT_ST_STM32_PWM_40002000_PWM_LABEL #define DT_PWM_STM32_14_PRESCALER DT_ST_STM32_PWM_40002000_PWM_ST_PRESCALER +#define DT_TIM_STM32_14_BASE_ADDRESS DT_ST_STM32_TIMERS_40002000_BASE_ADDRESS +#define DT_TIM_STM32_14_CLOCK_BITS DT_ST_STM32_TIMERS_40002000_CLOCK_BITS +#define DT_TIM_STM32_14_CLOCK_BUS DT_ST_STM32_TIMERS_40002000_CLOCK_BUS #define DT_RTC_0_BASE_ADDRESS DT_ST_STM32_RTC_40002800_BASE_ADDRESS #define CONFIG_RTC_0_IRQ_PRI DT_ST_STM32_RTC_40002800_IRQ_0_PRIORITY diff --git a/soc/arm/st_stm32/stm32f7/dts_fixup.h b/soc/arm/st_stm32/stm32f7/dts_fixup.h index b97942c5a2a..71bbb718b58 100644 --- a/soc/arm/st_stm32/stm32f7/dts_fixup.h +++ b/soc/arm/st_stm32/stm32f7/dts_fixup.h @@ -257,45 +257,87 @@ #define DT_PWM_STM32_1_DEV_NAME DT_ST_STM32_PWM_40010000_PWM_LABEL #define DT_PWM_STM32_1_PRESCALER DT_ST_STM32_PWM_40010000_PWM_ST_PRESCALER +#define DT_TIM_STM32_1_BASE_ADDRESS DT_ST_STM32_TIMERS_40010000_BASE_ADDRESS +#define DT_TIM_STM32_1_CLOCK_BITS DT_ST_STM32_TIMERS_40010000_CLOCK_BITS +#define DT_TIM_STM32_1_CLOCK_BUS DT_ST_STM32_TIMERS_40010000_CLOCK_BUS #define DT_PWM_STM32_2_DEV_NAME DT_ST_STM32_PWM_40000000_PWM_LABEL #define DT_PWM_STM32_2_PRESCALER DT_ST_STM32_PWM_40000000_PWM_ST_PRESCALER +#define DT_TIM_STM32_2_BASE_ADDRESS DT_ST_STM32_TIMERS_40000000_BASE_ADDRESS +#define DT_TIM_STM32_2_CLOCK_BITS DT_ST_STM32_TIMERS_40000000_CLOCK_BITS +#define DT_TIM_STM32_2_CLOCK_BUS DT_ST_STM32_TIMERS_40000000_CLOCK_BUS #define DT_PWM_STM32_3_DEV_NAME DT_ST_STM32_PWM_40000400_PWM_LABEL #define DT_PWM_STM32_3_PRESCALER DT_ST_STM32_PWM_40000400_PWM_ST_PRESCALER +#define DT_TIM_STM32_3_BASE_ADDRESS DT_ST_STM32_TIMERS_40000400_BASE_ADDRESS +#define DT_TIM_STM32_3_CLOCK_BITS DT_ST_STM32_TIMERS_40000400_CLOCK_BITS +#define DT_TIM_STM32_3_CLOCK_BUS DT_ST_STM32_TIMERS_40000400_CLOCK_BUS #define DT_PWM_STM32_4_DEV_NAME DT_ST_STM32_PWM_40000800_PWM_LABEL #define DT_PWM_STM32_4_PRESCALER DT_ST_STM32_PWM_40000800_PWM_ST_PRESCALER +#define DT_TIM_STM32_4_BASE_ADDRESS DT_ST_STM32_TIMERS_40000800_BASE_ADDRESS +#define DT_TIM_STM32_4_CLOCK_BITS DT_ST_STM32_TIMERS_40000800_CLOCK_BITS +#define DT_TIM_STM32_4_CLOCK_BUS DT_ST_STM32_TIMERS_40000800_CLOCK_BUS #define DT_PWM_STM32_5_DEV_NAME DT_ST_STM32_PWM_40000C00_PWM_LABEL #define DT_PWM_STM32_5_PRESCALER DT_ST_STM32_PWM_40000C00_PWM_ST_PRESCALER +#define DT_TIM_STM32_5_BASE_ADDRESS DT_ST_STM32_TIMERS_40000C00_BASE_ADDRESS +#define DT_TIM_STM32_5_CLOCK_BITS DT_ST_STM32_TIMERS_40000C00_CLOCK_BITS +#define DT_TIM_STM32_5_CLOCK_BUS DT_ST_STM32_TIMERS_40000C00_CLOCK_BUS #define DT_PWM_STM32_6_DEV_NAME DT_ST_STM32_PWM_40001000_PWM_LABEL #define DT_PWM_STM32_6_PRESCALER DT_ST_STM32_PWM_40001000_PWM_ST_PRESCALER +#define DT_TIM_STM32_6_BASE_ADDRESS DT_ST_STM32_TIMERS_40001000_BASE_ADDRESS +#define DT_TIM_STM32_6_CLOCK_BITS DT_ST_STM32_TIMERS_40001000_CLOCK_BITS +#define DT_TIM_STM32_6_CLOCK_BUS DT_ST_STM32_TIMERS_40001000_CLOCK_BUS #define DT_PWM_STM32_7_DEV_NAME DT_ST_STM32_PWM_40001400_PWM_LABEL #define DT_PWM_STM32_7_PRESCALER DT_ST_STM32_PWM_40001400_PWM_ST_PRESCALER +#define DT_TIM_STM32_7_BASE_ADDRESS DT_ST_STM32_TIMERS_40001400_BASE_ADDRESS +#define DT_TIM_STM32_7_CLOCK_BITS DT_ST_STM32_TIMERS_40001400_CLOCK_BITS +#define DT_TIM_STM32_7_CLOCK_BUS DT_ST_STM32_TIMERS_40001400_CLOCK_BUS #define DT_PWM_STM32_8_DEV_NAME DT_ST_STM32_PWM_40010400_PWM_LABEL #define DT_PWM_STM32_8_PRESCALER DT_ST_STM32_PWM_40010400_PWM_ST_PRESCALER +#define DT_TIM_STM32_8_BASE_ADDRESS DT_ST_STM32_TIMERS_40010400_BASE_ADDRESS +#define DT_TIM_STM32_8_CLOCK_BITS DT_ST_STM32_TIMERS_40010400_CLOCK_BITS +#define DT_TIM_STM32_8_CLOCK_BUS DT_ST_STM32_TIMERS_40010400_CLOCK_BUS #define DT_PWM_STM32_9_DEV_NAME DT_ST_STM32_PWM_40014000_PWM_LABEL #define DT_PWM_STM32_9_PRESCALER DT_ST_STM32_PWM_40014000_PWM_ST_PRESCALER +#define DT_TIM_STM32_9_BASE_ADDRESS DT_ST_STM32_TIMERS_40014000_BASE_ADDRESS +#define DT_TIM_STM32_9_CLOCK_BITS DT_ST_STM32_TIMERS_40014000_CLOCK_BITS +#define DT_TIM_STM32_9_CLOCK_BUS DT_ST_STM32_TIMERS_40014000_CLOCK_BUS #define DT_PWM_STM32_10_DEV_NAME DT_ST_STM32_PWM_40014400_PWM_LABEL #define DT_PWM_STM32_10_PRESCALER DT_ST_STM32_PWM_40014400_PWM_ST_PRESCALER +#define DT_TIM_STM32_10_BASE_ADDRESS DT_ST_STM32_TIMERS_40014400_BASE_ADDRESS +#define DT_TIM_STM32_10_CLOCK_BITS DT_ST_STM32_TIMERS_40014400_CLOCK_BITS +#define DT_TIM_STM32_10_CLOCK_BUS DT_ST_STM32_TIMERS_40014400_CLOCK_BUS #define DT_PWM_STM32_11_DEV_NAME DT_ST_STM32_PWM_40014800_PWM_LABEL #define DT_PWM_STM32_11_PRESCALER DT_ST_STM32_PWM_40014800_PWM_ST_PRESCALER +#define DT_TIM_STM32_11_BASE_ADDRESS DT_ST_STM32_TIMERS_40014800_BASE_ADDRESS +#define DT_TIM_STM32_11_CLOCK_BITS DT_ST_STM32_TIMERS_40014800_CLOCK_BITS +#define DT_TIM_STM32_11_CLOCK_BUS DT_ST_STM32_TIMERS_40014800_CLOCK_BUS #define DT_PWM_STM32_12_DEV_NAME DT_ST_STM32_PWM_40001800_PWM_LABEL #define DT_PWM_STM32_12_PRESCALER DT_ST_STM32_PWM_40001800_PWM_ST_PRESCALER +#define DT_TIM_STM32_12_BASE_ADDRESS DT_ST_STM32_TIMERS_40001800_BASE_ADDRESS +#define DT_TIM_STM32_12_CLOCK_BITS DT_ST_STM32_TIMERS_40001800_CLOCK_BITS +#define DT_TIM_STM32_12_CLOCK_BUS DT_ST_STM32_TIMERS_40001800_CLOCK_BUS #define DT_PWM_STM32_13_DEV_NAME DT_ST_STM32_PWM_40001C00_PWM_LABEL #define DT_PWM_STM32_13_PRESCALER DT_ST_STM32_PWM_40001C00_PWM_ST_PRESCALER +#define DT_TIM_STM32_13_BASE_ADDRESS DT_ST_STM32_TIMERS_40001C00_BASE_ADDRESS +#define DT_TIM_STM32_13_CLOCK_BITS DT_ST_STM32_TIMERS_40001C00_CLOCK_BITS +#define DT_TIM_STM32_13_CLOCK_BUS DT_ST_STM32_TIMERS_40001C00_CLOCK_BUS #define DT_PWM_STM32_14_DEV_NAME DT_ST_STM32_PWM_40002000_PWM_LABEL #define DT_PWM_STM32_14_PRESCALER DT_ST_STM32_PWM_40002000_PWM_ST_PRESCALER +#define DT_TIM_STM32_14_BASE_ADDRESS DT_ST_STM32_TIMERS_40002000_BASE_ADDRESS +#define DT_TIM_STM32_14_CLOCK_BITS DT_ST_STM32_TIMERS_40002000_CLOCK_BITS +#define DT_TIM_STM32_14_CLOCK_BUS DT_ST_STM32_TIMERS_40002000_CLOCK_BUS #define DT_RTC_0_BASE_ADDRESS DT_ST_STM32_RTC_40002800_BASE_ADDRESS #define CONFIG_RTC_0_IRQ_PRI DT_ST_STM32_RTC_40002800_IRQ_0_PRIORITY diff --git a/soc/arm/st_stm32/stm32l4/dts_fixup.h b/soc/arm/st_stm32/stm32l4/dts_fixup.h index ace8834ef11..ad67f12c8ab 100644 --- a/soc/arm/st_stm32/stm32l4/dts_fixup.h +++ b/soc/arm/st_stm32/stm32l4/dts_fixup.h @@ -220,36 +220,69 @@ #define DT_PWM_STM32_1_DEV_NAME DT_ST_STM32_PWM_40012C00_PWM_LABEL #define DT_PWM_STM32_1_PRESCALER DT_ST_STM32_PWM_40012C00_PWM_ST_PRESCALER +#define DT_TIM_STM32_1_BASE_ADDRESS DT_ST_STM32_TIMERS_40012C00_BASE_ADDRESS +#define DT_TIM_STM32_1_CLOCK_BITS DT_ST_STM32_TIMERS_40012C00_CLOCK_BITS +#define DT_TIM_STM32_1_CLOCK_BUS DT_ST_STM32_TIMERS_40012C00_CLOCK_BUS #define DT_PWM_STM32_2_DEV_NAME DT_ST_STM32_PWM_40000000_PWM_LABEL #define DT_PWM_STM32_2_PRESCALER DT_ST_STM32_PWM_40000000_PWM_ST_PRESCALER +#define DT_TIM_STM32_2_BASE_ADDRESS DT_ST_STM32_TIMERS_40000000_BASE_ADDRESS +#define DT_TIM_STM32_2_CLOCK_BITS DT_ST_STM32_TIMERS_40000000_CLOCK_BITS +#define DT_TIM_STM32_2_CLOCK_BUS DT_ST_STM32_TIMERS_40000000_CLOCK_BUS #define DT_PWM_STM32_3_DEV_NAME DT_ST_STM32_PWM_40000400_PWM_LABEL #define DT_PWM_STM32_3_PRESCALER DT_ST_STM32_PWM_40000400_PWM_ST_PRESCALER +#define DT_TIM_STM32_3_BASE_ADDRESS DT_ST_STM32_TIMERS_40000400_BASE_ADDRESS +#define DT_TIM_STM32_3_CLOCK_BITS DT_ST_STM32_TIMERS_40000400_CLOCK_BITS +#define DT_TIM_STM32_3_CLOCK_BUS DT_ST_STM32_TIMERS_40000400_CLOCK_BUS #define DT_PWM_STM32_4_DEV_NAME DT_ST_STM32_PWM_40000800_PWM_LABEL #define DT_PWM_STM32_4_PRESCALER DT_ST_STM32_PWM_40000800_PWM_ST_PRESCALER +#define DT_TIM_STM32_4_BASE_ADDRESS DT_ST_STM32_TIMERS_40000800_BASE_ADDRESS +#define DT_TIM_STM32_4_CLOCK_BITS DT_ST_STM32_TIMERS_40000800_CLOCK_BITS +#define DT_TIM_STM32_4_CLOCK_BUS DT_ST_STM32_TIMERS_40000800_CLOCK_BUS #define DT_PWM_STM32_5_DEV_NAME DT_ST_STM32_PWM_40000C00_PWM_LABEL #define DT_PWM_STM32_5_PRESCALER DT_ST_STM32_PWM_40000C00_PWM_ST_PRESCALER +#define DT_TIM_STM32_5_BASE_ADDRESS DT_ST_STM32_TIMERS_40000C00_BASE_ADDRESS +#define DT_TIM_STM32_5_CLOCK_BITS DT_ST_STM32_TIMERS_40000C00_CLOCK_BITS +#define DT_TIM_STM32_5_CLOCK_BUS DT_ST_STM32_TIMERS_40000C00_CLOCK_BUS #define DT_PWM_STM32_6_DEV_NAME DT_ST_STM32_PWM_40001000_PWM_LABEL #define DT_PWM_STM32_6_PRESCALER DT_ST_STM32_PWM_40001000_PWM_ST_PRESCALER +#define DT_TIM_STM32_6_BASE_ADDRESS DT_ST_STM32_TIMERS_40001000_BASE_ADDRESS +#define DT_TIM_STM32_6_CLOCK_BITS DT_ST_STM32_TIMERS_40001000_CLOCK_BITS +#define DT_TIM_STM32_6_CLOCK_BUS DT_ST_STM32_TIMERS_40001000_CLOCK_BUS #define DT_PWM_STM32_7_DEV_NAME DT_ST_STM32_PWM_40001400_PWM_LABEL #define DT_PWM_STM32_7_PRESCALER DT_ST_STM32_PWM_40001400_PWM_ST_PRESCALER +#define DT_TIM_STM32_7_BASE_ADDRESS DT_ST_STM32_TIMERS_40001400_BASE_ADDRESS +#define DT_TIM_STM32_7_CLOCK_BITS DT_ST_STM32_TIMERS_40001400_CLOCK_BITS +#define DT_TIM_STM32_7_CLOCK_BUS DT_ST_STM32_TIMERS_40001400_CLOCK_BUS #define DT_PWM_STM32_8_DEV_NAME DT_ST_STM32_PWM_40013400_PWM_LABEL #define DT_PWM_STM32_8_PRESCALER DT_ST_STM32_PWM_40013400_PWM_ST_PRESCALER +#define DT_TIM_STM32_8_BASE_ADDRESS DT_ST_STM32_TIMERS_40013400_BASE_ADDRESS +#define DT_TIM_STM32_8_CLOCK_BITS DT_ST_STM32_TIMERS_40013400_CLOCK_BITS +#define DT_TIM_STM32_8_CLOCK_BUS DT_ST_STM32_TIMERS_40013400_CLOCK_BUS #define DT_PWM_STM32_15_DEV_NAME DT_ST_STM32_PWM_40014000_PWM_LABEL #define DT_PWM_STM32_15_PRESCALER DT_ST_STM32_PWM_40014000_PWM_ST_PRESCALER +#define DT_TIM_STM32_15_BASE_ADDRESS DT_ST_STM32_TIMERS_40014000_BASE_ADDRESS +#define DT_TIM_STM32_15_CLOCK_BITS DT_ST_STM32_TIMERS_40014000_CLOCK_BITS +#define DT_TIM_STM32_15_CLOCK_BUS DT_ST_STM32_TIMERS_40014000_CLOCK_BUS #define DT_PWM_STM32_16_DEV_NAME DT_ST_STM32_PWM_40014400_PWM_LABEL #define DT_PWM_STM32_16_PRESCALER DT_ST_STM32_PWM_40014400_PWM_ST_PRESCALER +#define DT_TIM_STM32_16_BASE_ADDRESS DT_ST_STM32_TIMERS_40014400_BASE_ADDRESS +#define DT_TIM_STM32_16_CLOCK_BITS DT_ST_STM32_TIMERS_40014400_CLOCK_BITS +#define DT_TIM_STM32_16_CLOCK_BUS DT_ST_STM32_TIMERS_40014400_CLOCK_BUS #define DT_PWM_STM32_17_DEV_NAME DT_ST_STM32_PWM_40014800_PWM_LABEL #define DT_PWM_STM32_17_PRESCALER DT_ST_STM32_PWM_40014800_PWM_ST_PRESCALER +#define DT_TIM_STM32_17_BASE_ADDRESS DT_ST_STM32_TIMERS_40014800_BASE_ADDRESS +#define DT_TIM_STM32_17_CLOCK_BITS DT_ST_STM32_TIMERS_40014800_CLOCK_BITS +#define DT_TIM_STM32_17_CLOCK_BUS DT_ST_STM32_TIMERS_40014800_CLOCK_BUS #define DT_CAN_1_BASE_ADDRESS DT_ST_STM32_CAN_40006400_BASE_ADDRESS #define DT_CAN_1_BUS_SPEED DT_ST_STM32_CAN_40006400_BUS_SPEED