Message ID | 20211221161721.153396-4-adrian.fiergolski@fastree3d.com |
---|---|
State | Superseded |
Delegated to: | Stefan Roese |
Headers | show |
Series | misc: atsha204a: bug fixes | expand |
On Tue, 21 Dec 2021 17:17:22 +0100
Adrian Fiergolski <adrian.fiergolski@fastree3d.com> wrote:
> This patch replaces use fdtdec_get_addr with recommended fdtdec_get_addr_size_auto_parent.
And why is that required?
If at all, I would rather change it to simple dev_read_addr().
Marek
Hi Marek, Thank you for your review. On 21.12.2021 18:52, Marek Behún wrote: > On Tue, 21 Dec 2021 17:17:22 +0100 > Adrian Fiergolski <adrian.fiergolski@fastree3d.com> wrote: > >> This patch replaces use fdtdec_get_addr with recommended fdtdec_get_addr_size_auto_parent. > And why is that required? I didn't debug why exactly, but it didn't work with my embedded system based on ZynqMP (64bit). I might guess it's related to the fact that, quoting documentation, "This variant hard-codes the number of cells used to represent the address and size based on sizeof(fdt_addr_t) and sizeof(fdt_size_t)". > If at all, I would rather change it to simple dev_read_addr(). Good idea, it's much cleaner. I have just confirmed it works as well. I will share the new version of the patches. Adrian
diff --git a/drivers/misc/atsha204a-i2c.c b/drivers/misc/atsha204a-i2c.c index d264477927..1008b914c2 100644 --- a/drivers/misc/atsha204a-i2c.c +++ b/drivers/misc/atsha204a-i2c.c @@ -388,7 +388,7 @@ static int atsha204a_of_to_plat(struct udevice *dev) fdt_addr_t *priv = dev_get_priv(dev); fdt_addr_t addr; - addr = fdtdec_get_addr(gd->fdt_blob, dev_of_offset(dev), "reg"); + addr = fdtdec_get_addr_size_auto_noparent(gd->fdt_blob, dev_of_offset(dev), "reg", 0, NULL, false); if (addr == FDT_ADDR_T_NONE) { debug("Can't get ATSHA204A I2C base address\n"); return -ENXIO;
This patch replaces use fdtdec_get_addr with recommended fdtdec_get_addr_size_auto_parent. Signed-off-by: Adrian Fiergolski <adrian.fiergolski@fastree3d.com> --- drivers/misc/atsha204a-i2c.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)