On Thu, Jan 14, 2021 at 10:55 AM Jon Hunter <jonathanh@xxxxxxxxxx> wrote: > > > On 14/01/2021 16:52, Saravana Kannan wrote: > > ... > > > Thanks! I think you forgot to enable those logs though. Also, while > > you are at it, maybe enable the logs in device_link_add() too please? > > > Sorry try this one. > > Cheers > Jon Phew! That took almost 4 hours to debug on the side! I think I figured it out. Can you try this patch? If it works or improves things, I'll explain why it helps. -Saravana diff --git a/drivers/of/property.c b/drivers/of/property.c index 5f9eed79a8aa..1c8c65c4a887 100644 --- a/drivers/of/property.c +++ b/drivers/of/property.c @@ -1258,6 +1258,8 @@ DEFINE_SIMPLE_PROP(pinctrl5, "pinctrl-5", NULL) DEFINE_SIMPLE_PROP(pinctrl6, "pinctrl-6", NULL) DEFINE_SIMPLE_PROP(pinctrl7, "pinctrl-7", NULL) DEFINE_SIMPLE_PROP(pinctrl8, "pinctrl-8", NULL) +DEFINE_SIMPLE_PROP(gpio_compat, "gpio", "#gpio-cells") +DEFINE_SIMPLE_PROP(gpios_compat, "gpios", "#gpio-cells") DEFINE_SUFFIX_PROP(regulators, "-supply", NULL) DEFINE_SUFFIX_PROP(gpio, "-gpio", "#gpio-cells") DEFINE_SUFFIX_PROP(gpios, "-gpios", "#gpio-cells") @@ -1296,6 +1298,8 @@ static const struct supplier_bindings of_supplier_bindings[] = { { .parse_prop = parse_pinctrl6, }, { .parse_prop = parse_pinctrl7, }, { .parse_prop = parse_pinctrl8, }, + { .parse_prop = parse_gpio_compat, }, + { .parse_prop = parse_gpios_compat, }, { .parse_prop = parse_regulators, }, { .parse_prop = parse_gpio, }, { .parse_prop = parse_gpios, },