Quoting Tero Kristo (2018-08-31 08:07:00) > @@ -492,19 +501,35 @@ static void __init _ti_omap4_clkctrl_setup(struct device_node *node) > > provider->base = of_iomap(node, 0); > > - provider->clkdm_name = kmalloc(strlen(node->parent->name) + 3, > - GFP_KERNEL); > - if (!provider->clkdm_name) { > - kfree(provider); > - return; > + if (ti_clk_get_features()->flags & TI_CLK_CLKCTRL_COMPAT) { > + provider->clkdm_name = kmalloc(strlen(node->parent->name) + 3, > + GFP_KERNEL); > + if (!provider->clkdm_name) { > + kfree(provider); > + return; > + } > + > + /* > + * Create default clkdm name, replace _cm from end of parent > + * node name with _clkdm > + */ > + strcpy(provider->clkdm_name, node->parent->name); > + provider->clkdm_name[strlen(provider->clkdm_name) - 2] = 0; > + } else { > + provider->clkdm_name = kmalloc(strlen(node->name), GFP_KERNEL); > + if (!provider->clkdm_name) { > + kfree(provider); > + return; > + } > + > + /* > + * Create default clkdm name, replace _clkctrl from end of > + * node name with _clkdm > + */ > + strcpy(provider->clkdm_name, node->name); > + provider->clkdm_name[strlen(provider->clkdm_name) - 7] = 0; > } > This conflicts with Rob's change so I tried to fix it up. Let me know if something is horribly wrong with it. I suspect Rob will need to figure out how to make node::name usage go away again, but I put it back.