lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID:
 <PN0P287MB28435966E53B6BA943340A2AFF742@PN0P287MB2843.INDP287.PROD.OUTLOOK.COM>
Date: Sat, 28 Sep 2024 06:16:49 +0000
From: Hardevsinh Palaniya <hardevsinh.palaniya@...iconsignals.io>
To: Frank Li <Frank.li@....com>
CC: "linux-spi@...r.kernel.org" <linux-spi@...r.kernel.org>,
	"olteanv@...il.com" <olteanv@...il.com>, "broonie@...nel.org"
	<broonie@...nel.org>, Han Xu <han.xu@....com>, Shawn Guo
	<shawnguo@...nel.org>, Sascha Hauer <s.hauer@...gutronix.de>, Pengutronix
 Kernel Team <kernel@...gutronix.de>, Fabio Estevam <festevam@...il.com>,
	Haibo Chen <haibo.chen@....com>, Yogesh Gaur <yogeshgaur.83@...il.com>,
	"imx@...ts.linux.dev" <imx@...ts.linux.dev>, "linux-kernel@...r.kernel.org"
	<linux-kernel@...r.kernel.org>, "linux-arm-kernel@...ts.infradead.org"
	<linux-arm-kernel@...ts.infradead.org>
Subject: Re: [PATCH 3/4] spi: spi-imx: Fix casting warnings

Hi Frank,

Thanks for suggestions

>>  static void mx53_ecspi_rx_target(struct spi_imx_data *spi_imx)
>>  {
>> -     u32 val = be32_to_cpu(readl(spi_imx->base + MXC_CSPIRXDATA));
>> +     u32 val = readl(spi_imx->base + MXC_CSPIRXDATA);
>
>be32_to_cpu() is necessary in little endian system. You can't simple remove
>it. you can use ioread32be here.

I agree , i will update with ioread32be

>>
>>       if (spi_imx->rx_buf) {
>>               int n_bytes = spi_imx->target_burst % sizeof(val);
>> @@ -436,7 +436,7 @@ static void mx53_ecspi_tx_target(struct spi_imx_data *spi_imx)
>>       if (spi_imx->tx_buf) {
>>               memcpy(((u8 *)&val) + sizeof(val) - n_bytes,
>>                      spi_imx->tx_buf, n_bytes);
>> -             val = cpu_to_be32(val);
>> +             val = (__force u32)cpu_to_be32(val);
>>               spi_imx->tx_buf += n_bytes;
>>       }
>
>Original code logic is strange, you'd better to remove cpu_to_be32 here.

I will remove 

>
>below writel change to iowrite32be().

Sure 

>
>Frank

Best Regards,
Hardev


________________________________________
From: Frank Li <Frank.li@....com>
Sent: Friday, September 27, 2024 10:23 PM
To: Hardevsinh Palaniya <hardevsinh.palaniya@...iconsignals.io>
Cc: linux-spi@...r.kernel.org <linux-spi@...r.kernel.org>; olteanv@...il.com <olteanv@...il.com>; broonie@...nel.org <broonie@...nel.org>; Han Xu <han.xu@....com>; Shawn Guo <shawnguo@...nel.org>; Sascha Hauer <s.hauer@...gutronix.de>; Pengutronix Kernel Team <kernel@...gutronix.de>; Fabio Estevam <festevam@...il.com>; Haibo Chen <haibo.chen@....com>; Yogesh Gaur <yogeshgaur.83@...il.com>; imx@...ts.linux.dev <imx@...ts.linux.dev>; linux-kernel@...r.kernel.org <linux-kernel@...r.kernel.org>; linux-arm-kernel@...ts.infradead.org <linux-arm-kernel@...ts.infradead.org>
Subject: Re: [PATCH 3/4] spi: spi-imx: 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:34PM +0530, Hardevsinh Palaniya wrote:
> Sparse warnings:
>
> drivers/spi/spi-imx.c:410:19: warning: cast to restricted __be32
> drivers/spi/spi-imx.c:410:19: warning: cast to restricted __be32
> drivers/spi/spi-imx.c:410:19: warning: cast to restricted __be32
> drivers/spi/spi-imx.c:410:19: warning: cast to restricted __be32
> drivers/spi/spi-imx.c:410:19: warning: cast to restricted __be32
> drivers/spi/spi-imx.c:410:19: warning: cast to restricted __be32
> drivers/spi/spi-imx.c:439:21: warning: incorrect type in assignment (different base types)
> drivers/spi/spi-imx.c:439:21:    expected unsigned int [addressable] [usertype] val
> drivers/spi/spi-imx.c:439:21:    got restricted __be32 [usertype]
>
> Signed-off-by: Hardevsinh Palaniya <hardevsinh.palaniya@...iconsignals.io>
> ---
>  drivers/spi/spi-imx.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/spi/spi-imx.c b/drivers/spi/spi-imx.c
> index 85bd1a82a34e..8d09d9c1c556 100644
> --- a/drivers/spi/spi-imx.c
> +++ b/drivers/spi/spi-imx.c
> @@ -407,7 +407,7 @@ static void spi_imx_buf_tx_swap(struct spi_imx_data *spi_imx)
>
>  static void mx53_ecspi_rx_target(struct spi_imx_data *spi_imx)
>  {
> -     u32 val = be32_to_cpu(readl(spi_imx->base + MXC_CSPIRXDATA));
> +     u32 val = readl(spi_imx->base + MXC_CSPIRXDATA);

be32_to_cpu() is necessary in little endian system. You can't simple remove
it. you can use ioread32be here.

>
>       if (spi_imx->rx_buf) {
>               int n_bytes = spi_imx->target_burst % sizeof(val);
> @@ -436,7 +436,7 @@ static void mx53_ecspi_tx_target(struct spi_imx_data *spi_imx)
>       if (spi_imx->tx_buf) {
>               memcpy(((u8 *)&val) + sizeof(val) - n_bytes,
>                      spi_imx->tx_buf, n_bytes);
> -             val = cpu_to_be32(val);
> +             val = (__force u32)cpu_to_be32(val);
>               spi_imx->tx_buf += n_bytes;
>       }

Original code logic is strange, you'd better to remove cpu_to_be32 here.

below writel change to iowrite32be().

Frank

>
> --
> 2.43.0
>

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ