diff mbox series

[v2] clk: socfpga: fix iomem pointer cast on 64-bit

Message ID 20210314110709.32599-1-krzysztof.kozlowski@canonical.com (mailing list archive)
State Accepted, archived
Headers show
Series [v2] clk: socfpga: fix iomem pointer cast on 64-bit | expand

Commit Message

Krzysztof Kozlowski March 14, 2021, 11:07 a.m. UTC
Pointers should be cast with uintptr_t instead of integer.  This fixes
warning when compile testing on ARM64:

  drivers/clk/socfpga/clk-gate.c: In function ‘socfpga_clk_recalc_rate’:
  drivers/clk/socfpga/clk-gate.c:102:7: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]

Fixes: b7cec13f082f ("clk: socfpga: Look for the GPIO_DB_CLK by its offset")
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Acked-by: Dinh Nguyen <dinguyen@kernel.org>

---

Changes since v1:
1. Add Fixes and Ack.
2. Use uintptr_t (Stephen Boyd).
---
 drivers/clk/socfpga/clk-gate.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Stephen Boyd March 29, 2021, 7:04 p.m. UTC | #1
Quoting Krzysztof Kozlowski (2021-03-14 04:07:09)
> Pointers should be cast with uintptr_t instead of integer.  This fixes
> warning when compile testing on ARM64:
> 
>   drivers/clk/socfpga/clk-gate.c: In function ‘socfpga_clk_recalc_rate’:
>   drivers/clk/socfpga/clk-gate.c:102:7: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
> 
> Fixes: b7cec13f082f ("clk: socfpga: Look for the GPIO_DB_CLK by its offset")
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
> Acked-by: Dinh Nguyen <dinguyen@kernel.org>
> 
> ---

Applied to clk-fixes
Arnd Bergmann April 9, 2021, 7:26 a.m. UTC | #2
From: Arnd Bergmann <arnd@arndb.de>

On Sun, 14 Mar 2021 12:07:09 +0100, Krzysztof Kozlowski wrote:
> Pointers should be cast with uintptr_t instead of integer.  This fixes
> warning when compile testing on ARM64:
> 
>   drivers/clk/socfpga/clk-gate.c: In function ‘socfpga_clk_recalc_rate’:
>   drivers/clk/socfpga/clk-gate.c:102:7: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]

I decided to pull that into the arm/drivers branch as well, to avoid the
build regression. Since the same fix is in the clk tree, there will now
be a duplicated commit in the git history, but I prefer that over introducing
warnings.

[1/1] clk: socfpga: fix iomem pointer cast on 64-bit
      commit: 36841008059caec9667459a7e126efac6379676b

       Arnd
Stephen Boyd April 9, 2021, 5:02 p.m. UTC | #3
Quoting Arnd Bergmann (2021-04-09 00:26:50)
> From: Arnd Bergmann <arnd@arndb.de>
> 
> On Sun, 14 Mar 2021 12:07:09 +0100, Krzysztof Kozlowski wrote:
> > Pointers should be cast with uintptr_t instead of integer.  This fixes
> > warning when compile testing on ARM64:
> > 
> >   drivers/clk/socfpga/clk-gate.c: In function ‘socfpga_clk_recalc_rate’:
> >   drivers/clk/socfpga/clk-gate.c:102:7: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
> 
> I decided to pull that into the arm/drivers branch as well, to avoid the
> build regression. Since the same fix is in the clk tree, there will now
> be a duplicated commit in the git history, but I prefer that over introducing
> warnings.
> 
> [1/1] clk: socfpga: fix iomem pointer cast on 64-bit
>       commit: 36841008059caec9667459a7e126efac6379676b
> 

Ok. I'm sending it off to Linus now.
diff mbox series

Patch

diff --git a/drivers/clk/socfpga/clk-gate.c b/drivers/clk/socfpga/clk-gate.c
index 43ecd507bf83..cf94a12459ea 100644
--- a/drivers/clk/socfpga/clk-gate.c
+++ b/drivers/clk/socfpga/clk-gate.c
@@ -99,7 +99,7 @@  static unsigned long socfpga_clk_recalc_rate(struct clk_hw *hwclk,
 		val = readl(socfpgaclk->div_reg) >> socfpgaclk->shift;
 		val &= GENMASK(socfpgaclk->width - 1, 0);
 		/* Check for GPIO_DB_CLK by its offset */
-		if ((int) socfpgaclk->div_reg & SOCFPGA_GPIO_DB_CLK_OFFSET)
+		if ((uintptr_t) socfpgaclk->div_reg & SOCFPGA_GPIO_DB_CLK_OFFSET)
 			div = val + 1;
 		else
 			div = (1 << val);