[PATCH v3] of: Keep track of populated platform devices
From: Grant Likely <hidden>
Date: 2014-05-14 11:05:47
Also in:
linux-devicetree
On Tue, 13 May 2014 07:24:50 -0500, Rob Herring [off-list ref] wrote:
On Tue, May 13, 2014 at 6:48 AM, Pawel Moll [off-list ref] wrote:quoted
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. Once set, this device will never be created again via of_* API, so of_platform_populate() will skip such nodes (and its children) in a similar way to the non-available ones. The flag is cleared when a device is being removed and returns the DT node by calling of_device_node_put() (it was missing from the amba device release function, added). Signed-off-by: Pawel Moll <redacted>A few formatting nits, but otherwise: Reviewed-by: Rob Herring <robh@kernel.org>
Acked-by: Grant Likely <redacted> g.