Am Freitag, 18. Dezember 2015, 19:33:50 schrieb Heiko St?bner: > As commit 1d33929e2a2b ("clk: rockchip: switch PLLs to slow mode before > reboot for rk3288") states, switching the PLLs to slow-mode is only > necessary when rebooting using the soft-reset done through the CRU. > > The dwc2 controllers used create really big number of interrupts in > special constellations involving usb-hubs and their number is so high, > it can even overwhelm the interrupt handler if the cpu-speed os to low. > > Right now the PLLs are put into slow-mode in a shutdown syscore_ops > callback which means it happens on all reboots (not only the soft-reset > ones) and even on poweroff actions. > > This can result in the system not powering off and getting stuck instead, > so we should move the slow-mode change nearer to the actual reboot action. > > For this we introduce the possiblity to also set a callback that gets > called from the restart-handler directly prior to restarting the system > and move the shutdown-callback to this new option. > > With this the slow-mode switch is done only on the necessary reboots > and also has a smaller possibility of causing artifacts. > > Fixes: 1d33929e2a2b ("clk: rockchip: switch PLLs to slow mode before reboot > for rk3288") Signed-off-by: Heiko Stuebner <heiko.stuebner at collabora.com> applied to my clk branch for 4.5