led: Move OF "label" property parsing to core
Every driver in drivers/led/ currently does some form of "label" OF property parsing in its bind() callback. Move this label parsing to LED core, since this "label" OF property is a generic property. This permits code deduplication in subseuqent patches. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Alex Nemirovsky <alex.nemirovsky@cortina-access.com> Cc: Patrick Delaunay <patrick.delaunay@foss.st.com> Cc: Philippe Reynes <philippe.reynes@softathome.com> Cc: Sean Anderson <seanga2@gmail.com> Cc: Simon Glass <sjg@chromium.org> Cc: Steven Lawrance <steven.lawrance@softathome.com>
This commit is contained in:
parent
aecb338163
commit
83c63f0d11
1 changed files with 12 additions and 0 deletions
|
@ -95,8 +95,20 @@ int led_default_state(void)
|
|||
return ret;
|
||||
}
|
||||
|
||||
static int led_post_bind(struct udevice *dev)
|
||||
{
|
||||
struct led_uc_plat *uc_plat = dev_get_uclass_plat(dev);
|
||||
|
||||
uc_plat->label = dev_read_string(dev, "label");
|
||||
if (!uc_plat->label)
|
||||
uc_plat->label = ofnode_get_name(dev_ofnode(dev));
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
UCLASS_DRIVER(led) = {
|
||||
.id = UCLASS_LED,
|
||||
.name = "led",
|
||||
.per_device_plat_auto = sizeof(struct led_uc_plat),
|
||||
.post_bind = led_post_bind,
|
||||
};
|
||||
|
|
Loading…
Reference in a new issue