Re: spi-imx: wait_for_completion should timeout even in non-DMA transfer cases

From: Jean-Michel Hautbois
Date: Mon Sep 21 2015 - 05:09:20 EST


2015-09-19 19:56 GMT+02:00 Mark Brown <broonie@xxxxxxxxxx>:
> On Fri, Sep 18, 2015 at 02:38:27PM +0200, Jean-Michel Hautbois wrote:
>> Hi,
>>
>> I am wondering why in spi-imx the spi_imx_pio_transfer() function is
>> calling wait_for_completion() and not wait_for_completion_timeout() as
>> in the spi_imx_dma_transfer() one.
>> I can't see a good reason for this, maybe should it be calculated
>> based on the spi clock and transfer->len, or at least be the same as
>> IMX_DMA_TIMEOUT which is 3 seconds ?
>> If you want it, I have a patch, just tell me if you are interested and
>> if you prefer a calculated timeout or even something else ?
>
> A calculated timeout is probably best.

Well, it depends...
If you have a 20MHz clock, then you can transfer a byte in 4Âs.
As most of the time pio_transfer is used for 8 to 32 bytes max, it
would be irrelevant to use such a small timeout.
I can obviously do it, but not sure if using a small (say, 100ms)
timeout would not be better.

JM
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/