Message ID | 20220411050100.40964-1-samuel@sholland.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | clk: sunxi-ng: sun6i-rtc: Mark rtc-32k as critical | expand |
Dne ponedeljek, 11. april 2022 ob 07:00:59 CEST je Samuel Holland napisal(a): > Because some newer hardware variants have multiple possible parents for > the RTC's timekeeping clock, this driver models it as a "rtc-32k" clock. > However, it does not add any consumer for this clock. This causes the > common clock framework to disable it, preventing RTC time access. > > Since the RTC's timekeeping clock should always be enabled, regardless > of which drivers are loaded, let's mark this clock as critical instead > of adding a consumer in the RTC driver. > > Fixes: d91612d7f01a ("clk: sunxi-ng: Add support for the sun6i RTC clocks") > Signed-off-by: Samuel Holland <samuel@sholland.org> Acked-by: Jernej Skrabec <jernej.skrabec@gmail.com> Best regards, Jernej > --- > > drivers/clk/sunxi-ng/ccu-sun6i-rtc.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/clk/sunxi-ng/ccu-sun6i-rtc.c b/drivers/clk/sunxi-ng/ccu- sun6i-rtc.c > index 8a10bade7e0d..3d9c9ce5a3db 100644 > --- a/drivers/clk/sunxi-ng/ccu-sun6i-rtc.c > +++ b/drivers/clk/sunxi-ng/ccu-sun6i-rtc.c > @@ -241,6 +241,7 @@ static struct clk_init_data rtc_32k_init_data = { > .ops = &ccu_mux_ops, > .parent_hws = rtc_32k_parents, > .num_parents = ARRAY_SIZE(rtc_32k_parents), /* updated during probe */ > + .flags = CLK_IS_CRITICAL, > }; > > static struct ccu_mux rtc_32k_clk = { > -- > 2.35.1 > >
Dne ponedeljek, 11. april 2022 ob 07:00:59 CEST je Samuel Holland napisal(a): > Because some newer hardware variants have multiple possible parents for > the RTC's timekeeping clock, this driver models it as a "rtc-32k" clock. > However, it does not add any consumer for this clock. This causes the > common clock framework to disable it, preventing RTC time access. > > Since the RTC's timekeeping clock should always be enabled, regardless > of which drivers are loaded, let's mark this clock as critical instead > of adding a consumer in the RTC driver. > > Fixes: d91612d7f01a ("clk: sunxi-ng: Add support for the sun6i RTC clocks") > Signed-off-by: Samuel Holland <samuel@sholland.org> Applied to sunxi/fixes-for-5.18, thanks! Best regards, Jernej
diff --git a/drivers/clk/sunxi-ng/ccu-sun6i-rtc.c b/drivers/clk/sunxi-ng/ccu-sun6i-rtc.c index 8a10bade7e0d..3d9c9ce5a3db 100644 --- a/drivers/clk/sunxi-ng/ccu-sun6i-rtc.c +++ b/drivers/clk/sunxi-ng/ccu-sun6i-rtc.c @@ -241,6 +241,7 @@ static struct clk_init_data rtc_32k_init_data = { .ops = &ccu_mux_ops, .parent_hws = rtc_32k_parents, .num_parents = ARRAY_SIZE(rtc_32k_parents), /* updated during probe */ + .flags = CLK_IS_CRITICAL, }; static struct ccu_mux rtc_32k_clk = {
Because some newer hardware variants have multiple possible parents for the RTC's timekeeping clock, this driver models it as a "rtc-32k" clock. However, it does not add any consumer for this clock. This causes the common clock framework to disable it, preventing RTC time access. Since the RTC's timekeeping clock should always be enabled, regardless of which drivers are loaded, let's mark this clock as critical instead of adding a consumer in the RTC driver. Fixes: d91612d7f01a ("clk: sunxi-ng: Add support for the sun6i RTC clocks") Signed-off-by: Samuel Holland <samuel@sholland.org> --- drivers/clk/sunxi-ng/ccu-sun6i-rtc.c | 1 + 1 file changed, 1 insertion(+)