leds: syscon: Use device property API

Replace the DT-specific of_property_read_u32() calls and the
dev_of_node()/of_fwnode_handle() roundtrip with their
device/fwnode equivalents. Behaviour is unchanged for device
tree: device_property_read_u32() and dev_fwnode() operate on the
same node, and the fallback from "reg" to "offset" is preserved.

Use dev_fwnode() for init_data.fwnode; unlike a child node from
a scoped iterator, the platform device's own node is held by the
driver core for the device lifetime.

Assisted-by: opencode:deepseek-v4-flash-free
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://patch.msgid.link/20260907202436.42304-1-rosenp@gmail.com
Signed-off-by: Lee Jones <lee@kernel.org>
This commit is contained in:
Rosen Penev 2026-09-07 13:24:36 -07:00 committed by Lee Jones
parent 8b35269884
commit ceb3263b27

View File

@ -56,7 +56,6 @@ static int syscon_led_probe(struct platform_device *pdev)
{
struct led_init_data init_data = {};
struct device *dev = &pdev->dev;
struct device_node *np = dev_of_node(dev);
struct device *parent;
struct regmap *map;
struct syscon_led *sled;
@ -81,13 +80,13 @@ static int syscon_led_probe(struct platform_device *pdev)
sled->map = map;
if (of_property_read_u32(np, "reg", &sled->offset) &&
of_property_read_u32(np, "offset", &sled->offset))
if (device_property_read_u32(dev, "reg", &sled->offset) &&
device_property_read_u32(dev, "offset", &sled->offset))
return -EINVAL;
if (of_property_read_u32(np, "mask", &sled->mask))
if (device_property_read_u32(dev, "mask", &sled->mask))
return -EINVAL;
init_data.fwnode = of_fwnode_handle(np);
init_data.fwnode = dev_fwnode(dev);
state = led_init_default_state_get(init_data.fwnode);
switch (state) {