projects
/
firefly-linux-kernel-4.4.55.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
UPSTREAM: regmap: drop cache if the bus transfer error
[firefly-linux-kernel-4.4.55.git]
/
drivers
/
base
/
syscore.c
diff --git
a/drivers/base/syscore.c
b/drivers/base/syscore.c
index 0ab546558c4e2e125ba5ab3c1a294e2bd3b3e144..96c34a95cc625929a08ca0e76c13b9b830a4907c 100644
(file)
--- a/
drivers/base/syscore.c
+++ b/
drivers/base/syscore.c
@@
-9,7
+9,8
@@
#include <linux/syscore_ops.h>
#include <linux/mutex.h>
#include <linux/module.h>
#include <linux/syscore_ops.h>
#include <linux/mutex.h>
#include <linux/module.h>
-#include <linux/interrupt.h>
+#include <linux/suspend.h>
+#include <trace/events/power.h>
#include <linux/wakeup_reason.h>
static LIST_HEAD(syscore_ops_list);
#include <linux/wakeup_reason.h>
static LIST_HEAD(syscore_ops_list);
@@
-50,12
+51,12
@@
int syscore_suspend(void)
struct syscore_ops *ops;
int ret = 0;
struct syscore_ops *ops;
int ret = 0;
+ trace_suspend_resume(TPS("syscore_suspend"), 0, true);
pr_debug("Checking wakeup interrupts\n");
/* Return error code if there are any wakeup interrupts pending. */
pr_debug("Checking wakeup interrupts\n");
/* Return error code if there are any wakeup interrupts pending. */
- ret = check_wakeup_irqs();
- if (ret)
- return ret;
+ if (pm_wakeup_pending())
+ return -EBUSY;
WARN_ONCE(!irqs_disabled(),
"Interrupts enabled before system core suspend.\n");
WARN_ONCE(!irqs_disabled(),
"Interrupts enabled before system core suspend.\n");
@@
-71,6
+72,7
@@
int syscore_suspend(void)
"Interrupts enabled after %pF\n", ops->suspend);
}
"Interrupts enabled after %pF\n", ops->suspend);
}
+ trace_suspend_resume(TPS("syscore_suspend"), 0, false);
return 0;
err_out:
return 0;
err_out:
@@
-95,6
+97,7
@@
void syscore_resume(void)
{
struct syscore_ops *ops;
{
struct syscore_ops *ops;
+ trace_suspend_resume(TPS("syscore_resume"), 0, true);
WARN_ONCE(!irqs_disabled(),
"Interrupts enabled before system core resume.\n");
WARN_ONCE(!irqs_disabled(),
"Interrupts enabled before system core resume.\n");
@@
-106,6
+109,7
@@
void syscore_resume(void)
WARN_ONCE(!irqs_disabled(),
"Interrupts enabled after %pF\n", ops->resume);
}
WARN_ONCE(!irqs_disabled(),
"Interrupts enabled after %pF\n", ops->resume);
}
+ trace_suspend_resume(TPS("syscore_resume"), 0, false);
}
EXPORT_SYMBOL_GPL(syscore_resume);
#endif /* CONFIG_PM_SLEEP */
}
EXPORT_SYMBOL_GPL(syscore_resume);
#endif /* CONFIG_PM_SLEEP */