Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit dd81d8a6 authored by Amit Pundir's avatar Amit Pundir Committed by Rishabh Bhatnagar
Browse files

ANDROID: idle_notifier: Add generic idle notifiers



AOSP Change-ID: Idf29cda15be151f494ff245933c12462643388d5
moved x86_64 idle notifiers as generic so that they can
be used in interactive governor.

Upstream change 8e7a7ee9 ("x86/idle: Remove idle_notifier")
removed x86_64 idle notifiers altogether. This patch add
generic idle notifiers again.

Change-Id: Iffb48a1ea0348d9ddad93df697e4743a5531fe73
Fixes: android-4.9 commit bfd2a547fc17 ("ANDROID: ARM: Call idle notifiers")
Signed-off-by: default avatarAmit Pundir <amit.pundir@linaro.org>
Git-Commit: d82a8035d09bcfcac238b80ad97335167665a7c3
Git-Repo: https://android-git.linaro.org/git/kernel/linaro-android.git


Signed-off-by: default avatarRishabh Bhatnagar <rishabhb@codeaurora.org>
parent 4e3c5e9b
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -189,4 +189,11 @@ static inline void cpu_smt_check_topology_early(void) { }
static inline void cpu_smt_check_topology(void) { }
#endif

#define IDLE_START 1
#define IDLE_END 2

void idle_notifier_register(struct notifier_block *n);
void idle_notifier_unregister(struct notifier_block *n);
void idle_notifier_call_chain(unsigned long val);

#endif /* _LINUX_CPU_H_ */
+20 −0
Original line number Diff line number Diff line
@@ -2282,3 +2282,23 @@ void __init boot_cpu_hotplug_init(void)
#endif
	this_cpu_write(cpuhp_state.state, CPUHP_ONLINE);
}

static ATOMIC_NOTIFIER_HEAD(idle_notifier);

void idle_notifier_register(struct notifier_block *n)
{
	atomic_notifier_chain_register(&idle_notifier, n);
}
EXPORT_SYMBOL_GPL(idle_notifier_register);

void idle_notifier_unregister(struct notifier_block *n)
{
	atomic_notifier_chain_unregister(&idle_notifier, n);
}
EXPORT_SYMBOL_GPL(idle_notifier_unregister);

void idle_notifier_call_chain(unsigned long val)
{
	atomic_notifier_call_chain(&idle_notifier, val, NULL);
}
EXPORT_SYMBOL_GPL(idle_notifier_call_chain);