[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200229032616.GA27264@innovation.ch>
Date: Fri, 28 Feb 2020 19:26:16 -0800
From: "Life is hard, and then you die" <ronald@...ovation.ch>
To: Sergiu Cuciurean <sergiu.cuciurean@...log.com>
Cc: linux-kernel@...r.kernel.org, linux-input@...r.kernel.org,
dmitry.torokhov@...il.com, nikolas@....org,
gregkh@...uxfoundation.org, andriy.shevchenko@...ux.intel.com,
maowenan@...wei.com
Subject: Re: [PATCH] input: keyboard: applespi: Use new structure for SPI
transfer delays
On Thu, Feb 27, 2020 at 02:45:34PM +0200, Sergiu Cuciurean wrote:
> 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@...log.com>
> ---
> drivers/input/keyboard/applespi.c | 12 ++++++++----
> 1 file changed, 8 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/input/keyboard/applespi.c b/drivers/input/keyboard/applespi.c
> index d38398526965..d6a847e5f7e4 100644
> --- a/drivers/input/keyboard/applespi.c
> +++ b/drivers/input/keyboard/applespi.c
> @@ -545,7 +545,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;
> @@ -574,14 +575,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;
> --
> 2.17.1
Looks good to me and tested to confirm things still work.
Cheers,
Ronald
Powered by blists - more mailing lists