[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <d3020c80-90f7-e73a-5ff3-6c503b9fdea9@gmail.com>
Date: Tue, 28 Apr 2020 22:25:05 +0200
From: Jacek Anaszewski <jacek.anaszewski@...il.com>
To: Dan Murphy <dmurphy@...com>, pavel@....cz
Cc: linux-leds@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v21 04/16] leds: lp50xx: Add the LP50XX family of the RGB
LED driver
Hi Dan,
Thanks for the update. There is one remnant from the
previous stages that you already scheduled for removal AFAIR.
On 4/28/20 6:03 PM, Dan Murphy wrote:
> Introduce the LP5036/30/24/18/12/9 RGB LED driver.
> The difference in these parts are the number of
> LED outputs where the:
>
> LP5036 can control 36 LEDs
> LP5030 can control 30 LEDs
> LP5024 can control 24 LEDs
> LP5018 can control 18 LEDs
> LP5012 can control 12 LEDs
> LP5009 can control 9 LEDs
>
> The device has the ability to group LED output into control banks
> so that multiple LED banks can be controlled with the same mixing and
> brightness. Inversely the LEDs can also be controlled independently.
>
> Signed-off-by: Dan Murphy <dmurphy@...com>
> ---
[...]
> +
> + init_data.fwnode = child;
> + init_data.devicename = priv->client->name;
Namely this line. We don't need devicename for new drivers like this.
> + fwnode_property_read_string(child, "linux,default-trigger",
> + &led->led_dev.default_trigger);
> + num_colors = 0;
> +
> + /* There are only 3 LEDs per module otherwise they should be
> + banked which also is presented as 3 LEDs*/
> + mc_led_info = devm_kcalloc(priv->dev, LP50XX_LEDS_PER_MODULE,
> + sizeof(*mc_led_info), GFP_KERNEL);
> + if (!mc_led_info)
> + return -ENOMEM;
> +
> + fwnode_for_each_child_node(child, led_node) {
> + ret = fwnode_property_read_u32(led_node, "color",
> + &color_id);
> + if (ret)
> + dev_err(priv->dev, "Cannot read color\n");
> +
> + mc_led_info[num_colors].color_index = color_id;
> + num_colors++;
> + }
> +
> + led->priv = priv;
> + led->mc_cdev.num_colors = num_colors;
> + led->mc_cdev.subled_info = mc_led_info;
> + led_cdev = &led->mc_cdev.led_cdev;
> + led_cdev->brightness_set_blocking = lp50xx_brightness_set;
> + ret = devm_led_classdev_multicolor_register_ext(&priv->client->dev,
> + &led->mc_cdev,
> + &init_data);
>[...]
--
Best regards,
Jacek Anaszewski
Powered by blists - more mailing lists