Hi Frank, Thanks for the suggestions >> 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 I’m curious about the types of real problems that might arise >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. I agree , it is a good approach since qspi_readl() already handles the endian issue I will change it to your approach. > >Frank Best Regards, Hardev ________________________________________ From: Frank Li <Frank.li@xxxxxxx> Sent: Friday, September 27, 2024 9:10 PM To: Hardevsinh Palaniya <hardevsinh.palaniya@xxxxxxxxxxxxxxxxx> Cc: linux-spi@xxxxxxxxxxxxxxx <linux-spi@xxxxxxxxxxxxxxx>; olteanv@xxxxxxxxx <olteanv@xxxxxxxxx>; broonie@xxxxxxxxxx <broonie@xxxxxxxxxx>; Han Xu <han.xu@xxxxxxx>; Shawn Guo <shawnguo@xxxxxxxxxx>; Sascha Hauer <s.hauer@xxxxxxxxxxxxxx>; Pengutronix Kernel Team <kernel@xxxxxxxxxxxxxx>; Fabio Estevam <festevam@xxxxxxxxx>; Haibo Chen <haibo.chen@xxxxxxx>; Yogesh Gaur <yogeshgaur.83@xxxxxxxxx>; imx@xxxxxxxxxxxxxxx <imx@xxxxxxxxxxxxxxx>; linux-kernel@xxxxxxxxxxxxxxx <linux-kernel@xxxxxxxxxxxxxxx>; linux-arm-kernel@xxxxxxxxxxxxxxxxxxx <linux-arm-kernel@xxxxxxxxxxxxxxxxxxx> Subject: Re: [PATCH 2/4] spi: spi-fsl-qspi: Fix casting warnings CAUTION: This email originated from outside the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe. 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 >