[PATCH v5 01/20] clk: bump stdout clock usage for earlycon
André Draszik
andre.draszik at linaro.org
Thu Aug 8 07:41:52 PDT 2024
On Thu, 2024-08-08 at 15:11 +0100, André Draszik wrote:
> On some platforms, earlycon depends on the bootloader setup stdout
> clocks being retained. In some cases stdout UART clocks (or their
> parents) can get disabled during loading of other drivers (e.g. i2c)
> causing earlycon to stop to work sometime into the boot, halting the
> whole system.
>
> Since there are at least two platforms where that is the case, i.MX and
> the Exynos-derivative gs101, this patch adds some logic to the clk core
> to detect these clocks if earlycon is enabled, to bump their usage
> count as part of of_clk_add_hw_provider() and of_clk_add_provider(),
> and to release them again at the end of init.
>
> This way code duplication in affected platforms can be avoided.
>
> The general idea is based on similar code in the i.MX clock driver, but
> this here is a bit more generic as in general (e.g. on gs101) clocks
> can come from various different clock units (driver instances) and
> therefore it can be necessary to run this code multiple times until all
> required stdout clocks have probed.
>
> Signed-off-by: André Draszik <andre.draszik at linaro.org>
> ---
> drivers/clk/clk.c | 129 ++++++++++++++++++++++++++++++++++++++++
> drivers/clk/samsung/clk-gs101.c | 1 +
I shall send a v6 with the modification to clk-gs101.c dropped. This was left
by accident while moving some of the code :-(
Cheers,
Andre'
More information about the linux-arm-kernel
mailing list