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@xxxxxxxxxxxxxx> > --- > 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@xxxxxxxxxxxxxxxxxxx > 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 | _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox