27.10.2020 13:09, Krzysztof Kozlowski пишет: ... >> +err_msg: >> + dev_err(emc->dev, "failed to initialize ICC: %d\n", err); > > You will print such errors on all existing DTBs. Since it is not a > failure of probe (it is actually quite expected, normal situation when > booting with older DTB), let's change it to warning (here and in all > other places and drivers). The existing DTBs will be stopped on the error message below. >> + >> + return err; >> +} >> + >> +static int tegra_emc_opp_table_init(struct tegra_emc *emc) >> +{ >> + const char *rname = "core"; >> + int err; >> + >> + /* >> + * Legacy device-trees don't have OPP table and EMC driver isn't >> + * useful in this case. >> + */ >> + if (!device_property_present(emc->dev, "operating-points-v2")) { >> + dev_err(emc->dev, "OPP table not found\n"); >> + dev_err(emc->dev, "please update your device tree\n"); >> + return -ENODEV; >> + } The existing DTBs are stopped here. ... >> + err = tegra_emc_opp_table_init(emc); >> + if (err) >> + goto unreg_notifier; > > This looks like the ABI break I mentioned around DT bindings. Are the > bindings marked as unstable? This T20 EMC driver wasn't ever used so far at all and this series makes it useful. Hence I think it should be fine to assume that the T20 EMC ABI is unstable.