Input: applespi - use new structure for SPI transfer delays
authorSergiu Cuciurean <sergiu.cuciurean@analog.com>
Fri, 11 Dec 2020 05:57:36 +0000 (21:57 -0800)
committerDmitry Torokhov <dmitry.torokhov@gmail.com>
Fri, 11 Dec 2020 07:39:16 +0000 (23:39 -0800)
In a recent change to the SPI subsystem [1], a new `delay` struct was added
to replace the `delay_usecs`. This change replaces the current
`delay_usecs` with `delay` for this driver.

The `spi_transfer_delay_exec()` function [in the SPI framework] makes sure
that both `delay_usecs` & `delay` are used (in this order to preserve
backwards compatibility).

[1] commit bebcfd272df6 ("spi: introduce `delay` field for
`spi_transfer` + spi_transfer_delay_exec()")

Signed-off-by: Sergiu Cuciurean <sergiu.cuciurean@analog.com>
Tested-by: Ronald Tschalär <ronald@innovation.ch>
Reviewed-by: Ronald Tschalär <ronald@innovation.ch>
Link: https://lore.kernel.org/r/20200227124534.23399-1-sergiu.cuciurean@analog.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
drivers/input/keyboard/applespi.c

index 8053a3d..d222231 100644 (file)
@@ -554,7 +554,8 @@ static void applespi_setup_read_txfrs(struct applespi_data *applespi)
        memset(dl_t, 0, sizeof(*dl_t));
        memset(rd_t, 0, sizeof(*rd_t));
 
-       dl_t->delay_usecs = applespi->spi_settings.spi_cs_delay;
+       dl_t->delay.value = applespi->spi_settings.spi_cs_delay;
+       dl_t->delay.unit = SPI_DELAY_UNIT_USECS;
 
        rd_t->rx_buf = applespi->rx_buffer;
        rd_t->len = APPLESPI_PACKET_SIZE;
@@ -583,14 +584,17 @@ static void applespi_setup_write_txfrs(struct applespi_data *applespi)
         * end up with an extra unnecessary (but harmless) cs assertion and
         * deassertion.
         */
-       wt_t->delay_usecs = SPI_RW_CHG_DELAY_US;
+       wt_t->delay.value = SPI_RW_CHG_DELAY_US;
+       wt_t->delay.unit = SPI_DELAY_UNIT_USECS;
        wt_t->cs_change = 1;
 
-       dl_t->delay_usecs = applespi->spi_settings.spi_cs_delay;
+       dl_t->delay.value = applespi->spi_settings.spi_cs_delay;
+       dl_t->delay.unit = SPI_DELAY_UNIT_USECS;
 
        wr_t->tx_buf = applespi->tx_buffer;
        wr_t->len = APPLESPI_PACKET_SIZE;
-       wr_t->delay_usecs = SPI_RW_CHG_DELAY_US;
+       wr_t->delay.value = SPI_RW_CHG_DELAY_US;
+       wr_t->delay.unit = SPI_DELAY_UNIT_USECS;
 
        st_t->rx_buf = applespi->tx_status;
        st_t->len = APPLESPI_STATUS_SIZE;