From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
To: "Sahin, Okan" <Okan.Sahin@analog.com>
Cc: Lee Jones <lee@kernel.org>, Rob Herring <robh+dt@kernel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
Liam Girdwood <lgirdwood@gmail.com>,
Mark Brown <broonie@kernel.org>,
Jonathan Cameron <jic23@kernel.org>,
Lars-Peter Clausen <lars@metafoo.de>,
ChiYuan Huang <cy_huang@richtek.com>,
"Bolboaca, Ramona" <Ramona.Bolboaca@analog.com>,
Caleb Connolly <caleb.connolly@linaro.org>,
William Breathitt Gray <william.gray@linaro.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
"linux-iio@vger.kernel.org" <linux-iio@vger.kernel.org>
Subject: Re: [PATCH v3 3/5] drivers: regulator: Add ADI MAX77541/MAX77540 Regulator Support
Date: Tue, 31 Jan 2023 16:13:01 +0200 [thread overview]
Message-ID: <Y9kh7QI+1RqvLr2G@smile.fi.intel.com> (raw)
In-Reply-To: <BY5PR03MB51539CB52778A945C8CB788FE7D09@BY5PR03MB5153.namprd03.prod.outlook.com>
On Tue, Jan 31, 2023 at 01:59:45PM +0000, Sahin, Okan wrote:
> On Tue, 31 Jan 2022 4:30 PM
> Andy Shevchenko <andriy.shevchenko@linux.intel.com> wrote:
> >On Tue, Jan 31, 2023 at 01:23:33PM +0000, Sahin, Okan wrote:
> >> On Tue, 31 Jan 2022 3:27 PM
> >> Andy Shevchenko <andriy.shevchenko@linux.intel.com> wrote:
> >> >On Tue, Jan 31, 2023 at 09:27:48AM +0000, Sahin, Okan wrote:
...
> >> >> Sorry for second question. I do not want to bother you, but I
> >> >> realized that I need to be sure about driver_data before sending
> >> >> new patch. You said that you need to use pointers directly for
> >> >> driver_data then I fixed that part in mfd, but I do not need or
> >> >> use driver_data in regulator since chip_id comes from mfd device so
> >> >> I think using like below should be enough for my implementation.
> >> >>
> >> >> static const struct platform_device_id max77541_regulator_platform_id[] =
> >{
> >> >> { "max77540-regulator", },
> >> >> { "max77541-regulator", },
> >> >> { /* sentinel */ }
> >> >> };
> >> >> MODULE_DEVICE_TABLE(platform, max77541_regulator_platform_id);
> >> >>
> >> >> static const struct of_device_id max77541_regulator_of_id[] = {
> >> >> { .compatible = "adi,max77540-regulator", },
> >> >> { .compatible = "adi,max77541-regulator", },
> >> >> { /* sentinel */ }
> >> >> };
> >> >> MODULE_DEVICE_TABLE(of, max77541_regulator_of_id);
> >> >>
> >> >> What do you think?
> >> >
> >> >If you have got all necessary data from the upper layer, why do you
> >> >need to have an ID table here? I'm not sure I understand how this OF
> >> >ID table works in this case.
> >
> >> I added it since there is regulator node in device tree. With the help
> >> of devm_regulator_register(..), driver takes parameters of regulator
> >> node. I also used id to select and to initialize regulator descriptors
> >> which are chip specific. So far there is no comment about OF ID table
> >> so I kept it. I thought I need to add both of id table and platform id
> >> table as name matching is required to initialize platform device from mfd.
> >
> >For platform device is one mechanism how to enumerate device, and bind it to
> >the driver. The OF ID table needs to be present in case you are using it for direct
> >DT enumeration (there is also something related to MFD child nodes, but you
> >need to check and explain how your device is enumerated by this driver).
> >
> >I.o.w. please clarify how the OF ID table is being used.
>
> I do not use "of id table" directly in max77541-regulator.c so do I need to exclude it?
Exactly my point. How does this OF ID table affect the device enumeration?
> However, devm_regulator_register(..) method initialize each regulator with
> the nodes under "regulators node". If of_match in desc and name of node
> matches, then regulator will be initialized with parameters in the node under
> the regulators node in the device tree. Since I am using device tree to
> initialize regulators, I added of id table. I hope I explained the situation
> clearly.
This is confusing. If your regulator is enumerated via DT, why do you need MFD?
--
With Best Regards,
Andy Shevchenko
next prev parent reply other threads:[~2023-01-31 14:13 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-01-18 6:38 [PATCH v3 0/5] Add MAX77541/MAX77540 PMIC Support Okan Sahin
2023-01-18 6:38 ` [PATCH v3 1/5] drivers: mfd: Add ADI " Okan Sahin
2023-01-18 8:16 ` Andy Shevchenko
2023-01-19 14:27 ` Lee Jones
2023-01-19 15:06 ` Andy Shevchenko
2023-01-19 15:06 ` William Breathitt Gray
2023-01-18 6:38 ` [PATCH v3 2/5] dt-bindings: mfd: Add ADI MAX77541/MAX77540 Okan Sahin
2023-01-18 8:22 ` Krzysztof Kozlowski
2023-01-31 12:02 ` Sahin, Okan
2023-01-31 16:44 ` Krzysztof Kozlowski
2023-01-31 21:28 ` Sahin, Okan
2023-02-01 7:25 ` Krzysztof Kozlowski
2023-02-01 7:46 ` Sahin, Okan
2023-02-01 8:08 ` Krzysztof Kozlowski
2023-01-18 13:10 ` Rob Herring
2023-01-18 6:38 ` [PATCH v3 3/5] drivers: regulator: Add ADI MAX77541/MAX77540 Regulator Support Okan Sahin
2023-01-18 8:19 ` Andy Shevchenko
2023-01-31 7:20 ` Sahin, Okan
2023-01-31 9:27 ` Sahin, Okan
2023-01-31 12:26 ` Andy Shevchenko
2023-01-31 13:23 ` Sahin, Okan
2023-01-31 13:29 ` Andy Shevchenko
2023-01-31 13:59 ` Sahin, Okan
2023-01-31 14:13 ` Andy Shevchenko [this message]
2023-01-31 14:38 ` Sahin, Okan
2023-01-31 13:32 ` Mark Brown
2023-01-31 12:24 ` Andy Shevchenko
2023-01-31 13:12 ` Sahin, Okan
2023-01-31 13:26 ` Andy Shevchenko
2023-01-18 6:38 ` [PATCH v3 4/5] dt-bindings: regulator: Add ADI MAX77541/MAX77540 Regulator Okan Sahin
2023-01-18 8:33 ` Krzysztof Kozlowski
2023-01-18 6:38 ` [PATCH v3 5/5] drivers: iio: adc: Add ADI MAX77541 ADC Support Okan Sahin
2023-01-18 8:23 ` Andy Shevchenko
2023-01-21 17:55 ` Jonathan Cameron
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=Y9kh7QI+1RqvLr2G@smile.fi.intel.com \
--to=andriy.shevchenko@linux.intel.com \
--cc=Okan.Sahin@analog.com \
--cc=Ramona.Bolboaca@analog.com \
--cc=broonie@kernel.org \
--cc=caleb.connolly@linaro.org \
--cc=cy_huang@richtek.com \
--cc=devicetree@vger.kernel.org \
--cc=jic23@kernel.org \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=lars@metafoo.de \
--cc=lee@kernel.org \
--cc=lgirdwood@gmail.com \
--cc=linux-iio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=robh+dt@kernel.org \
--cc=william.gray@linaro.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: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox