Nov 13 – 15, 2023
America/New_York timezone

Make sync_state()/handoff work for the common clk framework

Nov 14, 2023, 5:00 PM
"James River Salon B" (Omni Richmond Hotel)

"James River Salon B"

Omni Richmond Hotel

Power Management and Thermal Control MC Power Management and Thermal Control MC


Stephen Boyd (Google)


There have been multiple[1] attempts[2] to implement sync_state() or handoff[3] for the common clk framework so that clks which are left enabled while booting Linux aren't disabled during lateinit when unused clks are disabled. The most common reason to do this is to display a boot splash screen until the display driver can probe and enable the clks itself. All attempts to implement a solution to this problem have failed. The most recent attempt[1] didn't properly handle edge cases such as parent-child dependencies between clk controller devices and handing off the enable state from boot. We'll discuss the problem, go over the attempts to solve this, and also investigate what other subsystems (regulator, interconnect) and firmwares (ACPI) have done to solve the problem.


Primary author

Presentation materials