On Fri, Sep 27, 2024 at 06:58:33PM +0530, Hardevsinh Palaniya wrote: > Sparse warnings: > > drivers/spi/spi-fsl-qspi.c:635:25: warning: cast from restricted __be32 > > Signed-off-by: Hardevsinh Palaniya <hardevsinh.palaniya@xxxxxxxxxxxxxxxxx> > --- > drivers/spi/spi-fsl-qspi.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/spi/spi-fsl-qspi.c b/drivers/spi/spi-fsl-qspi.c > index 79bac30e79af..e4a2a6049e33 100644 > --- a/drivers/spi/spi-fsl-qspi.c > +++ b/drivers/spi/spi-fsl-qspi.c > @@ -632,7 +632,7 @@ static int fsl_qspi_readl_poll_tout(struct fsl_qspi *q, void __iomem *base, > u32 reg; > > if (!q->devtype_data->little_endian) > - mask = (u32)cpu_to_be32(mask); > + mask =(__force u32)cpu_to_be32(mask); Most this kind warning report the real problem. I don't suggest fix as it the 'if branch' should be removed. and simple return read_poll_timeout(qspi_readl, reg, !(reg & mask), delay_us, timeout_us, q, base); qspi_readl() already handle endian problem. Frank > > return readl_poll_timeout(base, reg, !(reg & mask), delay_us, > timeout_us); > -- > 2.43.0 >