#endif
#define DEFAULT_CPU_GEAR_ID (0xAB0CDEFA)
+#define BOOT_CPU_GEAR_ID (0xB00DB00D)
#define TEST_CPU_GEAR_ID (DEFAULT_CPU_GEAR_ID + 1)
#define DEFAULT_LIT_FREQ_ID DEFAULT_CPU_GEAR_ID
#define DEFAULT_BIG_FREQ_ID DEFAULT_CPU_GEAR_ID
const void *id, unsigned int gear)
{
struct device *dev_abox = &data->pdev->dev;
+ struct platform_device *pdev = to_platform_device(dev);
if (id != (void *)ABOX_CPU_GEAR_BOOT)
return;
/* new */
dev_dbg(dev, "%s(%p): new\n", __func__, id);
pm_wakeup_event(dev_abox, BOOT_DONE_TIMEOUT_MS);
+ abox_request_dram_on(pdev, (void *)BOOT_CPU_GEAR_ID, true);
}
} else {
if ((old_gear >= ABOX_CPU_GEAR_MIN) &&
/* on */
dev_dbg(dev, "%s(%p): on\n", __func__, id);
pm_wakeup_event(dev_abox, BOOT_DONE_TIMEOUT_MS);
+ abox_request_dram_on(pdev, (void *)BOOT_CPU_GEAR_ID, true);
} else if ((old_gear < ABOX_CPU_GEAR_MIN) &&
(gear >= ABOX_CPU_GEAR_MIN)) {
/* off */
dev_dbg(dev, "%s(%p): off\n", __func__, id);
- pm_relax(dev);
+ pm_relax(dev_abox);
+ abox_request_dram_on(pdev, (void *)BOOT_CPU_GEAR_ID, false);
}
}
}