Re: [PATCH 27/36] tty: synclinkmp: Mark never checked 'readval' as __always_unused

From: Lee Jones
Date: Thu Nov 05 2020 - 06:28:36 EST


On Thu, 05 Nov 2020, David Laight wrote:

> > >> And the loop can be turned into ndelay:
> > >>
> > >> /*
> > >> * Force at least 170ns delay before clearing
> > >> * reset bit. Each read from LCR takes at least
> > >> * 30ns so 10 times for 300ns to be safe.
> > >> */
> > >> for(i=0;i<10;i++)
> > >> readval = *MiscCtrl;
> > >
> > > Again, since I can't test this, I do not want this patch to contain
> > > any functional changes. AFAIC, the 10 register reads must still
> > > happen after this patch is applied.
>
> You can't use ndelay(); the writes can get posted so can appear
> much closer together by the time they get to the actual hardware.
> Multiple volatile reads don't need a target variable.
> (Shouldn't they also real readl()?)
>
> Deleting the driver works...

Will post the removal patches when my tests finish.

--
Lee Jones [李琼斯]
Senior Technical Lead - Developer Services
Linaro.org │ Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog