Re: [PATCH V3] leds: pca955x: Add ACPI support for pca955x

From: Tin Huynh
Date: Wed Nov 30 2016 - 03:06:38 EST


On Wed, Nov 30, 2016 at 3:01 PM, Jacek Anaszewski
<j.anaszewski@xxxxxxxxxxx> wrote:
>
> On 11/30/2016 08:51 AM, Jacek Anaszewski wrote:
>>
>> Hi Tin,
>>
>> How this patch is different from the one already merged?
>>
>> Best regards,
>> Jacek Anaszewski
>>
>> On 11/30/2016 04:08 AM, Tin Huynh wrote:
>>>
>>> This patch enables ACPI support for leds-pca955x driver.
>>>
>>> Signed-off-by: Tin Huynh <tnhuynh@xxxxxxx>
>>> ---
>>> drivers/leds/leds-pca955x.c | 22 +++++++++++++++++++++-
>>> 1 files changed, 21 insertions(+), 1 deletions(-)
>>>
>>> Change from V2:
>>> -Correct coding conventions.
>>>
>>> Change from V1:
>>> -Remove CONFIG_ACPI.
>>>
>>> diff --git a/drivers/leds/leds-pca955x.c b/drivers/leds/leds-pca955x.c
>>> index 840401a..b168ebe 100644
>>> --- a/drivers/leds/leds-pca955x.c
>>> +++ b/drivers/leds/leds-pca955x.c
>>> @@ -40,6 +40,7 @@
>>> * bits the chip supports.
>>> */
>>>
>>> +#include <linux/acpi.h>
>>> #include <linux/module.h>
>>> #include <linux/delay.h>
>>> #include <linux/string.h>
>>> @@ -100,6 +101,15 @@ struct pca955x_chipdef {
>>> };
>>> MODULE_DEVICE_TABLE(i2c, pca955x_id);
>>>
>>> +static const struct acpi_device_id pca955x_acpi_ids[] = {
>>> + { .id = "PCA9550", .driver_data = pca9550 },
>>> + { .id = "PCA9551", .driver_data = pca9551 },
>>> + { .id = "PCA9552", .driver_data = pca9552 },
>>> + { .id = "PCA9553", .driver_data = pca9553 },
>>> + { }
>
>
> OK, I see that you brought back explicit properties in the
> structure initializer. Is there some vital reason for that?
> You're mentioning "correcting coding conventions" in the
> patch changelog. checkpatch.pl --strict doesn't complain about
> that, so what coding conventions you have on mind?


>
>
>>> +MODULE_DEVICE_TABLE(acpi, pca955x_acpi_ids);
>>> +
>>> struct pca955x {
>>> struct mutex lock;
>>> struct pca955x_led *leds;
>>> @@ -250,7 +260,16 @@ static int pca955x_probe(struct i2c_client *client,
>>> struct led_platform_data *pdata;
>>> int i, err;
>>>
>>> - chip = &pca955x_chipdefs[id->driver_data];
>>> + if (id) {
>>> + chip = &pca955x_chipdefs[id->driver_data];
>>> + } else {
>>> + const struct acpi_device_id *acpi_id;

I added '{}' follow if