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

Commit dd52076d authored by qctecmdr Service's avatar qctecmdr Service Committed by Gerrit - the friendly Code Review server
Browse files

Merge "PM / wakeup: Add msm_show_resume_irq_mask to print off wakeup irq"

parents af3357db e8d87f1c
Loading
Loading
Loading
Loading
+2 −0
Original line number Original line Diff line number Diff line
@@ -98,6 +98,8 @@ extern int pm_async_enabled;
/* drivers/base/power/main.c */
/* drivers/base/power/main.c */
extern struct list_head dpm_list;	/* The active device list */
extern struct list_head dpm_list;	/* The active device list */


extern int msm_show_resume_irq_mask;

static inline struct device *to_device(struct list_head *entry)
static inline struct device *to_device(struct list_head *entry)
{
{
	return container_of(entry, struct device, power.entry);
	return container_of(entry, struct device, power.entry);
+17 −0
Original line number Original line Diff line number Diff line
@@ -16,6 +16,9 @@
#include <linux/debugfs.h>
#include <linux/debugfs.h>
#include <linux/pm_wakeirq.h>
#include <linux/pm_wakeirq.h>
#include <trace/events/power.h>
#include <trace/events/power.h>
#include <linux/irq.h>
#include <linux/interrupt.h>
#include <linux/irqdesc.h>


#include "power.h"
#include "power.h"


@@ -881,7 +884,21 @@ void pm_wakeup_clear(bool reset)


void pm_system_irq_wakeup(unsigned int irq_number)
void pm_system_irq_wakeup(unsigned int irq_number)
{
{
	struct irq_desc *desc;
	const char *name = "null";

	if (pm_wakeup_irq == 0) {
	if (pm_wakeup_irq == 0) {
		if (msm_show_resume_irq_mask) {
			desc = irq_to_desc(irq_number);
			if (desc == NULL)
				name = "stray irq";
			else if (desc->action && desc->action->name)
				name = desc->action->name;

			pr_warn("%s: %d triggered %s\n", __func__,
					irq_number, name);

		}
		pm_wakeup_irq = irq_number;
		pm_wakeup_irq = irq_number;
		pm_system_wakeup();
		pm_system_wakeup();
	}
	}