diff options
author | Benoit Goby <benoit@android.com> | 2011-07-18 14:48:15 -0700 |
---|---|---|
committer | Colin Cross <ccross@android.com> | 2011-08-02 20:57:56 -0700 |
commit | 24a1ce29a141166a6c2e69ec7c3e31848814a539 (patch) | |
tree | 4780dd569b89df0ac8a327bc77c9d474db6c39b4 /arch/arm/mach-omap2/pm44xx.c | |
parent | 50614a9ce1917ebb42577ce79a1cff528342de7e (diff) | |
download | kernel_samsung_tuna-24a1ce29a141166a6c2e69ec7c3e31848814a539.zip kernel_samsung_tuna-24a1ce29a141166a6c2e69ec7c3e31848814a539.tar.gz kernel_samsung_tuna-24a1ce29a141166a6c2e69ec7c3e31848814a539.tar.bz2 |
OMAP4: HSI: fix hsi IO wakeup missed events
HSI tasklet was not scheduled if CAWAKE is detected
when L3INIT_PD is OFF or RET.
Change-Id: I9c71d7fa417e5076bb6c0ac93068f3b1566e9eec
Signed-off-by: Djamil Elaidi <d-elaidi@ti.com>
Diffstat (limited to 'arch/arm/mach-omap2/pm44xx.c')
-rw-r--r-- | arch/arm/mach-omap2/pm44xx.c | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/arch/arm/mach-omap2/pm44xx.c b/arch/arm/mach-omap2/pm44xx.c index 368bf59..9203f27 100644 --- a/arch/arm/mach-omap2/pm44xx.c +++ b/arch/arm/mach-omap2/pm44xx.c @@ -24,6 +24,7 @@ #include <asm/hardware/gic.h> #include <mach/omap4-common.h> +#include <plat/omap_hsi.h> #include <plat/common.h> #include <plat/usb.h> @@ -522,15 +523,8 @@ static irqreturn_t prcm_interrupt_handler (int irq, void *dev_id) /* Check if a IO_ST interrupt */ if (irqstatus_mpu & OMAP4430_IO_ST_MASK) { /* Check if HSI caused the IO wakeup */ - #define CA_WAKE_MUX_REG (0x4a1000C2) - #define CM_L3INIT_HSI_CLKCTRL (0x4a009338) - #define HSI_SYSCONFIG (0x4a058010) - if (omap_readw(CA_WAKE_MUX_REG) & (1<<15)) { - /* Enable HSI module */ - omap_writel(omap_readl(CM_L3INIT_HSI_CLKCTRL) | 0x1, CM_L3INIT_HSI_CLKCTRL); - /* Put HSI in: No-standby and No-idle */ - omap_writel( (1<<3) | (1<<12), HSI_SYSCONFIG); - } + if (omap_hsi_is_io_wakeup_from_hsi()) + omap_hsi_wakeup(0); omap_uart_resume_idle(); usbhs_wakeup(); omap4_trigger_ioctrl(); |