[PATCH 07/11] sysreset: socfpga: Use parent device for reading base address

Simon Glass sjg at chromium.org
Mon Apr 11 20:35:11 CEST 2022


On Fri, 1 Apr 2022 at 06:44, Paweł Anikiel <pan at semihalf.com> wrote:
>
> This driver is a child of the rstmgr driver, both of which share the
> same devicetree node. As a result, passing the child's udevice pointer
> to dev_read_addr_ptr results in a failure of reading the #address-cells
> property. Use the parent udevice pointer instead.
>
> Signed-off-by: Paweł Anikiel <pan at semihalf.com>
> ---
>  drivers/sysreset/sysreset_socfpga.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

Reviewed-by: Simon Glass <sjg at chromium.org>

>
> diff --git a/drivers/sysreset/sysreset_socfpga.c b/drivers/sysreset/sysreset_socfpga.c
> index e38296ac3f..9b62dd5eab 100644
> --- a/drivers/sysreset/sysreset_socfpga.c
> +++ b/drivers/sysreset/sysreset_socfpga.c
> @@ -40,7 +40,7 @@ static int socfpga_sysreset_probe(struct udevice *dev)

Perhaps this function
>  {
>         struct socfpga_sysreset_data *data = dev_get_priv(dev);
>
> -       data->rstmgr_base = dev_read_addr_ptr(dev);
> +       data->rstmgr_base = dev_read_addr_ptr(dev_get_parent(dev));
>         return 0;
>  }
>
> --
> 2.35.1.1094.g7c7d902a7c-goog
>

This is pretty odd and I think it could use a comment, particularly as
this driver doesn't seem to be in the device tree.

Regards,
Simon


More information about the U-Boot mailing list