* [PATCH 1/2] dt-bindings: mfd: ab8500: Document AB8505 bindings @ 2019-11-17 22:10 Stephan Gerhold 2019-11-17 22:10 ` [PATCH 2/2] mfd: ab8500-core: Add device tree support for AB8505 Stephan Gerhold ` (3 more replies) 0 siblings, 4 replies; 7+ messages in thread From: Stephan Gerhold @ 2019-11-17 22:10 UTC (permalink / raw) To: Lee Jones Cc: Mark Rutland, devicetree, Stephan Gerhold, Linus Walleij, linux-kernel, Rob Herring, linux-arm-kernel AB8505 can now be configured from the device tree. The configuration is almost identical to AB8500, so just add a note for the nodes/compatibles that differ between the two revisions. Cc: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Stephan Gerhold <stephan@gerhold.net> --- Documentation/devicetree/bindings/mfd/ab8500.txt | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/Documentation/devicetree/bindings/mfd/ab8500.txt b/Documentation/devicetree/bindings/mfd/ab8500.txt index cd9e90c5d171..5c12a65ea8df 100644 --- a/Documentation/devicetree/bindings/mfd/ab8500.txt +++ b/Documentation/devicetree/bindings/mfd/ab8500.txt @@ -1,7 +1,7 @@ * AB8500 Multi-Functional Device (MFD) Required parent device properties: -- compatible : contains "stericsson,ab8500"; +- compatible : contains "stericsson,ab8500" or "stericsson,ab8505"; - interrupts : contains the IRQ line for the AB8500 - interrupt-controller : describes the AB8500 as an Interrupt Controller (has its own domain) - #interrupt-cells : should be 2, for 2-cell format @@ -49,11 +49,13 @@ ab8500-charger : : vddadc : Charger interface : CH_WD_EXP : : Charger watchdog detected ab8500-gpadc : HW_CONV_END : vddadc : Analogue to Digital Converter SW_CONV_END : : -ab8500-gpio : : : GPIO Controller +ab8500-gpio : : : GPIO Controller (AB8500) +ab8505-gpio : : : GPIO Controller (AB8505) ab8500-ponkey : ONKEY_DBF : : Power-on Key ONKEY_DBR : : ab8500-pwm : : : Pulse Width Modulator -ab8500-regulator : : : Regulators +ab8500-regulator : : : Regulators (AB8500) +ab8505-regulator : : : Regulators (AB8505) ab8500-rtc : 60S : : Real Time Clock : ALARM : : ab8500-sysctrl : : : System Control -- 2.23.0 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH 2/2] mfd: ab8500-core: Add device tree support for AB8505 2019-11-17 22:10 [PATCH 1/2] dt-bindings: mfd: ab8500: Document AB8505 bindings Stephan Gerhold @ 2019-11-17 22:10 ` Stephan Gerhold 2019-11-20 20:17 ` Linus Walleij 2019-12-16 10:43 ` Lee Jones 2019-11-20 20:16 ` [PATCH 1/2] dt-bindings: mfd: ab8500: Document AB8505 bindings Linus Walleij ` (2 subsequent siblings) 3 siblings, 2 replies; 7+ messages in thread From: Stephan Gerhold @ 2019-11-17 22:10 UTC (permalink / raw) To: Lee Jones Cc: Mark Rutland, devicetree, Stephan Gerhold, Linus Walleij, linux-kernel, Rob Herring, linux-arm-kernel AB8505 support was never fully converted to the device tree. Most of the MFD cells for AB8505 lack an "of_compatible", which prevents them from being configured through the device tree. Align the definition of the AB8505 MFD cells with the ones for AB8500, and add device tree compatibles. Except for GPIO and regulators the compatibles are equal to those used for AB8500 because the hardware does not differ much. Finally, change db8500_prcmu_register_ab8500() to check for the AB8505 device tree node additionally, and probe it if it is found. Cc: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Stephan Gerhold <stephan@gerhold.net> --- drivers/mfd/ab8500-core.c | 14 ++++++++++++-- drivers/mfd/db8500-prcmu.c | 26 ++++++++++++++++++++------ 2 files changed, 32 insertions(+), 8 deletions(-) diff --git a/drivers/mfd/ab8500-core.c b/drivers/mfd/ab8500-core.c index bafc729fc434..6db7969101d6 100644 --- a/drivers/mfd/ab8500-core.c +++ b/drivers/mfd/ab8500-core.c @@ -718,17 +718,20 @@ static const struct mfd_cell ab8505_devs[] = { #ifdef CONFIG_DEBUG_FS { .name = "ab8500-debug", + .of_compatible = "stericsson,ab8500-debug", }, #endif { .name = "ab8500-sysctrl", + .of_compatible = "stericsson,ab8500-sysctrl", }, { .name = "ab8500-regulator", + .of_compatible = "stericsson,ab8505-regulator", }, { .name = "abx500-clk", - .of_compatible = "stericsson,abx500-clk", + .of_compatible = "stericsson,ab8500-clk", }, { .name = "ab8500-gpadc", @@ -736,25 +739,32 @@ static const struct mfd_cell ab8505_devs[] = { }, { .name = "ab8500-rtc", + .of_compatible = "stericsson,ab8500-rtc", }, { .name = "ab8500-acc-det", + .of_compatible = "stericsson,ab8500-acc-det", }, { .name = "ab8500-poweron-key", + .of_compatible = "stericsson,ab8500-poweron-key", }, { .name = "ab8500-pwm", + .of_compatible = "stericsson,ab8500-pwm", .id = 1, }, { .name = "pinctrl-ab8505", + .of_compatible = "stericsson,ab8505-gpio", }, { .name = "ab8500-usb", + .of_compatible = "stericsson,ab8500-usb", }, { .name = "ab8500-codec", + .of_compatible = "stericsson,ab8500-codec", }, { .name = "ab-iddet", @@ -1276,7 +1286,7 @@ static int ab8500_probe(struct platform_device *pdev) static const struct platform_device_id ab8500_id[] = { { "ab8500-core", AB8500_VERSION_AB8500 }, - { "ab8505-i2c", AB8500_VERSION_AB8505 }, + { "ab8505-core", AB8500_VERSION_AB8505 }, { "ab9540-i2c", AB8500_VERSION_AB9540 }, { "ab8540-i2c", AB8500_VERSION_AB8540 }, { } diff --git a/drivers/mfd/db8500-prcmu.c b/drivers/mfd/db8500-prcmu.c index 57ac58b4b5f3..26d967a1a046 100644 --- a/drivers/mfd/db8500-prcmu.c +++ b/drivers/mfd/db8500-prcmu.c @@ -3060,30 +3060,44 @@ static const struct mfd_cell db8500_prcmu_devs[] = { static int db8500_prcmu_register_ab8500(struct device *parent) { struct device_node *np; - struct resource ab8500_resource; + struct resource ab850x_resource; const struct mfd_cell ab8500_cell = { .name = "ab8500-core", .of_compatible = "stericsson,ab8500", .id = AB8500_VERSION_AB8500, - .resources = &ab8500_resource, + .resources = &ab850x_resource, .num_resources = 1, }; + const struct mfd_cell ab8505_cell = { + .name = "ab8505-core", + .of_compatible = "stericsson,ab8505", + .id = AB8500_VERSION_AB8505, + .resources = &ab850x_resource, + .num_resources = 1, + }; + const struct mfd_cell *ab850x_cell; if (!parent->of_node) return -ENODEV; /* Look up the device node, sneak the IRQ out of it */ for_each_child_of_node(parent->of_node, np) { - if (of_device_is_compatible(np, ab8500_cell.of_compatible)) + if (of_device_is_compatible(np, ab8500_cell.of_compatible)) { + ab850x_cell = &ab8500_cell; break; + } + if (of_device_is_compatible(np, ab8505_cell.of_compatible)) { + ab850x_cell = &ab8505_cell; + break; + } } if (!np) { - dev_info(parent, "could not find AB8500 node in the device tree\n"); + dev_info(parent, "could not find AB850X node in the device tree\n"); return -ENODEV; } - of_irq_to_resource_table(np, &ab8500_resource, 1); + of_irq_to_resource_table(np, &ab850x_resource, 1); - return mfd_add_devices(parent, 0, &ab8500_cell, 1, NULL, 0, NULL); + return mfd_add_devices(parent, 0, ab850x_cell, 1, NULL, 0, NULL); } /** -- 2.23.0 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH 2/2] mfd: ab8500-core: Add device tree support for AB8505 2019-11-17 22:10 ` [PATCH 2/2] mfd: ab8500-core: Add device tree support for AB8505 Stephan Gerhold @ 2019-11-20 20:17 ` Linus Walleij 2019-12-16 10:43 ` Lee Jones 1 sibling, 0 replies; 7+ messages in thread From: Linus Walleij @ 2019-11-20 20:17 UTC (permalink / raw) To: Stephan Gerhold Cc: Mark Rutland, open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS, linux-kernel, Rob Herring, Lee Jones, Linux ARM On Sun, Nov 17, 2019 at 11:14 PM Stephan Gerhold <stephan@gerhold.net> wrote: > AB8505 support was never fully converted to the device tree. > Most of the MFD cells for AB8505 lack an "of_compatible", > which prevents them from being configured through the device tree. > > Align the definition of the AB8505 MFD cells with the ones for AB8500, > and add device tree compatibles. Except for GPIO and regulators the > compatibles are equal to those used for AB8500 because the hardware > does not differ much. > > Finally, change db8500_prcmu_register_ab8500() to check for the AB8505 > device tree node additionally, and probe it if it is found. > > Cc: Linus Walleij <linus.walleij@linaro.org> > Signed-off-by: Stephan Gerhold <stephan@gerhold.net> Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Yours, Linus Walleij _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 2/2] mfd: ab8500-core: Add device tree support for AB8505 2019-11-17 22:10 ` [PATCH 2/2] mfd: ab8500-core: Add device tree support for AB8505 Stephan Gerhold 2019-11-20 20:17 ` Linus Walleij @ 2019-12-16 10:43 ` Lee Jones 1 sibling, 0 replies; 7+ messages in thread From: Lee Jones @ 2019-12-16 10:43 UTC (permalink / raw) To: Stephan Gerhold Cc: Mark Rutland, devicetree, Linus Walleij, linux-kernel, Rob Herring, linux-arm-kernel On Sun, 17 Nov 2019, Stephan Gerhold wrote: > AB8505 support was never fully converted to the device tree. > Most of the MFD cells for AB8505 lack an "of_compatible", > which prevents them from being configured through the device tree. > > Align the definition of the AB8505 MFD cells with the ones for AB8500, > and add device tree compatibles. Except for GPIO and regulators the > compatibles are equal to those used for AB8500 because the hardware > does not differ much. > > Finally, change db8500_prcmu_register_ab8500() to check for the AB8505 > device tree node additionally, and probe it if it is found. > > Cc: Linus Walleij <linus.walleij@linaro.org> > Signed-off-by: Stephan Gerhold <stephan@gerhold.net> > --- > drivers/mfd/ab8500-core.c | 14 ++++++++++++-- > drivers/mfd/db8500-prcmu.c | 26 ++++++++++++++++++++------ > 2 files changed, 32 insertions(+), 8 deletions(-) Applied, thanks. -- Lee Jones [李琼斯] Linaro Services Technical Lead Linaro.org │ Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 1/2] dt-bindings: mfd: ab8500: Document AB8505 bindings 2019-11-17 22:10 [PATCH 1/2] dt-bindings: mfd: ab8500: Document AB8505 bindings Stephan Gerhold 2019-11-17 22:10 ` [PATCH 2/2] mfd: ab8500-core: Add device tree support for AB8505 Stephan Gerhold @ 2019-11-20 20:16 ` Linus Walleij 2019-12-03 21:40 ` Rob Herring 2019-12-16 10:42 ` Lee Jones 3 siblings, 0 replies; 7+ messages in thread From: Linus Walleij @ 2019-11-20 20:16 UTC (permalink / raw) To: Stephan Gerhold Cc: Mark Rutland, open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS, linux-kernel, Rob Herring, Lee Jones, Linux ARM On Sun, Nov 17, 2019 at 11:14 PM Stephan Gerhold <stephan@gerhold.net> wrote: > AB8505 can now be configured from the device tree. > The configuration is almost identical to AB8500, so just add a note > for the nodes/compatibles that differ between the two revisions. > > Cc: Linus Walleij <linus.walleij@linaro.org> > Signed-off-by: Stephan Gerhold <stephan@gerhold.net> Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Yours, Linus Walleij _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 1/2] dt-bindings: mfd: ab8500: Document AB8505 bindings 2019-11-17 22:10 [PATCH 1/2] dt-bindings: mfd: ab8500: Document AB8505 bindings Stephan Gerhold 2019-11-17 22:10 ` [PATCH 2/2] mfd: ab8500-core: Add device tree support for AB8505 Stephan Gerhold 2019-11-20 20:16 ` [PATCH 1/2] dt-bindings: mfd: ab8500: Document AB8505 bindings Linus Walleij @ 2019-12-03 21:40 ` Rob Herring 2019-12-16 10:42 ` Lee Jones 3 siblings, 0 replies; 7+ messages in thread From: Rob Herring @ 2019-12-03 21:40 UTC (permalink / raw) To: Stephan Gerhold Cc: Mark Rutland, devicetree, Stephan Gerhold, Linus Walleij, linux-kernel, Lee Jones, linux-arm-kernel On Sun, 17 Nov 2019 23:10:52 +0100, Stephan Gerhold wrote: > AB8505 can now be configured from the device tree. > The configuration is almost identical to AB8500, so just add a note > for the nodes/compatibles that differ between the two revisions. > > Cc: Linus Walleij <linus.walleij@linaro.org> > Signed-off-by: Stephan Gerhold <stephan@gerhold.net> > --- > Documentation/devicetree/bindings/mfd/ab8500.txt | 8 +++++--- > 1 file changed, 5 insertions(+), 3 deletions(-) > Reviewed-by: Rob Herring <robh@kernel.org> _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 1/2] dt-bindings: mfd: ab8500: Document AB8505 bindings 2019-11-17 22:10 [PATCH 1/2] dt-bindings: mfd: ab8500: Document AB8505 bindings Stephan Gerhold ` (2 preceding siblings ...) 2019-12-03 21:40 ` Rob Herring @ 2019-12-16 10:42 ` Lee Jones 3 siblings, 0 replies; 7+ messages in thread From: Lee Jones @ 2019-12-16 10:42 UTC (permalink / raw) To: Stephan Gerhold Cc: Mark Rutland, devicetree, Linus Walleij, linux-kernel, Rob Herring, linux-arm-kernel On Sun, 17 Nov 2019, Stephan Gerhold wrote: > AB8505 can now be configured from the device tree. > The configuration is almost identical to AB8500, so just add a note > for the nodes/compatibles that differ between the two revisions. > > Cc: Linus Walleij <linus.walleij@linaro.org> > Signed-off-by: Stephan Gerhold <stephan@gerhold.net> > --- > Documentation/devicetree/bindings/mfd/ab8500.txt | 8 +++++--- > 1 file changed, 5 insertions(+), 3 deletions(-) Applied, thanks. -- Lee Jones [李琼斯] Linaro Services Technical Lead Linaro.org │ Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2019-12-16 10:44 UTC | newest] Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2019-11-17 22:10 [PATCH 1/2] dt-bindings: mfd: ab8500: Document AB8505 bindings Stephan Gerhold 2019-11-17 22:10 ` [PATCH 2/2] mfd: ab8500-core: Add device tree support for AB8505 Stephan Gerhold 2019-11-20 20:17 ` Linus Walleij 2019-12-16 10:43 ` Lee Jones 2019-11-20 20:16 ` [PATCH 1/2] dt-bindings: mfd: ab8500: Document AB8505 bindings Linus Walleij 2019-12-03 21:40 ` Rob Herring 2019-12-16 10:42 ` Lee Jones
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).