[xburst] jz4740 pm: Fix gpio suspend/resume. Turn pll off while in suspend and gate
[openwrt.git] / target / linux / xburst / files-2.6.32 / arch / mips / jz4740 / board-qi_lb60.c
index 643f9c8..8004417 100644 (file)
@@ -31,6 +31,7 @@
 #include <linux/power/gpio-charger.h>
 #include <linux/mmc/jz4740_mmc.h>
 
 #include <linux/power/gpio-charger.h>
 #include <linux/mmc/jz4740_mmc.h>
 
+#include "clock.h"
 
 /* NAND */
 static struct nand_ecclayout qi_lb60_ecclayout_1gb = {
 
 /* NAND */
 static struct nand_ecclayout qi_lb60_ecclayout_1gb = {
@@ -118,7 +119,6 @@ static struct jz_nand_platform_data qi_lb60_nand_pdata = {
        .busy_gpio = 94,
 };
 
        .busy_gpio = 94,
 };
 
-
 /* Keyboard*/
 
 /* #define KEEP_UART_ALIVE
 /* Keyboard*/
 
 /* #define KEEP_UART_ALIVE
@@ -238,7 +238,7 @@ static struct fb_videomode qi_lb60_video_modes[] = {
                .name = "320x240",
                .xres = 320,
                .yres = 240,
                .name = "320x240",
                .xres = 320,
                .yres = 240,
-               .pixclock = 700000,
+               .refresh = 30,
                .left_margin = 140,
                .right_margin = 273,
                .upper_margin = 20,
                .left_margin = 140,
                .right_margin = 273,
                .upper_margin = 20,
@@ -257,6 +257,7 @@ static struct jz4740_fb_platform_data qi_lb60_fb_pdata = {
        .modes          = qi_lb60_video_modes,
        .bpp            = 24,
        .lcd_type       = JZ_LCD_TYPE_8BIT_SERIAL,
        .modes          = qi_lb60_video_modes,
        .bpp            = 24,
        .lcd_type       = JZ_LCD_TYPE_8BIT_SERIAL,
+       .pixclk_falling_edge = 1,
 };
 
 
 };
 
 
@@ -286,12 +287,15 @@ static struct spi_board_info qi_lb60_spi_board_info[] = {
 };
 
 /* Battery */
 };
 
 /* Battery */
-static struct jz_batt_info qi_lb60_battery_pdata = {
-       .charg_stat_gpio  = GPIO_CHARG_STAT_N,
-
-       .min_voltag     = 3600000,
-       .max_voltag     = 4200000,
-       .batt_tech      = POWER_SUPPLY_TECHNOLOGY_LIPO,
+static struct jz_battery_platform_data qi_lb60_battery_pdata = {
+       .gpio_charge = GPIO_CHARG_STAT_N,
+       .gpio_charge_active_low = 1,
+       .info = {
+               .name = "battery",
+               .technology = POWER_SUPPLY_TECHNOLOGY_LIPO,
+               .voltage_max_design = 4200000,
+               .voltage_min_design = 3600000,
+       },
 };
 
 static char *qi_lb60_batteries[] = {
 };
 
 static char *qi_lb60_batteries[] = {
@@ -384,12 +388,18 @@ static int __init qi_lb60_init_platform_devices(void)
                                        ARRAY_SIZE(jz_platform_devices));
 
 }
                                        ARRAY_SIZE(jz_platform_devices));
 
 }
+
+struct jz4740_clock_board_data jz4740_clock_bdata = {
+       .ext_rate = 12000000,
+       .rtc_rate = 32768,
+};
+
 extern int jz_gpiolib_init(void);
 extern int jz_gpiolib_init(void);
-extern int jz_init_clocks(unsigned long extal);
 
 static __init int board_avt2(char *str)
 {
        qi_lb60_mmc_pdata.card_detect_active_low = 1;
 
 static __init int board_avt2(char *str)
 {
        qi_lb60_mmc_pdata.card_detect_active_low = 1;
+       qi_lb60_mmc_pdata.power_active_low      = 1;
 
        return 1;
 }
 
        return 1;
 }
@@ -401,8 +411,8 @@ static int __init qi_lb60_board_setup(void)
        printk("Qi Hardware JZ4740 QI_LB60 setup\n");
        if (jz_gpiolib_init())
                panic("Failed to initalize jz gpio\n");
        printk("Qi Hardware JZ4740 QI_LB60 setup\n");
        if (jz_gpiolib_init())
                panic("Failed to initalize jz gpio\n");
-       jz_init_clocks(12000000);
 
 
+       jz4740_clock_init();
        board_gpio_setup();
 
        if (qi_lb60_init_platform_devices())
        board_gpio_setup();
 
        if (qi_lb60_init_platform_devices())
This page took 0.026587 seconds and 4 git commands to generate.