.../bindings/mfd/rohm,bd96801-pmic.yaml | 10 +- .../bindings/mfd/rohm,bd96802-pmic.yaml | 101 ++++ .../regulator/rohm,bd96802-regulator.yaml | 44 ++ MAINTAINERS | 1 + drivers/mfd/rohm-bd96801.c | 565 ++++++++++++++---- drivers/regulator/bd96801-regulator.c | 447 ++++++++++++-- include/linux/mfd/rohm-bd96801.h | 2 + include/linux/mfd/rohm-bd96802.h | 74 +++ include/linux/mfd/rohm-generic.h | 3 + 9 files changed, 1065 insertions(+), 182 deletions(-) create mode 100644 Documentation/devicetree/bindings/mfd/rohm,bd96802-pmic.yaml create mode 100644 Documentation/devicetree/bindings/regulator/rohm,bd96802-regulator.yaml create mode 100644 include/linux/mfd/rohm-bd96802.h
Support ROHM BD96802, BD96805 and BD96806 PMICs The ROHM BD96801 [1] and BD96805 [2] are almost identical PMICs what comes to the digital interface. Main difference is voltage tuning range. Supporting BD96805 with BD96801 drivers is mostly just a matter of being able to differentiate the PMICs (done based on the devicetree compatible) and then providing separate voltage tables. The ROHM BD96802 [3] is a companion PMIC which is intended to be used to provide more capacity on systems where the BD96801 alone is not sufficient. Startup sequence of these PMICs can be synchronized in hardware level, and there seems to be some mechanisms which allow delivering the companion PMIC (BD96802) status to the main PMIC (BD96801/BD96805). This patch series does treat the companion PMIC(s) as individual PMICs and allows using them from software point of view as a stand alone ICs. From the digital point of view, the BD96802 is a subset of BD96801, providing only buck1 and buck2 regulators. Please see the data sheet The ROHM BD96806 [4] is similar to the BD96802, except that it does also provide different voltage tuning ranges. This series adds basic voltage monitoring and control as well as a watchdog support for these PMICs using the BD96801 drivers. Similarly to the BD96801, these PMICs too have a few configurations which can only be done when the PMIC is in STBY state. Similarly to the BD96801, doing these configurations isn't supported by the driver. The original BD96801 RFC [5] driver should be able to cover those configurations, if modified to support these models. [1]: ROHM BD96801 data sheet: https://fscdn.rohm.com/en/products/databook/datasheet/ic/power/switching_regulator_system/product_brief_bd96801qxx-c-e.pdf [2]: ROHM BD96805 data sheet: https://fscdn.rohm.com/en/products/databook/datasheet/ic/power/switching_regulator_system/product_brief_bd96805qxx-c-e.pdf [3]: ROHM BD96802 data sheet: https://fscdn.rohm.com/en/products/databook/datasheet/ic/power/switching_regulator_system/product_brief_bd96802qxx-c-e.pdf [4]: ROHM BD96806 data sheet: https://fscdn.rohm.com/en/products/databook/datasheet/ic/power/switching_regulator_system/product_brief_bd96806qxx-c-e.pdf [5]: Original BD96801 RFC: https://lore.kernel.org/all/cover.1712058690.git.mazziesaccount@gmail.com/ Revision history: v1 => v2: MFD driver changes after review by Lee - Use enum for chip type instead of picking the data directly from the of_match_data. - rename "chip data" variable 'cd' to more widely used 'ddata'. link to v1: https://lore.kernel.org/all/cover.1741864404.git.mazziesaccount@gmail.com/ --- Matti Vaittinen (14): dt-bindings: regulator: Add ROHM BD96802 PMIC dt-bindings: mfd: Add ROHM BD96802 PMIC dt-bindings: mfd: bd96801: Add ROHM BD96805 dt-bindings: mfd: bd96802: Add ROHM BD96806 mfd: rohm-bd96801: Add chip info mfd: bd96801: Drop IC name from the regulator IRQ resources regulator: bd96801: Drop IC name from the IRQ resources mfd: rohm-bd96801: Support ROHM BD96802 regulator: bd96801: Support ROHM BD96802 mfd: bd96801: Support ROHM BD96805 regulator: bd96801: Support ROHM BD96805 PMIC mfd: bd96801: Support ROHM BD96806 regulator: bd96801: Support ROHM BD96806 PMIC MAINTAINERS: Add BD96802 specific header .../bindings/mfd/rohm,bd96801-pmic.yaml | 10 +- .../bindings/mfd/rohm,bd96802-pmic.yaml | 101 ++++ .../regulator/rohm,bd96802-regulator.yaml | 44 ++ MAINTAINERS | 1 + drivers/mfd/rohm-bd96801.c | 565 ++++++++++++++---- drivers/regulator/bd96801-regulator.c | 447 ++++++++++++-- include/linux/mfd/rohm-bd96801.h | 2 + include/linux/mfd/rohm-bd96802.h | 74 +++ include/linux/mfd/rohm-generic.h | 3 + 9 files changed, 1065 insertions(+), 182 deletions(-) create mode 100644 Documentation/devicetree/bindings/mfd/rohm,bd96802-pmic.yaml create mode 100644 Documentation/devicetree/bindings/regulator/rohm,bd96802-regulator.yaml create mode 100644 include/linux/mfd/rohm-bd96802.h base-commit: 7eb172143d5508b4da468ed59ee857c6e5e01da6 -- 2.49.0
On Mon, 24 Mar 2025, Matti Vaittinen wrote: > Support ROHM BD96802, BD96805 and BD96806 PMICs > > The ROHM BD96801 [1] and BD96805 [2] are almost identical PMICs what comes > to the digital interface. Main difference is voltage tuning range. > Supporting BD96805 with BD96801 drivers is mostly just a matter of being > able to differentiate the PMICs (done based on the devicetree > compatible) and then providing separate voltage tables. > > The ROHM BD96802 [3] is a companion PMIC which is intended to be used to > provide more capacity on systems where the BD96801 alone is not > sufficient. Startup sequence of these PMICs can be synchronized in > hardware level, and there seems to be some mechanisms which allow > delivering the companion PMIC (BD96802) status to the main PMIC > (BD96801/BD96805). This patch series does treat the companion PMIC(s) as > individual PMICs and allows using them from software point of view as a > stand alone ICs. From the digital point of view, the BD96802 is a subset > of BD96801, providing only buck1 and buck2 regulators. Please see the > data sheet > > The ROHM BD96806 [4] is similar to the BD96802, except that it does also > provide different voltage tuning ranges. > > This series adds basic voltage monitoring and control as well as a > watchdog support for these PMICs using the BD96801 drivers. > > Similarly to the BD96801, these PMICs too have a few configurations > which can only be done when the PMIC is in STBY state. Similarly to the > BD96801, doing these configurations isn't supported by the driver. The > original BD96801 RFC [5] driver should be able to cover those > configurations, if modified to support these models. > > [1]: ROHM BD96801 data sheet: > https://fscdn.rohm.com/en/products/databook/datasheet/ic/power/switching_regulator_system/product_brief_bd96801qxx-c-e.pdf > [2]: ROHM BD96805 data sheet: > https://fscdn.rohm.com/en/products/databook/datasheet/ic/power/switching_regulator_system/product_brief_bd96805qxx-c-e.pdf > [3]: ROHM BD96802 data sheet: > https://fscdn.rohm.com/en/products/databook/datasheet/ic/power/switching_regulator_system/product_brief_bd96802qxx-c-e.pdf > [4]: ROHM BD96806 data sheet: > https://fscdn.rohm.com/en/products/databook/datasheet/ic/power/switching_regulator_system/product_brief_bd96806qxx-c-e.pdf > [5]: Original BD96801 RFC: > https://lore.kernel.org/all/cover.1712058690.git.mazziesaccount@gmail.com/ > > Revision history: > > v1 => v2: MFD driver changes after review by Lee > - Use enum for chip type instead of picking the data directly from the > of_match_data. > - rename "chip data" variable 'cd' to more widely used 'ddata'. > link to v1: > https://lore.kernel.org/all/cover.1741864404.git.mazziesaccount@gmail.com/ > > --- > > Matti Vaittinen (14): > dt-bindings: regulator: Add ROHM BD96802 PMIC > dt-bindings: mfd: Add ROHM BD96802 PMIC > dt-bindings: mfd: bd96801: Add ROHM BD96805 > dt-bindings: mfd: bd96802: Add ROHM BD96806 > mfd: rohm-bd96801: Add chip info > mfd: bd96801: Drop IC name from the regulator IRQ resources > regulator: bd96801: Drop IC name from the IRQ resources > mfd: rohm-bd96801: Support ROHM BD96802 > regulator: bd96801: Support ROHM BD96802 > mfd: bd96801: Support ROHM BD96805 > regulator: bd96801: Support ROHM BD96805 PMIC > mfd: bd96801: Support ROHM BD96806 > regulator: bd96801: Support ROHM BD96806 PMIC > MAINTAINERS: Add BD96802 specific header Adding support for 3 new devices in one set! You don't like making things easy for yourself (or us) do you! =:-) > .../bindings/mfd/rohm,bd96801-pmic.yaml | 10 +- > .../bindings/mfd/rohm,bd96802-pmic.yaml | 101 ++++ > .../regulator/rohm,bd96802-regulator.yaml | 44 ++ > MAINTAINERS | 1 + > drivers/mfd/rohm-bd96801.c | 565 ++++++++++++++---- > drivers/regulator/bd96801-regulator.c | 447 ++++++++++++-- > include/linux/mfd/rohm-bd96801.h | 2 + > include/linux/mfd/rohm-bd96802.h | 74 +++ > include/linux/mfd/rohm-generic.h | 3 + > 9 files changed, 1065 insertions(+), 182 deletions(-) > create mode 100644 Documentation/devicetree/bindings/mfd/rohm,bd96802-pmic.yaml > create mode 100644 Documentation/devicetree/bindings/regulator/rohm,bd96802-regulator.yaml > create mode 100644 include/linux/mfd/rohm-bd96802.h The MFD stuff looks okay to me now. Let me know when everything else is ready to go. -- Lee Jones [李琼斯]
On 04/04/2025 18:43, Lee Jones wrote: > On Mon, 24 Mar 2025, Matti Vaittinen wrote: > >> Support ROHM BD96802, BD96805 and BD96806 PMICs >> >> The ROHM BD96801 [1] and BD96805 [2] are almost identical PMICs what comes >> to the digital interface. Main difference is voltage tuning range. >> Supporting BD96805 with BD96801 drivers is mostly just a matter of being >> able to differentiate the PMICs (done based on the devicetree >> compatible) and then providing separate voltage tables. >> >> The ROHM BD96802 [3] is a companion PMIC which is intended to be used to >> provide more capacity on systems where the BD96801 alone is not >> sufficient. Startup sequence of these PMICs can be synchronized in >> hardware level, and there seems to be some mechanisms which allow >> delivering the companion PMIC (BD96802) status to the main PMIC >> (BD96801/BD96805). This patch series does treat the companion PMIC(s) as >> individual PMICs and allows using them from software point of view as a >> stand alone ICs. From the digital point of view, the BD96802 is a subset >> of BD96801, providing only buck1 and buck2 regulators. Please see the >> data sheet >> >> The ROHM BD96806 [4] is similar to the BD96802, except that it does also >> provide different voltage tuning ranges. >> >> This series adds basic voltage monitoring and control as well as a >> watchdog support for these PMICs using the BD96801 drivers. >> >> Similarly to the BD96801, these PMICs too have a few configurations >> which can only be done when the PMIC is in STBY state. Similarly to the >> BD96801, doing these configurations isn't supported by the driver. The >> original BD96801 RFC [5] driver should be able to cover those >> configurations, if modified to support these models. >> >> [1]: ROHM BD96801 data sheet: >> https://fscdn.rohm.com/en/products/databook/datasheet/ic/power/switching_regulator_system/product_brief_bd96801qxx-c-e.pdf >> [2]: ROHM BD96805 data sheet: >> https://fscdn.rohm.com/en/products/databook/datasheet/ic/power/switching_regulator_system/product_brief_bd96805qxx-c-e.pdf >> [3]: ROHM BD96802 data sheet: >> https://fscdn.rohm.com/en/products/databook/datasheet/ic/power/switching_regulator_system/product_brief_bd96802qxx-c-e.pdf >> [4]: ROHM BD96806 data sheet: >> https://fscdn.rohm.com/en/products/databook/datasheet/ic/power/switching_regulator_system/product_brief_bd96806qxx-c-e.pdf >> [5]: Original BD96801 RFC: >> https://lore.kernel.org/all/cover.1712058690.git.mazziesaccount@gmail.com/ >> >> Revision history: >> >> v1 => v2: MFD driver changes after review by Lee >> - Use enum for chip type instead of picking the data directly from the >> of_match_data. >> - rename "chip data" variable 'cd' to more widely used 'ddata'. >> link to v1: >> https://lore.kernel.org/all/cover.1741864404.git.mazziesaccount@gmail.com/ >> >> --- >> >> Matti Vaittinen (14): >> dt-bindings: regulator: Add ROHM BD96802 PMIC >> dt-bindings: mfd: Add ROHM BD96802 PMIC >> dt-bindings: mfd: bd96801: Add ROHM BD96805 >> dt-bindings: mfd: bd96802: Add ROHM BD96806 >> mfd: rohm-bd96801: Add chip info >> mfd: bd96801: Drop IC name from the regulator IRQ resources >> regulator: bd96801: Drop IC name from the IRQ resources >> mfd: rohm-bd96801: Support ROHM BD96802 >> regulator: bd96801: Support ROHM BD96802 >> mfd: bd96801: Support ROHM BD96805 >> regulator: bd96801: Support ROHM BD96805 PMIC >> mfd: bd96801: Support ROHM BD96806 >> regulator: bd96801: Support ROHM BD96806 PMIC >> MAINTAINERS: Add BD96802 specific header > > Adding support for 3 new devices in one set! > > You don't like making things easy for yourself (or us) do you! =:-) > >> .../bindings/mfd/rohm,bd96801-pmic.yaml | 10 +- >> .../bindings/mfd/rohm,bd96802-pmic.yaml | 101 ++++ >> .../regulator/rohm,bd96802-regulator.yaml | 44 ++ >> MAINTAINERS | 1 + >> drivers/mfd/rohm-bd96801.c | 565 ++++++++++++++---- >> drivers/regulator/bd96801-regulator.c | 447 ++++++++++++-- >> include/linux/mfd/rohm-bd96801.h | 2 + >> include/linux/mfd/rohm-bd96802.h | 74 +++ >> include/linux/mfd/rohm-generic.h | 3 + >> 9 files changed, 1065 insertions(+), 182 deletions(-) >> create mode 100644 Documentation/devicetree/bindings/mfd/rohm,bd96802-pmic.yaml >> create mode 100644 Documentation/devicetree/bindings/regulator/rohm,bd96802-regulator.yaml >> create mode 100644 include/linux/mfd/rohm-bd96802.h > > The MFD stuff looks okay to me now. > > Let me know when everything else is ready to go. Hi Lee, The v3 (link below) should be good to go now. Regulator parts are reviewed by Mark and bindings are acked by Conor. Please note that I translated your 'Ok' above to ACKs - I hope that was the right thing to do... https://lore.kernel.org/all/cover.1744090658.git.mazziesaccount@gmail.com/ Yours -- Matti
On 04/04/2025 18:43, Lee Jones wrote: > On Mon, 24 Mar 2025, Matti Vaittinen wrote: > >> Support ROHM BD96802, BD96805 and BD96806 PMICs >> >> The ROHM BD96801 [1] and BD96805 [2] are almost identical PMICs what comes >> to the digital interface. Main difference is voltage tuning range. >> Supporting BD96805 with BD96801 drivers is mostly just a matter of being >> able to differentiate the PMICs (done based on the devicetree >> compatible) and then providing separate voltage tables. >> >> The ROHM BD96802 [3] is a companion PMIC which is intended to be used to >> provide more capacity on systems where the BD96801 alone is not >> sufficient. Startup sequence of these PMICs can be synchronized in >> hardware level, and there seems to be some mechanisms which allow >> delivering the companion PMIC (BD96802) status to the main PMIC >> (BD96801/BD96805). This patch series does treat the companion PMIC(s) as >> individual PMICs and allows using them from software point of view as a >> stand alone ICs. From the digital point of view, the BD96802 is a subset >> of BD96801, providing only buck1 and buck2 regulators. Please see the >> data sheet >> >> The ROHM BD96806 [4] is similar to the BD96802, except that it does also >> provide different voltage tuning ranges. >> >> This series adds basic voltage monitoring and control as well as a >> watchdog support for these PMICs using the BD96801 drivers. >> >> Similarly to the BD96801, these PMICs too have a few configurations >> which can only be done when the PMIC is in STBY state. Similarly to the >> BD96801, doing these configurations isn't supported by the driver. The >> original BD96801 RFC [5] driver should be able to cover those >> configurations, if modified to support these models. >> >> [1]: ROHM BD96801 data sheet: >> https://fscdn.rohm.com/en/products/databook/datasheet/ic/power/switching_regulator_system/product_brief_bd96801qxx-c-e.pdf >> [2]: ROHM BD96805 data sheet: >> https://fscdn.rohm.com/en/products/databook/datasheet/ic/power/switching_regulator_system/product_brief_bd96805qxx-c-e.pdf >> [3]: ROHM BD96802 data sheet: >> https://fscdn.rohm.com/en/products/databook/datasheet/ic/power/switching_regulator_system/product_brief_bd96802qxx-c-e.pdf >> [4]: ROHM BD96806 data sheet: >> https://fscdn.rohm.com/en/products/databook/datasheet/ic/power/switching_regulator_system/product_brief_bd96806qxx-c-e.pdf >> [5]: Original BD96801 RFC: >> https://lore.kernel.org/all/cover.1712058690.git.mazziesaccount@gmail.com/ >> >> Revision history: >> >> v1 => v2: MFD driver changes after review by Lee >> - Use enum for chip type instead of picking the data directly from the >> of_match_data. >> - rename "chip data" variable 'cd' to more widely used 'ddata'. >> link to v1: >> https://lore.kernel.org/all/cover.1741864404.git.mazziesaccount@gmail.com/ > > The MFD stuff looks okay to me now. > > Let me know when everything else is ready to go. > I'll treat this as an ACK for the V3. Please, let me know if that's not Okay. Yours, -- Matti
On Tue, 08 Apr 2025, Matti Vaittinen wrote: > On 04/04/2025 18:43, Lee Jones wrote: > > On Mon, 24 Mar 2025, Matti Vaittinen wrote: > > > > > Support ROHM BD96802, BD96805 and BD96806 PMICs > > > > > > The ROHM BD96801 [1] and BD96805 [2] are almost identical PMICs what comes > > > to the digital interface. Main difference is voltage tuning range. > > > Supporting BD96805 with BD96801 drivers is mostly just a matter of being > > > able to differentiate the PMICs (done based on the devicetree > > > compatible) and then providing separate voltage tables. > > > > > > The ROHM BD96802 [3] is a companion PMIC which is intended to be used to > > > provide more capacity on systems where the BD96801 alone is not > > > sufficient. Startup sequence of these PMICs can be synchronized in > > > hardware level, and there seems to be some mechanisms which allow > > > delivering the companion PMIC (BD96802) status to the main PMIC > > > (BD96801/BD96805). This patch series does treat the companion PMIC(s) as > > > individual PMICs and allows using them from software point of view as a > > > stand alone ICs. From the digital point of view, the BD96802 is a subset > > > of BD96801, providing only buck1 and buck2 regulators. Please see the > > > data sheet > > > > > > The ROHM BD96806 [4] is similar to the BD96802, except that it does also > > > provide different voltage tuning ranges. > > > > > > This series adds basic voltage monitoring and control as well as a > > > watchdog support for these PMICs using the BD96801 drivers. > > > > > > Similarly to the BD96801, these PMICs too have a few configurations > > > which can only be done when the PMIC is in STBY state. Similarly to the > > > BD96801, doing these configurations isn't supported by the driver. The > > > original BD96801 RFC [5] driver should be able to cover those > > > configurations, if modified to support these models. > > > > > > [1]: ROHM BD96801 data sheet: > > > https://fscdn.rohm.com/en/products/databook/datasheet/ic/power/switching_regulator_system/product_brief_bd96801qxx-c-e.pdf > > > [2]: ROHM BD96805 data sheet: > > > https://fscdn.rohm.com/en/products/databook/datasheet/ic/power/switching_regulator_system/product_brief_bd96805qxx-c-e.pdf > > > [3]: ROHM BD96802 data sheet: > > > https://fscdn.rohm.com/en/products/databook/datasheet/ic/power/switching_regulator_system/product_brief_bd96802qxx-c-e.pdf > > > [4]: ROHM BD96806 data sheet: > > > https://fscdn.rohm.com/en/products/databook/datasheet/ic/power/switching_regulator_system/product_brief_bd96806qxx-c-e.pdf > > > [5]: Original BD96801 RFC: > > > https://lore.kernel.org/all/cover.1712058690.git.mazziesaccount@gmail.com/ > > > > > > Revision history: > > > > > > v1 => v2: MFD driver changes after review by Lee > > > - Use enum for chip type instead of picking the data directly from the > > > of_match_data. > > > - rename "chip data" variable 'cd' to more widely used 'ddata'. > > > link to v1: > > > https://lore.kernel.org/all/cover.1741864404.git.mazziesaccount@gmail.com/ > > > > > The MFD stuff looks okay to me now. > > > > Let me know when everything else is ready to go. > > > > I'll treat this as an ACK for the V3. Please, let me know if that's not > Okay. Acks are tricky because another maintainer might (have have in the past) assume that they can apply the set with my blessing, this is not the case. I used to use `Acked-for-MFD-by: <me>`, but these ended up being merged. *face palm* Anyway, no harm done this time around I think. -- Lee Jones [李琼斯]
On 10/04/2025 11:02, Lee Jones wrote: > On Tue, 08 Apr 2025, Matti Vaittinen wrote: > >> On 04/04/2025 18:43, Lee Jones wrote: >>> On Mon, 24 Mar 2025, Matti Vaittinen wrote: >>> >>>> Support ROHM BD96802, BD96805 and BD96806 PMICs >>>> >>>> The ROHM BD96801 [1] and BD96805 [2] are almost identical PMICs what comes >>>> to the digital interface. Main difference is voltage tuning range. >>>> Supporting BD96805 with BD96801 drivers is mostly just a matter of being >>>> able to differentiate the PMICs (done based on the devicetree >>>> compatible) and then providing separate voltage tables. >>>> >>>> The ROHM BD96802 [3] is a companion PMIC which is intended to be used to >>>> provide more capacity on systems where the BD96801 alone is not >>>> sufficient. Startup sequence of these PMICs can be synchronized in >>>> hardware level, and there seems to be some mechanisms which allow >>>> delivering the companion PMIC (BD96802) status to the main PMIC >>>> (BD96801/BD96805). This patch series does treat the companion PMIC(s) as >>>> individual PMICs and allows using them from software point of view as a >>>> stand alone ICs. From the digital point of view, the BD96802 is a subset >>>> of BD96801, providing only buck1 and buck2 regulators. Please see the >>>> data sheet >>>> >>>> The ROHM BD96806 [4] is similar to the BD96802, except that it does also >>>> provide different voltage tuning ranges. >>>> >>>> This series adds basic voltage monitoring and control as well as a >>>> watchdog support for these PMICs using the BD96801 drivers. >>>> >>>> Similarly to the BD96801, these PMICs too have a few configurations >>>> which can only be done when the PMIC is in STBY state. Similarly to the >>>> BD96801, doing these configurations isn't supported by the driver. The >>>> original BD96801 RFC [5] driver should be able to cover those >>>> configurations, if modified to support these models. >>>> >>>> [1]: ROHM BD96801 data sheet: >>>> https://fscdn.rohm.com/en/products/databook/datasheet/ic/power/switching_regulator_system/product_brief_bd96801qxx-c-e.pdf >>>> [2]: ROHM BD96805 data sheet: >>>> https://fscdn.rohm.com/en/products/databook/datasheet/ic/power/switching_regulator_system/product_brief_bd96805qxx-c-e.pdf >>>> [3]: ROHM BD96802 data sheet: >>>> https://fscdn.rohm.com/en/products/databook/datasheet/ic/power/switching_regulator_system/product_brief_bd96802qxx-c-e.pdf >>>> [4]: ROHM BD96806 data sheet: >>>> https://fscdn.rohm.com/en/products/databook/datasheet/ic/power/switching_regulator_system/product_brief_bd96806qxx-c-e.pdf >>>> [5]: Original BD96801 RFC: >>>> https://lore.kernel.org/all/cover.1712058690.git.mazziesaccount@gmail.com/ >>>> >>>> Revision history: >>>> >>>> v1 => v2: MFD driver changes after review by Lee >>>> - Use enum for chip type instead of picking the data directly from the >>>> of_match_data. >>>> - rename "chip data" variable 'cd' to more widely used 'ddata'. >>>> link to v1: >>>> https://lore.kernel.org/all/cover.1741864404.git.mazziesaccount@gmail.com/ >> >>> >>> The MFD stuff looks okay to me now. >>> >>> Let me know when everything else is ready to go. >>> >> >> I'll treat this as an ACK for the V3. Please, let me know if that's not >> Okay. > > Acks are tricky because another maintainer might (have have in the past) > assume that they can apply the set with my blessing, this is not the > case. I used to use `Acked-for-MFD-by: <me>`, but these ended up being > merged. *face palm* > > Anyway, no harm done this time around I think. I remembered you used to use the "Acked-for-MFD-by". Never knew the rationale though. Thanks for sharing the reason - and downside :) I try to remember to not treat your "this looks good to me" as an ACK in the future then, but expect explicit acks. Yours, -- Matti
On 04/04/2025 18:43, Lee Jones wrote: > On Mon, 24 Mar 2025, Matti Vaittinen wrote: > >> Support ROHM BD96802, BD96805 and BD96806 PMICs >> >> The ROHM BD96801 [1] and BD96805 [2] are almost identical PMICs what comes >> to the digital interface. Main difference is voltage tuning range. >> Supporting BD96805 with BD96801 drivers is mostly just a matter of being >> able to differentiate the PMICs (done based on the devicetree >> compatible) and then providing separate voltage tables. >> >> The ROHM BD96802 [3] is a companion PMIC which is intended to be used to >> provide more capacity on systems where the BD96801 alone is not >> sufficient. Startup sequence of these PMICs can be synchronized in >> hardware level, and there seems to be some mechanisms which allow >> delivering the companion PMIC (BD96802) status to the main PMIC >> (BD96801/BD96805). This patch series does treat the companion PMIC(s) as >> individual PMICs and allows using them from software point of view as a >> stand alone ICs. From the digital point of view, the BD96802 is a subset >> of BD96801, providing only buck1 and buck2 regulators. Please see the >> data sheet >> >> The ROHM BD96806 [4] is similar to the BD96802, except that it does also >> provide different voltage tuning ranges. >> >> This series adds basic voltage monitoring and control as well as a >> watchdog support for these PMICs using the BD96801 drivers. >> >> Similarly to the BD96801, these PMICs too have a few configurations >> which can only be done when the PMIC is in STBY state. Similarly to the >> BD96801, doing these configurations isn't supported by the driver. The >> original BD96801 RFC [5] driver should be able to cover those >> configurations, if modified to support these models. >> >> [1]: ROHM BD96801 data sheet: >> https://fscdn.rohm.com/en/products/databook/datasheet/ic/power/switching_regulator_system/product_brief_bd96801qxx-c-e.pdf >> [2]: ROHM BD96805 data sheet: >> https://fscdn.rohm.com/en/products/databook/datasheet/ic/power/switching_regulator_system/product_brief_bd96805qxx-c-e.pdf >> [3]: ROHM BD96802 data sheet: >> https://fscdn.rohm.com/en/products/databook/datasheet/ic/power/switching_regulator_system/product_brief_bd96802qxx-c-e.pdf >> [4]: ROHM BD96806 data sheet: >> https://fscdn.rohm.com/en/products/databook/datasheet/ic/power/switching_regulator_system/product_brief_bd96806qxx-c-e.pdf >> [5]: Original BD96801 RFC: >> https://lore.kernel.org/all/cover.1712058690.git.mazziesaccount@gmail.com/ >> >> Revision history: >> >> v1 => v2: MFD driver changes after review by Lee >> - Use enum for chip type instead of picking the data directly from the >> of_match_data. >> - rename "chip data" variable 'cd' to more widely used 'ddata'. >> link to v1: >> https://lore.kernel.org/all/cover.1741864404.git.mazziesaccount@gmail.com/ >> >> --- >> >> Matti Vaittinen (14): >> dt-bindings: regulator: Add ROHM BD96802 PMIC >> dt-bindings: mfd: Add ROHM BD96802 PMIC >> dt-bindings: mfd: bd96801: Add ROHM BD96805 >> dt-bindings: mfd: bd96802: Add ROHM BD96806 >> mfd: rohm-bd96801: Add chip info >> mfd: bd96801: Drop IC name from the regulator IRQ resources >> regulator: bd96801: Drop IC name from the IRQ resources >> mfd: rohm-bd96801: Support ROHM BD96802 >> regulator: bd96801: Support ROHM BD96802 >> mfd: bd96801: Support ROHM BD96805 >> regulator: bd96801: Support ROHM BD96805 PMIC >> mfd: bd96801: Support ROHM BD96806 >> regulator: bd96801: Support ROHM BD96806 PMIC >> MAINTAINERS: Add BD96802 specific header > > Adding support for 3 new devices in one set! > > You don't like making things easy for yourself (or us) do you! =:-) Well, adding the BD96805 and the BD96806 were _very_ minor changes. More or less just adding new voltage range tables. (After the support for different ICs was done for the BD96802). All of the ICs, BD96801,2,5 and 6 are 'same family' of "scalable PMICs" - which all share similar digital logic. Hence, bundling them into one series didn't seem like too big if a chunk. > >> .../bindings/mfd/rohm,bd96801-pmic.yaml | 10 +- >> .../bindings/mfd/rohm,bd96802-pmic.yaml | 101 ++++ >> .../regulator/rohm,bd96802-regulator.yaml | 44 ++ >> MAINTAINERS | 1 + >> drivers/mfd/rohm-bd96801.c | 565 ++++++++++++++---- >> drivers/regulator/bd96801-regulator.c | 447 ++++++++++++-- >> include/linux/mfd/rohm-bd96801.h | 2 + >> include/linux/mfd/rohm-bd96802.h | 74 +++ >> include/linux/mfd/rohm-generic.h | 3 + >> 9 files changed, 1065 insertions(+), 182 deletions(-) >> create mode 100644 Documentation/devicetree/bindings/mfd/rohm,bd96802-pmic.yaml >> create mode 100644 Documentation/devicetree/bindings/regulator/rohm,bd96802-regulator.yaml >> create mode 100644 include/linux/mfd/rohm-bd96802.h > > The MFD stuff looks okay to me now. Thanks! I'll translate this to ACK tag for the v3 :) Please, let me know if you feel that's not Ok. > Let me know when everything else is ready to go. I still need Mark's ack for the patches 7 and 9, and I need to fix the voltages for BD96806 - meaning at least 1 more version. Yours, -- Matti
© 2016 - 2025 Red Hat, Inc.