Hi Ben, (the "m68k" later in the thread caught my attention ;-) On Tue, Jun 12, 2018 at 2:02 AM Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx> wrote: > There are still quite a few cases where a device might want to get to a > different node of the device-tree, obtain the resources and map them. > > Drivers doing that currently open code the whole thing, which is error > proe. > > We have of_iomap() and of_io_request_and_map() but they both have shortcomings, > such as not returning the size of the resource found (which can be necessary) > and not being "managed". > > This adds a devm_of_iomap() that provides all of these and should probably > replace uses of the above in most drivers. > > Signed-off-by: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx> Thanks for your patch! > --- a/include/linux/of_address.h > +++ b/include/linux/of_address.h > @@ -40,6 +40,11 @@ extern void __iomem *of_iomap(struct device_node *device, int index); > void __iomem *of_io_request_and_map(struct device_node *device, > int index, const char *name); > > +/* Request and map, wrapper on devm_ioremap_resource */ > +extern void __iomem *devm_of_iomap(struct device *dev, > + struct device_node *node, int index, > + resource_size_t *size); > + > /* Extract an address from a device, returns the region size and > * the address space flags too. The PCI version uses a BAR number > * instead of an absolute index Do you need a dummy for !CONFIG_OF_ADDRESS, to aid compile-testing? Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html