rk3188 ds1006h: add 3G MT6229 in the board file
authorwuhao <wuhao@wuhao@rock-chips.com>
Mon, 4 Feb 2013 04:57:36 +0000 (12:57 +0800)
committerwuhao <wuhao@wuhao@rock-chips.com>
Mon, 4 Feb 2013 04:57:36 +0000 (12:57 +0800)
arch/arm/configs/rk3188_ds1006h_defconfig
arch/arm/mach-rk3188/board-rk3188-ds1006h.c

index 69480a40aade0837be17d00ebaabec01ad9973a7..c5822dab6c8937e8265d1f56023a28bab1805fd6 100644 (file)
@@ -195,6 +195,8 @@ CONFIG_MISC_DEVICES=y
 CONFIG_SENSORS_AK8963=y
 CONFIG_UID_STAT=y
 CONFIG_APANIC=y
+CONFIG_3G_MODULE=y
+CONFIG_MT6229=y
 CONFIG_SCSI=y
 CONFIG_BLK_DEV_SD=y
 CONFIG_SCSI_MULTI_LUN=y
@@ -391,6 +393,7 @@ CONFIG_USB_STORAGE=y
 CONFIG_USB_SERIAL=y
 CONFIG_USB_SERIAL_GENERIC=y
 CONFIG_USB_SERIAL_OPTION=y
+CONFIG_USB_SERIAL_USI=y
 CONFIG_USB_GADGET=y
 CONFIG_USB20_HOST=y
 CONFIG_USB20_OTG=y
index 20911c743d624257e2612f07c22b65c7cd81d056..c232bbc474626ceded735f9ecd935dff7207c9e0 100755 (executable)
@@ -61,6 +61,9 @@
 #if defined(CONFIG_SPIM_RK29)
 #include "../../../drivers/spi/rk29_spim.h"
 #endif
+#if defined(CONFIG_MT6229)
+#include <linux/mt6229.h>
+#endif
 #if defined(CONFIG_GPS_RK)
 #include "../../../drivers/misc/gps/rk_gps/rk_gps.h"
 #endif
@@ -310,6 +313,46 @@ static struct sensor_platform_data akm8975_info =
 
 #endif
 
+#if defined(CONFIG_MT6229)
+static int mt6229_io_init(void)
+{
+      #if 0
+       rk30_mux_api_set(GPIO2B6_LCDC1DATA14_SMCADDR18_TSSYNC_NAME, GPIO2B_GPIO2B6);
+      k30_mux_api_set(GPIO4D2_SMCDATA10_TRACEDATA10_NAME, GPIO4D_GPIO4D2);
+       rk30_mux_api_set(GPIO2B7_LCDC1DATA15_SMCADDR19_HSADCDATA7_NAME, GPIO2B_GPIO2B7);
+       rk30_mux_api_set(GPIO2C0_LCDCDATA16_GPSCLK_HSADCCLKOUT_NAME, GPIO2C_GPIO2C0);
+       rk30_mux_api_set(GPIO2C1_LCDC1DATA17_SMCBLSN0_HSADCDATA6_NAME, GPIO2C_GPIO2C1);
+       rk30_mux_api_set(GPIO2C1_LCDC1DATA17_SMCBLSN0_HSADCDATA6_NAME, GPIO2C_GPIO2C1);
+      #endif
+        return 0;
+}
+
+static int mt6229_io_deinit(void)
+{
+       
+       return 0;
+}
+struct rk29_mt6229_data rk29_mt6229_info = {
+       .io_init = mt6229_io_init,
+       .io_deinit = mt6229_io_deinit,
+       .modem_power_en = RK30_PIN0_PC6,
+       .bp_power = RK30_PIN2_PD5,
+       .modem_usb_en = RK30_PIN0_PC7,
+       .modem_uart_en = RK30_PIN2_PD4,
+       .bp_wakeup_ap = RK30_PIN0_PC5,
+       .ap_ready = RK30_PIN0_PC4,
+
+};
+struct platform_device rk29_device_mt6229 = {  
+        .name = "mt6229",      
+       .id = -1,       
+       .dev            = {
+               .platform_data = &rk29_mt6229_info,
+       }       
+    };
+#endif
+
 #if defined(CONFIG_GYRO_L3G4200D)
 
 #include <linux/l3g4200d.h>
@@ -1114,6 +1157,10 @@ static struct platform_device *devices[] __initdata = {
 #ifdef CONFIG_MT5931_MT6622
        &device_mt6622,
 #endif
+#if defined(CONFIG_MT6229)
+       &rk29_device_mt6229,
+#endif
+
 };