diff --git a/drivers/spi/spi_sam0.c b/drivers/spi/spi_sam0.c index 9cb5bf51d0c..5c48c0bbc99 100644 --- a/drivers/spi/spi_sam0.c +++ b/drivers/spi/spi_sam0.c @@ -679,6 +679,10 @@ static int spi_sam0_init(const struct device *dev) | GCLK_CLKCTRL_ID(cfg->gclk_id); #endif + /* Ensure all registers are at their default values */ + regs->CTRLA.bit.SWRST = 1; + wait_synchronization(regs); + /* Disable all SPI interrupts */ regs->INTENCLR.reg = SERCOM_SPI_INTENCLR_MASK; wait_synchronization(regs);