slove the bug -- support gpio3 and gpio4 interrupt wake up sysytem
author许盛飞 <xsf@rock-chips.com>
Tue, 21 Aug 2012 03:13:44 +0000 (11:13 +0800)
committer许盛飞 <xsf@rock-chips.com>
Tue, 21 Aug 2012 03:13:44 +0000 (11:13 +0800)
arch/arm/mach-rk30/pm.c

index 055999f64d5e19f81cb5e676f576b0df9f4d3db4..03b08f8c6383ca8b615ab618ef605864667a8d1c 100644 (file)
@@ -377,14 +377,18 @@ static void __sramfunc rk30_sram_suspend(void)
                          | (1 << CLK_GATE_PCLK_CPU)
                          , clkgt_regs[0], CRU_CLKGATES_CON(0), 0xffff);
        gate_save_soc_clk(0, clkgt_regs[1], CRU_CLKGATES_CON(1), 0xffff);
-       if(clkgt_regs[8]&((1<<12)|(1<13))){
+       //if(clkgt_regs[8]&((1<<CLK_GATE_PCLK_GPIO3% 16)|(1<CLK_GATE_PCLK_GPIO4% 16)) == (0x03 << CLK_GATE_PCLK_GPIO3% 16)){
+       if(((clkgt_regs[8] >> CLK_GATE_PCLK_GPIO3% 16) & 0x03) == 0x03){
                gate_save_soc_clk(0
-                                 | (1 << CLK_GATE_PERIPH_SRC % 16)
-                                 | (1 << CLK_GATE_PCLK_PERIPH % 16)
                                , clkgt_regs[2], CRU_CLKGATES_CON(2), 0xffff);
+
        }else{
                gate_save_soc_clk(0
+                                 | (1 << CLK_GATE_PERIPH_SRC % 16)
+                                 | (1 << CLK_GATE_PCLK_PERIPH % 16)
                                , clkgt_regs[2], CRU_CLKGATES_CON(2), 0xffff);
+                       sram_printch('8');
+
 
        }
        gate_save_soc_clk(0