Message ID | 20210912031516.24885-3-bmeng.cn@gmail.com |
---|---|
State | Accepted |
Commit | d710c7e84187088cb157ab4131ca50a1236a931a |
Delegated to: | Andes |
Headers | show |
Series | [1/9] cache: sifive: Fix -Wint-to-pointer-cast warning | expand |
On Sun, Sep 12, 2021 at 11:15:10AM +0800, Bin Meng wrote: > dev_read_addr() returns a value of type fdt_addr_t which is a 64-bit > address and plat->base is a pointer. In a 32-bit build, this causes the > following warning seen when building sifive-gpio.c: > > warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] > > Change to use dev_read_addr_ptr(). > > Signed-off-by: Bin Meng <bmeng.cn@gmail.com> > --- > > drivers/gpio/sifive-gpio.c | 6 ++---- > 1 file changed, 2 insertions(+), 4 deletions(-) Reviewed-by: Leo Yu-Chi Liang <ycliang@andestech.com>
diff --git a/drivers/gpio/sifive-gpio.c b/drivers/gpio/sifive-gpio.c index abd1f629b9..151f484e8f 100644 --- a/drivers/gpio/sifive-gpio.c +++ b/drivers/gpio/sifive-gpio.c @@ -157,13 +157,11 @@ static const struct dm_gpio_ops sifive_gpio_ops = { static int sifive_gpio_of_to_plat(struct udevice *dev) { struct sifive_gpio_plat *plat = dev_get_plat(dev); - fdt_addr_t addr; - addr = dev_read_addr(dev); - if (addr == FDT_ADDR_T_NONE) + plat->base = dev_read_addr_ptr(dev); + if (!plat->base) return -EINVAL; - plat->base = (void *)addr; return 0; }
dev_read_addr() returns a value of type fdt_addr_t which is a 64-bit address and plat->base is a pointer. In a 32-bit build, this causes the following warning seen when building sifive-gpio.c: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] Change to use dev_read_addr_ptr(). Signed-off-by: Bin Meng <bmeng.cn@gmail.com> --- drivers/gpio/sifive-gpio.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-)