static void tegra186_pmc_wake_syscore_resume(void *data)
{
+ struct tegra_pmc *pmc = data;
unsigned int i;
u32 mask;
static int tegra186_pmc_wake_syscore_suspend(void *data)
{
+ struct tegra_pmc *pmc = data;
unsigned int i;
/* Check if there are unhandled wake IRQs */
dev_warn(pmc->dev,
"Unhandled wake IRQs pending vector[%u]: 0x%x\n",
i, pmc->wake_status[i]);
+
wke_read_sw_wake_status(pmc);
/* flip the wakeup trigger for dual-edge triggered pads
static void tegra186_pmc_init(struct tegra_pmc *pmc)
{
pmc->syscore.ops = &tegra186_pmc_wake_syscore_ops;
+ pmc->syscore.data = pmc;
register_syscore(&pmc->syscore);
}