Quoting Johan Hovold (2024-09-02 00:08:30) > A recent change started parking the RCG at an always on parent during > registration, something which specifically breaks handover from an early > serial console. > > Quoting Stephen Boyd who fixed this issue for SM8550 [1]: > > The QUPs aren't shared in a way that requires parking the RCG at > an always on parent in case some other entity turns on the clk. > The hardware is capable of setting a new frequency itself with > the DFS mode, so parking is unnecessary. Furthermore, there > aren't any GDSCs for these devices, so there isn't a possibility > of the GDSC turning on the clks for housekeeping purposes. > > This wasn't a problem to mark these clks shared until we started > parking shared RCGs at clk registration time in commit > 01a0a6cc8cfd ("clk: qcom: Park shared RCGs upon registration"). > Parking at init is actually harmful to the UART when earlycon is > used. If the device is pumping out data while the frequency > changes you'll see garbage on the serial console until the > driver can probe and actually set a proper frequency. > > Fixes: 01a0a6cc8cfd ("clk: qcom: Park shared RCGs upon registration") > Fixes: d65d005f9a6c ("clk: qcom: add sc8280xp GCC driver") > Link: https://lore.kernel.org/all/20240819233628.2074654-2-swboyd@xxxxxxxxxxxx/ [1] > Signed-off-by: Johan Hovold <johan+linaro@xxxxxxxxxx> > --- Applied to clk-fixes