From: Dan Murphy <dmurphy@ti.com> To: Pavel Machek <pavel@ucw.cz> Cc: <jacek.anaszewski@gmail.com>, <robh@kernel.org>, <marek.behun@nic.cz>, <devicetree@vger.kernel.org>, <linux-leds@vger.kernel.org>, <linux-kernel@vger.kernel.org>, <linux-arm-kernel@lists.infradead.org> Subject: Re: [PATCH v31 03/12] leds: lp50xx: Add the LP50XX family of the RGB LED driver Date: Tue, 21 Jul 2020 19:04:54 -0500 [thread overview] Message-ID: <c774fab9-124b-da2e-6f7c-614f34322942@ti.com> (raw) In-Reply-To: <20200721210554.GC5966@amd> Pavel On 7/21/20 4:05 PM, Pavel Machek wrote: > Hi! > >> 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. > Inversely? I will revise it. > >> --- /dev/null >> +++ b/drivers/leds/leds-lp50xx.c >> @@ -0,0 +1,784 @@ >> +// SPDX-License-Identifier: GPL-2.0 >> +// TI LP50XX LED chip family driver >> +// Copyright (C) 2018 Texas Instruments Incorporated - http://www.ti.com/ >> + > Can we get https here and in the binding document? > > Please run this through checkpatch -- I believe it will have some > comments. OK. > >> + >> + device_for_each_child_node(priv->dev, child) { >> + led = &priv->leds[i]; >> + ret = fwnode_property_count_u32(child, "reg"); >> + if (ret < 0) { >> + dev_err(&priv->client->dev, >> + "reg property is invalid\n"); >> + return -EINVAL; > is handle_put(child) needed here? It will be after I refactor the label >> + } >> + if (ret > 1) { >> + priv->num_of_banked_leds = ret; >> + if (priv->num_of_banked_leds > >> + priv->chip_info->max_modules) { >> + dev_err(&priv->client->dev, >> + "reg property is invalid\n"); >> + ret = -EINVAL; >> + fwnode_handle_put(child); >> + goto child_out; >> + } >> + >> + ret = fwnode_property_read_u32_array(child, >> + "reg", >> + led_banks, >> + ret); > Move this to subfunction to reduce the indentation? (Or, just refactor > it somehow). Actually I can just put it all on the same line since the 80 character requirement is relaxed. >> + if (ret) { >> + dev_err(&priv->client->dev, >> + "reg property is missing\n"); >> + fwnode_handle_put(child); >> + goto child_out; >> + } > Create label that does the handle_put so you don't need to repeat it > quite so often? I will rework it for all > >> + 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; > This uses undefined value. OK needs to goto to out. > >> + ret = lp50xx_reset(led); > Does the GPIO need to be disabled before enabling it for reset? You mean toggle the GPIO? Yes it should be toggled I will update it. Dan > Best regards, > Pavel >
WARNING: multiple messages have this Message-ID (diff)
From: Dan Murphy <dmurphy@ti.com> To: Pavel Machek <pavel@ucw.cz> Cc: linux-arm-kernel@lists.infradead.org, robh@kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, marek.behun@nic.cz, jacek.anaszewski@gmail.com, linux-leds@vger.kernel.org Subject: Re: [PATCH v31 03/12] leds: lp50xx: Add the LP50XX family of the RGB LED driver Date: Tue, 21 Jul 2020 19:04:54 -0500 [thread overview] Message-ID: <c774fab9-124b-da2e-6f7c-614f34322942@ti.com> (raw) In-Reply-To: <20200721210554.GC5966@amd> Pavel On 7/21/20 4:05 PM, Pavel Machek wrote: > Hi! > >> 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. > Inversely? I will revise it. > >> --- /dev/null >> +++ b/drivers/leds/leds-lp50xx.c >> @@ -0,0 +1,784 @@ >> +// SPDX-License-Identifier: GPL-2.0 >> +// TI LP50XX LED chip family driver >> +// Copyright (C) 2018 Texas Instruments Incorporated - http://www.ti.com/ >> + > Can we get https here and in the binding document? > > Please run this through checkpatch -- I believe it will have some > comments. OK. > >> + >> + device_for_each_child_node(priv->dev, child) { >> + led = &priv->leds[i]; >> + ret = fwnode_property_count_u32(child, "reg"); >> + if (ret < 0) { >> + dev_err(&priv->client->dev, >> + "reg property is invalid\n"); >> + return -EINVAL; > is handle_put(child) needed here? It will be after I refactor the label >> + } >> + if (ret > 1) { >> + priv->num_of_banked_leds = ret; >> + if (priv->num_of_banked_leds > >> + priv->chip_info->max_modules) { >> + dev_err(&priv->client->dev, >> + "reg property is invalid\n"); >> + ret = -EINVAL; >> + fwnode_handle_put(child); >> + goto child_out; >> + } >> + >> + ret = fwnode_property_read_u32_array(child, >> + "reg", >> + led_banks, >> + ret); > Move this to subfunction to reduce the indentation? (Or, just refactor > it somehow). Actually I can just put it all on the same line since the 80 character requirement is relaxed. >> + if (ret) { >> + dev_err(&priv->client->dev, >> + "reg property is missing\n"); >> + fwnode_handle_put(child); >> + goto child_out; >> + } > Create label that does the handle_put so you don't need to repeat it > quite so often? I will rework it for all > >> + 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; > This uses undefined value. OK needs to goto to out. > >> + ret = lp50xx_reset(led); > Does the GPIO need to be disabled before enabling it for reset? You mean toggle the GPIO? Yes it should be toggled I will update it. Dan > Best regards, > Pavel > _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2020-07-22 0:05 UTC|newest] Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-07-16 18:19 [PATCH v31 00/12] Multicolor Framework v31 Dan Murphy 2020-07-16 18:19 ` Dan Murphy 2020-07-16 18:19 ` [PATCH v31 01/12] leds: multicolor: Introduce a multicolor class definition Dan Murphy 2020-07-16 18:19 ` Dan Murphy 2020-07-20 9:54 ` Pavel Machek 2020-07-20 9:54 ` Pavel Machek 2020-07-20 12:07 ` Dan Murphy 2020-07-20 12:07 ` Dan Murphy 2020-07-16 18:19 ` [PATCH v31 02/12] dt: bindings: lp50xx: Introduce the lp50xx family of RGB drivers Dan Murphy 2020-07-16 18:19 ` Dan Murphy 2020-07-16 18:19 ` [PATCH v31 03/12] leds: lp50xx: Add the LP50XX family of the RGB LED driver Dan Murphy 2020-07-16 18:19 ` Dan Murphy 2020-07-21 21:05 ` Pavel Machek 2020-07-21 21:05 ` Pavel Machek 2020-07-22 0:04 ` Dan Murphy [this message] 2020-07-22 0:04 ` Dan Murphy 2020-07-22 7:10 ` Pavel Machek 2020-07-22 7:10 ` Pavel Machek 2020-07-22 12:26 ` Dan Murphy 2020-07-22 12:26 ` Dan Murphy 2020-07-22 12:39 ` Pavel Machek 2020-07-22 12:39 ` Pavel Machek 2020-07-21 21:07 ` Pavel Machek 2020-07-21 21:07 ` Pavel Machek 2020-07-22 0:05 ` Dan Murphy 2020-07-22 0:05 ` Dan Murphy 2020-07-16 18:19 ` [PATCH v31 04/12] dt-bindings: leds: Convert leds-lp55xx to yaml Dan Murphy 2020-07-16 18:19 ` Dan Murphy 2020-07-16 18:20 ` [PATCH v31 05/12] leds: lp55xx: Convert LED class registration to devm_* Dan Murphy 2020-07-16 18:20 ` Dan Murphy 2020-07-16 18:20 ` [PATCH v31 06/12] leds: lp55xx: Add multicolor framework support to lp55xx Dan Murphy 2020-07-16 18:20 ` Dan Murphy 2020-07-21 21:11 ` Pavel Machek 2020-07-21 21:11 ` Pavel Machek 2020-07-22 16:40 ` Dan Murphy 2020-07-22 16:40 ` Dan Murphy 2020-07-16 18:20 ` [PATCH v31 07/12] ARM: defconfig: u8500: Add LP55XX_COMMON config flag Dan Murphy 2020-07-16 18:20 ` Dan Murphy 2020-07-16 18:20 ` [PATCH v31 08/12] leds: lp5523: Update the lp5523 code to add multicolor brightness function Dan Murphy 2020-07-16 18:20 ` Dan Murphy 2020-07-16 18:20 ` [PATCH v31 09/12] leds: lp5521: Add multicolor framework multicolor brightness support Dan Murphy 2020-07-16 18:20 ` Dan Murphy 2020-07-16 18:20 ` [PATCH v31 10/12] ARM: dts: n900: Add reg property to the LP5523 channel node Dan Murphy 2020-07-16 18:20 ` Dan Murphy 2020-07-16 18:20 ` [PATCH v31 11/12] ARM: dts: imx6dl-yapp4: Add reg property to the lp5562 " Dan Murphy 2020-07-16 18:20 ` Dan Murphy 2020-07-16 18:20 ` [PATCH v31 12/12] ARM: dts: ste-href: Add reg property to the LP5521 channel nodes Dan Murphy 2020-07-16 18:20 ` Dan Murphy
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=c774fab9-124b-da2e-6f7c-614f34322942@ti.com \ --to=dmurphy@ti.com \ --cc=devicetree@vger.kernel.org \ --cc=jacek.anaszewski@gmail.com \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-leds@vger.kernel.org \ --cc=marek.behun@nic.cz \ --cc=pavel@ucw.cz \ --cc=robh@kernel.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.