ANDROID: irqchip/gic-v3-its: Export suspend and resume functions for S2IDLE
Although the suspend and resume functions exist and are registered as syscore_ops in the upstream GICv3 ITS driver, there is currently no proper way to invoke these functions in the S2IDLE scenario, as the S2IDLE framework does not call syscore_ops. To address this, export the suspend and resume symbols from the GICv3 ITS driver. This allows vendor modules to hook these functions into the s2idle_ops callbacks, enabling the save and restore of the GICv3 ITS state during S2IDLE. Bug: 405256435 Signed-off-by: Youngmin Nam <youngmin.nam@samsung.com> Change-Id: Ib91e722856d5034da771c73612b5ca9f002a3342
This commit is contained in:
committed by
Treehugger Robot
parent
01b8ff7dc2
commit
9ca6372900
@@ -4883,7 +4883,7 @@ static void its_enable_quirks(struct its_node *its)
|
||||
its_quirks, its);
|
||||
}
|
||||
|
||||
static int its_save_disable(void)
|
||||
int its_save_disable(void)
|
||||
{
|
||||
struct its_node *its;
|
||||
int err = 0;
|
||||
@@ -4918,8 +4918,9 @@ err:
|
||||
|
||||
return err;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(its_save_disable);
|
||||
|
||||
static void its_restore_enable(void)
|
||||
void its_restore_enable(void)
|
||||
{
|
||||
struct its_node *its;
|
||||
int ret;
|
||||
@@ -4978,6 +4979,7 @@ static void its_restore_enable(void)
|
||||
}
|
||||
raw_spin_unlock(&its_lock);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(its_restore_enable);
|
||||
|
||||
static struct syscore_ops its_syscore_ops = {
|
||||
.suspend = its_save_disable,
|
||||
|
||||
@@ -660,6 +660,9 @@ void gic_v3_dist_init(void);
|
||||
void gic_v3_cpu_init(void);
|
||||
void gic_v3_dist_wait_for_rwp(void);
|
||||
|
||||
int its_save_disable(void);
|
||||
void its_restore_enable(void);
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user