add rk29 Winaccord board
authorlhh <lhh@rock-chips.com>
Sat, 18 Dec 2010 11:36:49 +0000 (19:36 +0800)
committerlhh <lhh@rock-chips.com>
Sat, 18 Dec 2010 11:36:49 +0000 (19:36 +0800)
arch/arm/mach-rk29/Kconfig
arch/arm/mach-rk29/Makefile
arch/arm/mach-rk29/board-rk29sdk.c
drivers/mmc/host/rk29_sdmmc.c

index 3f67b17715151dd8f03c182ba5ce48b2bcc65834..4ecd991c4c9f05c4f407c8c0cd6e88bc2105d1df 100644 (file)
@@ -6,9 +6,17 @@ config MACH_RK29SDK
         help
          Support for the ROCKCHIP Board For Rk29 Sdk.
 
+config MACH_RK29WINACCORD
+       depends on ARCH_RK29
+       default y
+       bool "ROCKCHIP Board Rk29 For Winaccord"
+        select PL330   
+        help
+         Support for the ROCKCHIP Board For Rk29 Winaccord.
+
 config MACH_RK29SDK_MEM_SIZE_M
        int "Memory size (in MiB)"
-       depends on MACH_RK29SDK
+       depends on MACH_RK29SDK || MACH_RK29WINACCORD
        default 512
 
 config WIFI_CONTROL_FUNC
index f4cf97cc7e52f15fd6723641a5dbdb9742269680..1ed0be1ef42543fa3570ab3e2a53b373254d746c 100644 (file)
@@ -1,3 +1,4 @@
 obj-y += timer.o io.o devices.o iomux.o clock.o rk29-pl330.o dma.o gpio.o
 obj-$(CONFIG_RK29_VPU) += vpu.o vpu_mem.o
 obj-$(CONFIG_MACH_RK29SDK) += board-rk29sdk.o board-rk29sdk-key.o
+obj-$(CONFIG_MACH_RK29WINACCORD) += board-rk29-winaccord.o board-rk29sdk-key.o
index e63176f2d45022aec071fee8beb1044dbc2d0764..452d108d851b81a5e917f6a512d9bbd768e5f38e 100755 (executable)
@@ -1496,10 +1496,10 @@ static void __init machine_rk29_init_irq(void)
 #define POWER_ON_PIN RK29_PIN4_PA4\r
 static void __init machine_rk29_board_init(void)\r
 {\r
-        rk29_board_iomux_init();\r
+       rk29_board_iomux_init();\r
        gpio_request(POWER_ON_PIN,"poweronpin");        \r
-               gpio_set_value(POWER_ON_PIN, 1);\r
-               gpio_direction_output(POWER_ON_PIN, 1);\r
+       gpio_set_value(POWER_ON_PIN, GPIO_HIGH);\r
+       gpio_direction_output(POWER_ON_PIN, GPIO_HIGH);\r
 
 #ifdef CONFIG_WIFI_CONTROL_FUNC
                 rk29sdk_wifi_bt_gpio_control_init();
index 545bb97bf020e66b8092a8aba81735d7932877ee..fb17573ebe70be2f0387195f4857f63ebc7ed864 100755 (executable)
@@ -358,7 +358,7 @@ static void send_stop_cmd(struct rk29_sdmmc *host, struct mmc_data *data)
        int time_out=100, time_out2=3;
        unsigned long flags;
        
-       /*µÈ´ýÇ°Ãæ´«Êä´¦ÀíÍê³É*/
+       
        while(rk29_sdmmc_read(host->regs, SDMMC_STATUS) & (SDMMC_STAUTS_DATA_BUSY)) {
                mdelay(5);
                time_out --;            
@@ -375,7 +375,7 @@ static void send_stop_cmd(struct rk29_sdmmc *host, struct mmc_data *data)
                        
                }
        }
-       /*¼ì²éFIFO,Èç¹û²»Îª¿Õ£¬Çå¿Õ*/
+       
        if(!(rk29_sdmmc_read(host->regs, SDMMC_STATUS) & SDMMC_STAUTS_FIFO_EMPTY)) {
                local_irq_save(flags);  
                rk29_sdmmc_write(host->regs, SDMMC_CTRL, rk29_sdmmc_read(host->regs, SDMMC_CTRL) | ( SDMMC_CTRL_FIFO_RESET ));
@@ -552,7 +552,7 @@ static void rk29_sdmmc_start_request(struct rk29_sdmmc *host)
        unsigned long flags;
        
        mrq = host->mrq;
-       /*µÈ´ýÇ°Ãæ´«Êä´¦ÀíÍê³É*/
+       
        while(rk29_sdmmc_read(host->regs, SDMMC_STATUS) & (SDMMC_STAUTS_DATA_BUSY)) {
                mdelay(5);
                time_out --;            
@@ -569,7 +569,7 @@ static void rk29_sdmmc_start_request(struct rk29_sdmmc *host)
                        
                }
        }
-       /*¼ì²éFIFO,Èç¹û²»Îª¿Õ£¬Çå¿Õ*/
+
        if(!(rk29_sdmmc_read(host->regs, SDMMC_STATUS) & SDMMC_STAUTS_FIFO_EMPTY)) {
                local_irq_save(flags);  
                rk29_sdmmc_write(host->regs, SDMMC_CTRL, rk29_sdmmc_read(host->regs, SDMMC_CTRL) | ( SDMMC_CTRL_FIFO_RESET ));
@@ -726,7 +726,7 @@ static void rk29_sdmmc_request_end(struct rk29_sdmmc *host, struct mmc_request *
        WARN_ON(host->cmd || host->data);
        host->curr_mrq = NULL;
        host->mrq = NULL;
-       /*µÈ´ýÇ°Ãæ´«Êä´¦ÀíÍê³É*/
+
        while(rk29_sdmmc_read(host->regs, SDMMC_STATUS) & (SDMMC_STAUTS_DATA_BUSY)) {
                mdelay(5);
                time_out --;            
@@ -742,7 +742,7 @@ static void rk29_sdmmc_request_end(struct rk29_sdmmc *host, struct mmc_request *
                                break;
                }
        }
-       /*¼ì²éFIFO,Èç¹û²»Îª¿Õ£¬Çå¿Õ*/
+       
        if(!(rk29_sdmmc_read(host->regs, SDMMC_STATUS) & SDMMC_STAUTS_FIFO_EMPTY)) {
                local_irq_save(flags);  
                rk29_sdmmc_write(host->regs, SDMMC_CTRL, rk29_sdmmc_read(host->regs, SDMMC_CTRL) | ( SDMMC_CTRL_FIFO_RESET ));