leds: pwm: Clear the led structure before parsing each child node

I defined 2 leds in the device tree, in the 1st led node, the
max-brightness is set to 248, while in the 2nd led node, I
mis-spelled the max-brightness to max-brighttness, but the driver
is still able to get the max-brightness 248 for the 2nd node,  that
is because the led structure is not cleared before parsing each child
node.

	pwmleds {
		compatible = "pwm-leds";

		pwm-green {
			...
			max-brightness = <248>;
		};

		pwm-red {
		        ...
			max-brighttness = <128>;
		};

Signed-off-by: Hui Wang <hui.wang@canonical.com>
Signed-off-by: Lee Jones <lee@kernel.org>
Link: https://lore.kernel.org/r/20221220073335.393489-1-hui.wang@canonical.com
This commit is contained in:
Hui Wang 2022-12-20 15:33:35 +08:00 committed by Lee Jones
parent abc3100fcb
commit d8960dfb9d
1 changed files with 2 additions and 2 deletions

View File

@ -138,9 +138,9 @@ static int led_pwm_create_fwnode(struct device *dev, struct led_pwm_priv *priv)
struct led_pwm led; struct led_pwm led;
int ret; int ret;
memset(&led, 0, sizeof(led));
device_for_each_child_node(dev, fwnode) { device_for_each_child_node(dev, fwnode) {
memset(&led, 0, sizeof(led));
ret = fwnode_property_read_string(fwnode, "label", &led.name); ret = fwnode_property_read_string(fwnode, "label", &led.name);
if (ret && is_of_node(fwnode)) if (ret && is_of_node(fwnode))
led.name = to_of_node(fwnode)->name; led.name = to_of_node(fwnode)->name;