drivers/of/property.c | 2 ++ 1 file changed, 2 insertions(+)
Add support for parsing MMC power sequencing (pwrseq) binding so that
fw_devlink can enforce the dependency.
Signed-off-by: Francesco Valla <francesco@valla.it>
---
Changes in v2:
- EDITME: describe what is new in this series revision.
- EDITME: use bulletpoints and terse descriptions.
- Link to v1: https://lore.kernel.org/r/20250930-mmc_pwrseq-v1-1-7fd2764f5ac1@valla.it
---
drivers/of/property.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/of/property.c b/drivers/of/property.c
index c1feb631e3831d7d5ec23c606af31731bfc2f8b8..fcf10c4f02dcf879e1f25e4fa97b25152d58bacb 100644
--- a/drivers/of/property.c
+++ b/drivers/of/property.c
@@ -1377,6 +1377,7 @@ DEFINE_SIMPLE_PROP(post_init_providers, "post-init-providers", NULL)
DEFINE_SIMPLE_PROP(access_controllers, "access-controllers", "#access-controller-cells")
DEFINE_SIMPLE_PROP(pses, "pses", "#pse-cells")
DEFINE_SIMPLE_PROP(power_supplies, "power-supplies", NULL)
+DEFINE_SIMPLE_PROP(mmc_pwrseq, "mmc-pwrseq", NULL)
DEFINE_SUFFIX_PROP(regulators, "-supply", NULL)
DEFINE_SUFFIX_PROP(gpio, "-gpio", "#gpio-cells")
@@ -1524,6 +1525,7 @@ static const struct supplier_bindings of_supplier_bindings[] = {
{ .parse_prop = parse_msi_parent, },
{ .parse_prop = parse_pses, },
{ .parse_prop = parse_power_supplies, },
+ { .parse_prop = parse_mmc_pwrseq, },
{ .parse_prop = parse_gpio_compat, },
{ .parse_prop = parse_interrupts, },
{ .parse_prop = parse_interrupt_map, },
---
base-commit: 30d4efb2f5a515a60fe6b0ca85362cbebea21e2f
change-id: 20250930-mmc_pwrseq-247089ac9583
Best regards,
--
Francesco Valla <francesco@valla.it>
On Tue, Sep 30, 2025 at 8:58 AM Francesco Valla <francesco@valla.it> wrote: > > Add support for parsing MMC power sequencing (pwrseq) binding so that > fw_devlink can enforce the dependency. I took a quick look at the documentation. It's not clear to me that mmc-pwrseq always points to a supplier. Can someone with more experience on this confirm that is what it's supposed to point at? Meaning if A lists B as pwrseq, is it always the case that B needs to be powered on? The binding documentation doesn't say anything about B needs to be powered on first. It's just saying A and B have an ordering requirement. If the meaning of the binding is _ALWAYS_ B needs to be powered on first, then yes, this patch is correct and I can give a reviewed-by. Thanks, Saravana > > Signed-off-by: Francesco Valla <francesco@valla.it> > --- > Changes in v2: > - EDITME: describe what is new in this series revision. > - EDITME: use bulletpoints and terse descriptions. > - Link to v1: https://lore.kernel.org/r/20250930-mmc_pwrseq-v1-1-7fd2764f5ac1@valla.it > --- > drivers/of/property.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/of/property.c b/drivers/of/property.c > index c1feb631e3831d7d5ec23c606af31731bfc2f8b8..fcf10c4f02dcf879e1f25e4fa97b25152d58bacb 100644 > --- a/drivers/of/property.c > +++ b/drivers/of/property.c > @@ -1377,6 +1377,7 @@ DEFINE_SIMPLE_PROP(post_init_providers, "post-init-providers", NULL) > DEFINE_SIMPLE_PROP(access_controllers, "access-controllers", "#access-controller-cells") > DEFINE_SIMPLE_PROP(pses, "pses", "#pse-cells") > DEFINE_SIMPLE_PROP(power_supplies, "power-supplies", NULL) > +DEFINE_SIMPLE_PROP(mmc_pwrseq, "mmc-pwrseq", NULL) > DEFINE_SUFFIX_PROP(regulators, "-supply", NULL) > DEFINE_SUFFIX_PROP(gpio, "-gpio", "#gpio-cells") > > @@ -1524,6 +1525,7 @@ static const struct supplier_bindings of_supplier_bindings[] = { > { .parse_prop = parse_msi_parent, }, > { .parse_prop = parse_pses, }, > { .parse_prop = parse_power_supplies, }, > + { .parse_prop = parse_mmc_pwrseq, }, > { .parse_prop = parse_gpio_compat, }, > { .parse_prop = parse_interrupts, }, > { .parse_prop = parse_interrupt_map, }, > > --- > base-commit: 30d4efb2f5a515a60fe6b0ca85362cbebea21e2f > change-id: 20250930-mmc_pwrseq-247089ac9583 > > Best regards, > -- > Francesco Valla <francesco@valla.it> >
First time using the b4-based flow, so I _obviously_ messed it up. Nevertheless, the (v1) patch still stands. Apologies for the confusion. Francesco On Tuesday, 30 September 2025 at 17:58:17 Francesco Valla <francesco@valla.it> wrote: > Add support for parsing MMC power sequencing (pwrseq) binding so that > fw_devlink can enforce the dependency. > > Signed-off-by: Francesco Valla <francesco@valla.it> > --- > Changes in v2: > - EDITME: describe what is new in this series revision. > - EDITME: use bulletpoints and terse descriptions. > - Link to v1: https://lore.kernel.org/r/20250930-mmc_pwrseq-v1-1-7fd2764f5ac1@valla.it > --- > drivers/of/property.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/of/property.c b/drivers/of/property.c > index c1feb631e3831d7d5ec23c606af31731bfc2f8b8..fcf10c4f02dcf879e1f25e4fa97b25152d58bacb 100644 > --- a/drivers/of/property.c > +++ b/drivers/of/property.c > @@ -1377,6 +1377,7 @@ DEFINE_SIMPLE_PROP(post_init_providers, "post-init-providers", NULL) > DEFINE_SIMPLE_PROP(access_controllers, "access-controllers", "#access-controller-cells") > DEFINE_SIMPLE_PROP(pses, "pses", "#pse-cells") > DEFINE_SIMPLE_PROP(power_supplies, "power-supplies", NULL) > +DEFINE_SIMPLE_PROP(mmc_pwrseq, "mmc-pwrseq", NULL) > DEFINE_SUFFIX_PROP(regulators, "-supply", NULL) > DEFINE_SUFFIX_PROP(gpio, "-gpio", "#gpio-cells") > > @@ -1524,6 +1525,7 @@ static const struct supplier_bindings of_supplier_bindings[] = { > { .parse_prop = parse_msi_parent, }, > { .parse_prop = parse_pses, }, > { .parse_prop = parse_power_supplies, }, > + { .parse_prop = parse_mmc_pwrseq, }, > { .parse_prop = parse_gpio_compat, }, > { .parse_prop = parse_interrupts, }, > { .parse_prop = parse_interrupt_map, }, > > --- > base-commit: 30d4efb2f5a515a60fe6b0ca85362cbebea21e2f > change-id: 20250930-mmc_pwrseq-247089ac9583 > > Best regards, >
© 2016 - 2025 Red Hat, Inc.