c6e126de43
In "Device Tree powered" systems, platform devices are usually massively populated with of_platform_populate() call, executed at some level of initcalls, either by generic architecture or by platform-specific code. There are situations though where certain devices must be created (and bound with drivers) before all the others. This presents a challenge, as devices created explicitly would be created again by of_platform_populate(). This patch tries to solve that issue in a generic way, adding a "populated" flag for a DT node description. Subsequent of_platform_populate() will skip such nodes (and its children) in a similar way to the non-available ones. This patch also adds of_platform_depopulate() as an operation complementary to the _populate() one. It removes a platform or an amba device populated from the Device Tree, together with its all children (leaving, however, devices without associated of_node untouched) clearing the "populated" flag on the way. Signed-off-by: Pawel Moll <pawel.moll@arm.com> Reviewed-by: Rob Herring <robh@kernel.org> Acked-by: Grant Likely <grant.likely@linaro.org> |
||
---|---|---|
.. | ||
testcase-data | ||
Kconfig | ||
Makefile | ||
address.c | ||
base.c | ||
device.c | ||
fdt.c | ||
irq.c | ||
of_mdio.c | ||
of_mtd.c | ||
of_net.c | ||
of_pci.c | ||
of_pci_irq.c | ||
of_private.h | ||
of_reserved_mem.c | ||
pdt.c | ||
platform.c | ||
selftest.c |