02.08.2019 17:05, Peter De Schrijver пишет: > On Thu, Jul 25, 2019 at 06:18:32PM +0300, Dmitry Osipenko wrote: >> Add regulators coupler for Tegra30 SoCs that performs voltage balancing >> of a coupled regulators and thus provides voltage scaling functionality. >> >> There are 2 coupled regulators on all Tegra30 SoCs: CORE and CPU. The >> coupled regulator voltages shall be in a range of 300mV from each other >> and CORE voltage shall be higher than the CPU by N mV, where N depends >> on the CPU voltage. >> >> Signed-off-by: Dmitry Osipenko <digetx@xxxxxxxxx> >> --- >> drivers/soc/tegra/Kconfig | 4 + >> drivers/soc/tegra/Makefile | 1 + >> drivers/soc/tegra/regulators-tegra30.c | 316 +++++++++++++++++++++++++ >> 3 files changed, 321 insertions(+) >> create mode 100644 drivers/soc/tegra/regulators-tegra30.c >> > ... > >> + >> +static int tegra30_core_cpu_limit(int cpu_uV) >> +{ >> + if (cpu_uV < 800000) >> + return 950000; >> + >> + if (cpu_uV < 900000) >> + return 1000000; >> + >> + if (cpu_uV < 1000000) >> + return 1100000; >> + >> + if (cpu_uV < 1100000) >> + return 1200000; >> + >> + if (cpu_uV < 1250000) { >> + switch (tegra_sku_info.cpu_speedo_id) { >> + case 0 ... 1: > Aren't we supposed to add /* fall through */ here now? There is no compiler warning if there is nothing in-between of the case-switches, so annotation isn't really necessary here. Of course it is possible to add an explicit annotation just to make clear the fall-through intention. >> + case 4: >> + case 7 ... 8: >> + return 1200000; >> + >> + default: >> + return 1300000; >> + } >> + } >> + > > Other than that, this looks ok to me. Awesome, thank you very much! Explicit ACK will be appreciated as well.