rk3168_86v: compatible with wm831x and act8846; set ddr 300 Mhz
authorhjc <hjc@rock-chips.com>
Tue, 12 Mar 2013 02:15:11 +0000 (10:15 +0800)
committerhjc <hjc@rock-chips.com>
Tue, 12 Mar 2013 02:15:11 +0000 (10:15 +0800)
arch/arm/configs/rk3168_86v_codec_defconfig
arch/arm/configs/rk3168_86v_defconfig
arch/arm/mach-rk30/board-rk3168-86v.c

index 25d6d06b7f8f45304b55f5405a649571d0e73cf2..29895499ceab94e671b8e8cf947dfcb18b042321 100644 (file)
@@ -22,7 +22,7 @@ CONFIG_MODULE_UNLOAD=y
 CONFIG_MODULE_FORCE_UNLOAD=y
 CONFIG_ARCH_RK30=y
 CONFIG_DDR_INIT_CHANGE_FREQ=y
-CONFIG_DDR_SDRAM_FREQ=324
+CONFIG_DDR_SDRAM_FREQ=300
 # CONFIG_DDR_FREQ is not set
 # CONFIG_DDR_TEST is not set
 CONFIG_RK_CLOCK_PROC=y
@@ -271,8 +271,10 @@ CONFIG_RK29_FEED_DOG_BY_INTE=y
 CONFIG_RK29_WATCHDOG_ATBOOT=y
 CONFIG_RK29_WATCHDOG_DEFAULT_TIME=5
 CONFIG_MFD_TPS65910=y
+CONFIG_MFD_WM831X_I2C=y
 CONFIG_REGULATOR=y
 CONFIG_REGULATOR_TPS65910=y
+CONFIG_REGULATOR_WM831X=y
 CONFIG_REGULATOR_ACT8846=y
 CONFIG_MEDIA_SUPPORT=y
 CONFIG_VIDEO_DEV=y
@@ -384,6 +386,7 @@ CONFIG_LEDS_GPIO=y
 CONFIG_SWITCH=y
 CONFIG_SWITCH_GPIO=y
 CONFIG_RTC_CLASS=y
+CONFIG_RTC_DRV_WM831X=y
 CONFIG_TPS65910_RTC=y
 CONFIG_STAGING=y
 CONFIG_ANDROID=y
index 98b71b27e4160ea97360bddb96422485cebf1a8a..5225f9fe231375351508760b16c0b4053a4ab87d 100644 (file)
@@ -22,7 +22,7 @@ CONFIG_MODULE_UNLOAD=y
 CONFIG_MODULE_FORCE_UNLOAD=y
 CONFIG_ARCH_RK30=y
 CONFIG_DDR_INIT_CHANGE_FREQ=y
-CONFIG_DDR_SDRAM_FREQ=324
+CONFIG_DDR_SDRAM_FREQ=300
 # CONFIG_DDR_FREQ is not set
 # CONFIG_DDR_TEST is not set
 CONFIG_RK_CLOCK_PROC=y
@@ -271,9 +271,11 @@ CONFIG_RK29_FEED_DOG_BY_INTE=y
 CONFIG_RK29_WATCHDOG_ATBOOT=y
 CONFIG_RK29_WATCHDOG_DEFAULT_TIME=5
 CONFIG_MFD_TPS65910=y
+CONFIG_MFD_WM831X_I2C=y
 CONFIG_MFD_RK610=y
 CONFIG_REGULATOR=y
 CONFIG_REGULATOR_TPS65910=y
+CONFIG_REGULATOR_WM831X=y
 CONFIG_REGULATOR_ACT8846=y
 CONFIG_MEDIA_SUPPORT=y
 CONFIG_VIDEO_DEV=y
@@ -388,6 +390,7 @@ CONFIG_LEDS_GPIO=y
 CONFIG_SWITCH=y
 CONFIG_SWITCH_GPIO=y
 CONFIG_RTC_CLASS=y
+CONFIG_RTC_DRV_WM831X=y
 CONFIG_TPS65910_RTC=y
 CONFIG_STAGING=y
 CONFIG_ANDROID=y
index d311c01dc556910b38827e5eaa8f083e1f89f307..97b71df6507d0393414782724d52cd27a17e5d75 100755 (executable)
@@ -1793,21 +1793,33 @@ static void rk30_pm_power_off(void)
 {
        printk(KERN_ERR "rk30_pm_power_off start...\n");
        gpio_direction_output(POWER_ON_PIN, GPIO_LOW);
-#if defined(CONFIG_MFD_WM831X)
-       wm831x_set_bits(Wm831x,WM831X_GPIO_LEVEL,0x0001,0x0000);  //set sys_pwr 0
-       wm831x_device_shutdown(Wm831x);//wm8326 shutdown
-#endif
-#if defined(CONFIG_REGULATOR_ACT8846)
+       
        if (pmic_is_tps65910()) {
-               printk("enter dcdet===========\n");
+               printk("enter dcdet pmic_is_tps65910===========\n");
                if(gpio_get_value (RK30_PIN0_PB2) == GPIO_LOW)
                {
                        printk("enter restart===========\n");
                        arm_pm_restart(0, NULL);
                }
                tps65910_device_shutdown();
-       }
-#endif
+       }else if(pmic_is_act8846()){
+                printk("enter dcdet pmic_is_act8846===========\n");
+               if(gpio_get_value (RK30_PIN0_PB2) == GPIO_LOW)
+               {
+                       printk("enter restart===========\n");
+                       arm_pm_restart(0, NULL);
+               }
+              act8846_device_shutdown();
+       }else if(pmic_is_wm8326()){
+                printk("enter dcdet pmic_is_wm8326===========\n");
+               if(gpio_get_value (RK30_PIN0_PB2) == GPIO_LOW)
+               {
+                       printk("enter restart===========\n");
+                       arm_pm_restart(0, NULL);
+               }
+               wm831x_set_bits(Wm831x,WM831X_GPIO_LEVEL,0x0001,0x0000);  //set sys_pwr 0
+               wm831x_device_shutdown(Wm831x);//wm8326 shutdown
+       }
        while (1);
 }