On 2019-01-10 11:37:36 +0100, Wolfram Sang wrote: > Hi Niklas, > > thanks for this work! > > > This series aims to address a issue reported by Geert [1]. It's tested > > on Renesas Gen2 and Gen3 boards and the issue reported by Geert is > > fixed. > > Great news! > > > With correct accounting for runtime PM the Renesas boards no longer > > switch of the clocks when suspending. I'm not sure if this is the > > You mean runtime-suspending here? > > > intended design or nor as in tmio_mmc_host_probe() we have: > > > > /* > > * On Gen2+, eMMC with NONREMOVABLE currently fails because native > > * hotplug gets disabled. It seems RuntimePM related yet we need further > > * research. Since we are planning a PM overhaul anyway, let's enforce > > * for now the device being active by enabling native hotplug always. > > */ > > if (pdata->flags & TMIO_MMC_MIN_RCAR2) > > _host->native_hotplug = true; > > Can you test if we still need this? With the above block removed, it should > > a) fail to probe eMMC on Gen3 without your series > > b) hopefully probe eMMC on Gen3 with your series I can remove the above section and the driver still probes fine on gen3. But if I remove this and keep the 2/2 of this series the clock imbalance when suspending/resumeing appears in a new form. After boot (both cases): # grep -iE "sd|mmc" /sys/kernel/debug/clk/clk_summary .sdsrc 3 3 0 798720000 0 0 50000 sd3 1 1 0 12480000 0 0 50000 sdif3 3 3 0 12480000 0 0 50000 sd2 1 1 0 199680000 0 0 50000 sdif2 3 3 0 199680000 0 0 50000 sd1 0 0 0 199680000 0 0 50000 sdif1 0 0 0 199680000 0 0 50000 sd0 1 1 0 12480000 0 0 50000 sdif0 3 3 0 12480000 0 0 50000 After resume with the section removed and 2/2: # grep -iE "sd|mmc" /sys/kernel/debug/clk/clk_summary .sdsrc 3 3 0 798720000 0 0 50000 sd3 1 1 0 12480000 0 0 50000 sdif3 3 3 0 12480000 0 0 50000 sd2 1 1 0 199680000 0 0 50000 sdif2 1 2 0 199680000 0 0 50000 sd1 0 0 0 199680000 0 0 50000 sdif1 0 0 0 199680000 0 0 50000 sd0 1 1 0 12480000 0 0 50000 sdif0 3 3 0 12480000 0 0 50000 With this section intact and 2/2: # grep -iE "sd|mmc" /sys/kernel/debug/clk/clk_summary .sdsrc 3 3 0 798720000 0 0 50000 sd3 1 1 0 12480000 0 0 50000 sdif3 3 3 0 12480000 0 0 50000 sd2 1 1 0 199680000 0 0 50000 sdif2 3 3 0 199680000 0 0 50000 sd1 0 0 0 199680000 0 0 50000 sdif1 0 0 0 199680000 0 0 50000 sd0 1 1 0 12480000 0 0 50000 sdif0 3 3 0 12480000 0 0 50000 -- Regards, Niklas Söderlund