Skip to content

Commit 3135a4c

Browse files
mustafaabdullahkcarlescufi
authored andcommitted
drivers: spi: spi_ll_stm32: add midi and mssi impl
Master Inter-Data Idleness and Master SS Idleness can configure with STM32 low level spi driver apis. Signed-off-by: Mustafa Abdullah Kus <[email protected]>
1 parent 0f9ebbd commit 3135a4c

File tree

2 files changed

+15
-0
lines changed

2 files changed

+15
-0
lines changed

drivers/spi/spi_ll_stm32.c

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -618,6 +618,11 @@ static int spi_stm32_configure(const struct device *dev,
618618
LL_SPI_SetDataWidth(spi, LL_SPI_DATAWIDTH_16BIT);
619619
}
620620

621+
#if DT_HAS_COMPAT_STATUS_OKAY(st_stm32h7_spi)
622+
LL_SPI_SetMasterSSIdleness(spi, cfg->mssi_clocks);
623+
LL_SPI_SetInterDataIdleness(spi, (cfg->midi_clocks << SPI_CFG2_MIDI_Pos));
624+
#endif
625+
621626
#if DT_HAS_COMPAT_STATUS_OKAY(st_stm32_spi_fifo)
622627
ll_func_set_fifo_threshold_8bit(spi);
623628
#endif
@@ -1160,6 +1165,12 @@ static const struct spi_stm32_config spi_stm32_cfg_##id = { \
11601165
IF_ENABLED(DT_HAS_COMPAT_STATUS_OKAY(st_stm32_spi_subghz), \
11611166
(.use_subghzspi_nss = \
11621167
DT_INST_PROP_OR(id, use_subghzspi_nss, false),))\
1168+
IF_ENABLED(DT_HAS_COMPAT_STATUS_OKAY(st_stm32h7_spi), \
1169+
(.midi_clocks = \
1170+
DT_INST_PROP(id, midi_clock),)) \
1171+
IF_ENABLED(DT_HAS_COMPAT_STATUS_OKAY(st_stm32h7_spi), \
1172+
(.mssi_clocks = \
1173+
DT_INST_PROP(id, mssi_clock),)) \
11631174
}; \
11641175
\
11651176
static struct spi_stm32_data spi_stm32_dev_data_##id = { \

drivers/spi/spi_ll_stm32.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,10 @@ struct spi_stm32_config {
2727
#endif
2828
#if DT_HAS_COMPAT_STATUS_OKAY(st_stm32_spi_subghz)
2929
bool use_subghzspi_nss;
30+
#endif
31+
#if DT_HAS_COMPAT_STATUS_OKAY(st_stm32h7_spi)
32+
int midi_clocks;
33+
int mssi_clocks;
3034
#endif
3135
size_t pclk_len;
3236
const struct stm32_pclken *pclken;

0 commit comments

Comments
 (0)