RE: [PATCH v6 5/5] mfd: max77541: Add ADI MAX77541/MAX77540 PMIC Support

From: Sahin, Okan
Date: Mon Apr 03 2023 - 07:41:27 EST


>On Tue, 28 Mar 2023, Sahin, Okan wrote:
>
>> >On Wed, 15 Mar 2023, Lee Jones wrote:
>> >
>> >> On Tue, 07 Mar 2023, Okan Sahin wrote:
>> >>
>> >> > MFD driver for MAX77541/MAX77540 to enable its sub devices.
>> >> >
>> >> > The MAX77541 is a multi-function devices. It includes buck
>> >> > converter and ADC.
>> >> >
>> >> > The MAX77540 is a high-efficiency buck converter with two 3A
>> >> > switching phases.
>> >> >
>> >> > They have same regmap except for ADC part of MAX77541.
>> >> >
>> >> > Signed-off-by: Okan Sahin <okan.sahin@xxxxxxxxxx>
>> >> > ---
>> >> > drivers/mfd/Kconfig | 13 ++
>> >> > drivers/mfd/Makefile | 1 +
>> >> > drivers/mfd/max77541.c | 224
>> >+++++++++++++++++++++++++++++++++++
>> >> > include/linux/mfd/max77541.h | 97 +++++++++++++++
>> >> > 4 files changed, 335 insertions(+) create mode 100644
>> >> > drivers/mfd/max77541.c create mode 100644
>> >> > include/linux/mfd/max77541.h
>> >>
>> >> FYI: I'm not re-reviewing this since you've chosen to ignore some
>> >> of my previous review comments. Issues highlighted by review
>> >> comments don't just go away on resubmission.
>> >
>> >... and the subject is malformed.
>> >
>> >--
>> >Lee Jones [李琼斯]
>>
>> Hi Lee,
>>
>> I am sorry if I missed your review comments, this was not my intention. I want
>to thank you for your contribution. Your feedbacks are very valuable, and I am
>trying to understand and fix each one before sending the patch. Indeed, I sorted
>your feedback on previous patches. As far as I know, I have fixed all of them, is
>there a problem with any of them that I fixed, or is there any missing review?
>From you, there were some comments like "why did you use this?", I suppose I
>need to respond them before sending following patches. I thought I should not
>bother the maintainers unnecessarily. I am sorry for them.
>
>Please ask your email client to line-wrap.
>
>Here is the part of the review you ignored:
>
>[...]
>
>> +static const struct chip_info chip[] = {
>
>Why do you need this require sub-structure?
>
>> + [MAX77540] = {
>> + .id = MAX77540,
>> + .n_devs = ARRAY_SIZE(max77540_devs),
>> + .devs = max77540_devs,
>> + },
>> + [MAX77541] = {
>> + .id = MAX77541,
>> + .n_devs = ARRAY_SIZE(max77541_devs),
>> + .devs = max77541_devs,
>> + },
>> +};
>
>[...]
>
>> +static const struct of_device_id max77541_of_id[] = {
>> + {
>> + .compatible = "adi,max77540",
>> + .data = &chip[MAX77540],
>> + },
>> + {
>> + .compatible = "adi,max77541",
>> + .data = &chip[MAX77541],
>> + },
>> + { /* sentinel */ }
>> +};
>> +MODULE_DEVICE_TABLE(of, max77541_of_id);
>> +
>> +static const struct i2c_device_id max77541_i2c_id[] = {
>> + { "max77540", (kernel_ulong_t)&chip[MAX77540] },
>> + { "max77541", (kernel_ulong_t)&chip[MAX77541] },
>
>Just 'MAX77540' is fine.
>
>> + { /* sentinel */ }
>
>Remove the comment, we know how terminators work.
>
>Same comments for max77541_of_id.
>
>--
>Lee Jones [李琼斯]

Hi Lee,

In fact, one of the maintainers suggested assigning chip_info to data instead of enumeration. Then I added chip_info and put devices into sub-structure above. I will replace chip_info with id structure in max77541 device structure, right? I will use enumeration for data as I will assign it to id, and distinguish different devices.

Regards
Okan Sahin