[PATCH] of: address: treat absent dma-ranges as 1:1 translation
Sascha Hauer
sha at pengutronix.de
Thu May 19 04:56:08 PDT 2022
On Wed, May 18, 2022 at 07:57:45PM +0200, Lucas Stach wrote:
> Some DTs use dma-ranges in child busses without this property being present
> in the parent bus. To avoid failing the address translation, do the same as
> the Linux kernel and treat absence of this property as a 1:1 translation.
>
> Signed-off-by: Lucas Stach <l.stach at pengutronix.de>
> ---
> drivers/of/address.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
Applied, thanks
Sascha
>
> diff --git a/drivers/of/address.c b/drivers/of/address.c
> index 67e8062f5d17..4eafce376d36 100644
> --- a/drivers/of/address.c
> +++ b/drivers/of/address.c
> @@ -301,10 +301,13 @@ static int of_translate_one(struct device_node *parent, struct of_bus *bus,
> *
> * As far as we know, this damage only exists on Apple machines, so
> * This code is only enabled on powerpc. --gcl
> + *
> + * This quirk also applies for 'dma-ranges' which frequently exist in
> + * child nodes without 'dma-ranges' in the parent nodes. --RobH
> */
> ranges = of_get_property(parent, rprop, &rlen);
> #if !defined(CONFIG_PPC)
> - if (ranges == NULL) {
> + if (ranges == NULL && strcmp(rprop, "dma-ranges")) {
> pr_vdebug("OF: no ranges; cannot translate\n");
> return 1;
> }
> --
> 2.35.3
>
>
> _______________________________________________
> barebox mailing list
> barebox at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/barebox
>
--
Pengutronix e.K. | |
Steuerwalder Str. 21 | http://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
More information about the barebox
mailing list