diff options
author | Bin Meng <bmeng.cn@gmail.com> | 2021-08-05 10:41:13 +0300 |
---|---|---|
committer | Anup Patel <anup@brainfault.org> | 2021-08-07 14:56:51 +0300 |
commit | 47a47654e8d3997b059d11bb8845ed0037e88c8e (patch) | |
tree | 39b7eaadcadaa19e40f59f58fd1704dcad366395 /lib/utils/gpio | |
parent | d244f3dbd6cfd241dc1db611c0325daedfcab9c6 (diff) | |
download | opensbi-47a47654e8d3997b059d11bb8845ed0037e88c8e.tar.xz |
lib: utils/fdt: Change addr and size to uint64_t
The maximum address and size encoded in DT are 64-bit numbers, so we
should use uint64_t for 'addr' and 'size' in fdt_get_node_addr_size().
Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Anup Patel <anup.patel@wdc.com>
Diffstat (limited to 'lib/utils/gpio')
-rw-r--r-- | lib/utils/gpio/fdt_gpio_sifive.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/utils/gpio/fdt_gpio_sifive.c b/lib/utils/gpio/fdt_gpio_sifive.c index abc9d72..00d3e14 100644 --- a/lib/utils/gpio/fdt_gpio_sifive.c +++ b/lib/utils/gpio/fdt_gpio_sifive.c @@ -71,15 +71,17 @@ static int sifive_gpio_init(void *fdt, int nodeoff, u32 phandle, { int rc; struct sifive_gpio_chip *chip; + uint64_t addr; if (SIFIVE_GPIO_CHIP_MAX <= sifive_gpio_chip_count) return SBI_ENOSPC; chip = &sifive_gpio_chip_array[sifive_gpio_chip_count]; - rc = fdt_get_node_addr_size(fdt, nodeoff, &chip->addr, NULL); + rc = fdt_get_node_addr_size(fdt, nodeoff, &addr, NULL); if (rc) return rc; + chip->addr = addr; chip->chip.driver = &fdt_gpio_sifive; chip->chip.id = phandle; chip->chip.ngpio = SIFIVE_GPIO_PINS_DEF; |