Commit 6b65d60d authored by Aksel Skauge Mellbye's avatar Aksel Skauge Mellbye Committed by Benjamin Cabé
Browse files

drivers: spi: gecko: eusart: Support LSB first and GPIO CS

Propagate bit ordering and type of CS pin to HAL layer. Previously,
the driver assumed MSB first and EUSART hardware CS control.

Signed-off-by: default avatarAksel Skauge Mellbye <aksel.mellbye@silabs.com>
parent 93cb20be
Loading
Loading
Loading
Loading
+2 −5
Changes for drivers/spi/spi_gecko_eusart.c: 2 added lines, 5 removed lines.
Original line number Diff line number Diff line
@@ -82,11 +82,6 @@ static int spi_eusart_config(const struct device *dev, const struct spi_config *
		return -ENOTSUP;
	}

	if (config->operation & SPI_TRANSFER_LSB) {
		LOG_ERR("LSB first not supported");
		return -ENOTSUP;
	}

	if (config->operation & SPI_OP_MODE_SLAVE) {
		LOG_ERR("Slave mode not supported");
		return -ENOTSUP;
@@ -133,6 +128,8 @@ static int spi_eusart_config(const struct device *dev, const struct spi_config *
		eusartAdvancedSpiInit.csPolarity = eusartCsActiveLow;
	}

	eusartAdvancedSpiInit.msbFirst = !(config->operation & SPI_TRANSFER_LSB);
	eusartAdvancedSpiInit.autoCsEnable = !spi_cs_is_gpio(config);
	eusartInit.databits = eusartDataBits8;
	eusartInit.advancedSettings = &eusartAdvancedSpiInit;