ANDROID: GKI: clk: Add support for clock providers with sync state
Clock providers whose drivers have sync_state() implemented will disable their clocks once all their consumers have probed. So during late_initcall_sync(), don't disable unused clocks of these clock providers. Also, provide a clk_sync_state() API that clock providers can use to disable all their unused clocks once they get their sync_state() callback. Bug: 144066914 Signed-off-by: Saravana Kannan <saravanak@google.com> Change-Id: Id01bfc15347812faa19802463c088db162c7d117
This commit is contained in:
@@ -32,6 +32,7 @@
|
||||
#define CLK_OPS_PARENT_ENABLE BIT(12)
|
||||
/* duty cycle call may be forwarded to the parent clock */
|
||||
#define CLK_DUTY_CYCLE_PARENT BIT(13)
|
||||
#define CLK_DONT_HOLD_STATE BIT(14) /* Don't hold state */
|
||||
|
||||
struct clk;
|
||||
struct clk_hw;
|
||||
@@ -815,6 +816,7 @@ void devm_clk_unregister(struct device *dev, struct clk *clk);
|
||||
|
||||
void clk_hw_unregister(struct clk_hw *hw);
|
||||
void devm_clk_hw_unregister(struct device *dev, struct clk_hw *hw);
|
||||
void clk_sync_state(struct device *dev);
|
||||
|
||||
/* helper functions */
|
||||
const char *__clk_get_name(const struct clk *clk);
|
||||
|
Reference in New Issue
Block a user