drivers: use devfdt_get_addr_ptr when cast to pointer
authorJohan Jonker <jbx6244@gmail.com>
Mon, 13 Mar 2023 00:32:44 +0000 (01:32 +0100)
committerKever Yang <kever.yang@rock-chips.com>
Sat, 6 May 2023 09:28:18 +0000 (17:28 +0800)
The fdt_addr_t and phys_addr_t size have been decoupled. A 32bit CPU
can expect 64-bit data from the device tree parser, so use
devfdt_get_addr_ptr instead of the devfdt_get_addr function in
the various files in the drivers directory that cast to a pointer.

Signed-off-by: Johan Jonker <jbx6244@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
drivers/clk/at91/sama7g5.c
drivers/clk/at91/sckc.c
drivers/spi/mtk_snor.c
drivers/spi/mtk_spim.c

index 8bd9c14..3abd220 100644 (file)
@@ -1103,7 +1103,7 @@ static const struct pmc_clk_setup sama7g5_clk_setup[] = {
 
 static int sama7g5_clk_probe(struct udevice *dev)
 {
-       void __iomem *base = (void *)devfdt_get_addr(dev);
+       void __iomem *base = devfdt_get_addr_ptr(dev);
        unsigned int *clkmuxallocs[SAMA7G5_MAX_MUX_ALLOCS];
        unsigned int *muxallocs[SAMA7G5_MAX_MUX_ALLOCS];
        const char *p[10];
index 34ce611..43136ab 100644 (file)
@@ -123,7 +123,7 @@ U_BOOT_DRIVER(at91_sam9x60_td_slck) = {
 static int at91_sam9x60_sckc_probe(struct udevice *dev)
 {
        struct sam9x60_sckc *sckc = dev_get_priv(dev);
-       void __iomem *base = (void *)devfdt_get_addr(dev);
+       void __iomem *base = devfdt_get_addr_ptr(dev);
        const char *slow_rc_osc, *slow_osc;
        const char *parents[2];
        struct clk *clk, c;
index 04f588a..4b7d4a6 100644 (file)
@@ -470,7 +470,7 @@ static int mtk_snor_probe(struct udevice *bus)
        int ret;
        u32 reg;
 
-       priv->base = (void __iomem *)devfdt_get_addr(bus);
+       priv->base = devfdt_get_addr_ptr(bus);
        if (!priv->base)
                return -EINVAL;
 
index a7c0fc5..ebb8ee8 100644 (file)
@@ -641,7 +641,7 @@ static int mtk_spim_probe(struct udevice *dev)
        struct mtk_spim_priv *priv = dev_get_priv(dev);
        int ret;
 
-       priv->base = (void __iomem *)devfdt_get_addr(dev);
+       priv->base = devfdt_get_addr_ptr(dev);
        if (!priv->base)
                return -EINVAL;