Skip to content

Commit 11d69b6

Browse files
Aksel Skauge MellbyeChromeos LUCI
authored andcommitted
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. (cherry picked from commit 6b65d60) Original-Signed-off-by: Aksel Skauge Mellbye <[email protected]> GitOrigin-RevId: 6b65d60 Cr-Build-Id: 8727764308049365969 Cr-Build-Url: https://cr-buildbucket.appspot.com/build/8727764308049365969 Copybot-Job-Name: zephyr-main-copybot-downstream Change-Id: I0542e91659011eaab4f362679113431ca0acb380 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/zephyr/+/6116711 Commit-Queue: Fabio Baltieri <[email protected]> Reviewed-by: Fabio Baltieri <[email protected]> Tested-by: ChromeOS Prod (Robot) <[email protected]>
1 parent cdb9c87 commit 11d69b6

File tree

1 file changed

+2
-5
lines changed

1 file changed

+2
-5
lines changed

drivers/spi/spi_gecko_eusart.c

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -82,11 +82,6 @@ static int spi_eusart_config(const struct device *dev, const struct spi_config *
8282
return -ENOTSUP;
8383
}
8484

85-
if (config->operation & SPI_TRANSFER_LSB) {
86-
LOG_ERR("LSB first not supported");
87-
return -ENOTSUP;
88-
}
89-
9085
if (config->operation & SPI_OP_MODE_SLAVE) {
9186
LOG_ERR("Slave mode not supported");
9287
return -ENOTSUP;
@@ -133,6 +128,8 @@ static int spi_eusart_config(const struct device *dev, const struct spi_config *
133128
eusartAdvancedSpiInit.csPolarity = eusartCsActiveLow;
134129
}
135130

131+
eusartAdvancedSpiInit.msbFirst = !(config->operation & SPI_TRANSFER_LSB);
132+
eusartAdvancedSpiInit.autoCsEnable = !spi_cs_is_gpio(config);
136133
eusartInit.databits = eusartDataBits8;
137134
eusartInit.advancedSettings = &eusartAdvancedSpiInit;
138135

0 commit comments

Comments
 (0)