Re: [PATCH 2/2] iio: at91-sama5d2: Limit requested watermark value to hwfifo size

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Jonathan,

Le sam., juin 4 2022 at 16:05:57 +0100, Jonathan Cameron <jic23@xxxxxxxxxx> a écrit :
On Sat, 22 Jan 2022 17:04:47 +0000
Jonathan Cameron <jic23@xxxxxxxxxx> wrote:

 On Mon, 17 Jan 2022 10:25:12 +0000
 Paul Cercueil <paul@xxxxxxxxxxxxxxx> wrote:

> Instead of returning an error if the watermark value is too high, which > the core will silently ignore anyway, limit the value to the hardware > FIFO size; a lower-than-requested value is still better than using the
 > default, which is usually 1.

There is another potential error condition in this function which will
 also be ignored by the core.

 As such whilst I agree this is a sensible thing to do in this
particular case I think we should also be handling the error in the core.

 I think it would be better to clean that up at the same time
as these improvements - particularly as I'd guess you have a convenient
 test setup to check the error unwind is correct?

Hi Paul,

I was trawling through patchwork and realised this one is stalled.

Thoughts on the above?

Totally forgot about this patch.

Aren't you afraid that if we start handling these errors in the core, we'll somehow break the ABI?

-Paul

Thanks,

Jonathan


 Thanks,

 Jonathan

 >
 > Cc: Eugen Hristev <eugen.hristev@xxxxxxxxxxxxx>
 > Cc: Nicolas Ferre <nicolas.ferre@xxxxxxxxxxxxx>
 > Cc: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxx>
 > Cc: Ludovic Desroches <ludovic.desroches@xxxxxxxxxxxxx>
 > Signed-off-by: Paul Cercueil <paul@xxxxxxxxxxxxxxx>
 > ---
 >  drivers/iio/adc/at91-sama5d2_adc.c | 2 +-
 >  1 file changed, 1 insertion(+), 1 deletion(-)
 >
> diff --git a/drivers/iio/adc/at91-sama5d2_adc.c b/drivers/iio/adc/at91-sama5d2_adc.c
 > index 854b1f81d807..5cc84f4a17bb 100644
 > --- a/drivers/iio/adc/at91-sama5d2_adc.c
 > +++ b/drivers/iio/adc/at91-sama5d2_adc.c
> @@ -1752,7 +1752,7 @@ static int at91_adc_set_watermark(struct iio_dev *indio_dev, unsigned int val)
 >  	int ret;
 >
 >  	if (val > AT91_HWFIFO_MAX_SIZE)
 > -		return -EINVAL;
 > +		val = AT91_HWFIFO_MAX_SIZE;
 >
 >  	if (!st->selected_trig->hw_trig) {
 >  		dev_dbg(&indio_dev->dev, "we need hw trigger for DMA\n");








[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Input]     [Linux Kernel]     [Linux SCSI]     [X.org]

  Powered by Linux