add pmem run android
author林辉辉 <lhh@rock-chips.com>
Tue, 18 May 2010 11:11:41 +0000 (11:11 +0000)
committer黄涛 <huangtao@rock-chips.com>
Mon, 21 Jun 2010 05:34:57 +0000 (13:34 +0800)
.config
arch/arm/mach-rk2818/board-midsdk.c
arch/arm/mach-rk2818/devices.c
arch/arm/mach-rk2818/devices.h

diff --git a/.config b/.config
index 52433fdd04b0652dd8c3e0575586825dcaeb2800..52be336db86e0a3846699e2f47aa0cf430e41b8c 100644 (file)
--- a/.config
+++ b/.config
@@ -263,7 +263,7 @@ CONFIG_VIRT_TO_BUS=y
 CONFIG_HAVE_MLOCK=y
 CONFIG_HAVE_MLOCKED_PAGE_BIT=y
 # CONFIG_KSM is not set
-CONFIG_DEFAULT_MMAP_MIN_ADDR=65536
+CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
 CONFIG_ALIGNMENT_TRAP=y
 # CONFIG_UACCESS_WITH_MEMCPY is not set
 
index 8f1f4690fc3de8854c90192690895d0587ba18fc..4d975322cd27a537481d219b5cb21f6c03ddb15b 100644 (file)
@@ -228,6 +228,7 @@ static struct i2c_board_info __initdata board_i2c1_devices[] = {
  *author: lhh
  *****************************************************************************************/
 static struct spi_board_info board_spi_devices[] = {
+#if defined(CONFIG_ENC28J60)   
        {       /* net chip */
                .modalias       = "enc28j60",
                .chip_select    = 1,
@@ -235,6 +236,7 @@ static struct spi_board_info board_spi_devices[] = {
                .bus_num        = 0,
                .mode   = SPI_MODE_0,
        },
+#endif 
 #if defined(CONFIG_TOUCHSCREEN_RK2818_SPI_XPT2046) || defined(CONFIG_TOUCHSCREEN_RK2818_SPI_XPT2046_CBN)
        {
                .modalias       = "xpt2046_ts",
@@ -279,6 +281,7 @@ static struct platform_device *devices[] __initdata = {
        &rk2818_device_i2c1,
 #endif
        &rk2818_device_spim,
+       &rk2818_device_pmem,
        &rk2818_device_adc,
        &rk2818_device_adckey,
     &rk2818_device_fb,    
index 61d65689b54eb61716eb4c022c5fc0ac0a7b4c6b..6b7b49e8c819ec8b2f515d0caab58b9c95991448 100644 (file)
@@ -15,6 +15,7 @@
 
 #include <linux/kernel.h>
 #include <linux/platform_device.h>
+#include <linux/android_pmem.h>
 
 #include <mach/irqs.h>
 #include <mach/rk2818_iomap.h>
@@ -262,3 +263,38 @@ struct platform_device rk2818_device_adckey = {
        .dev.parent     = &rk2818_device_adc.dev,
 };
 
+
+#if defined(CONFIG_ANDROID_PMEM)
+static struct android_pmem_platform_data pmem_pdata = {
+       .name = "pmem",
+       .no_allocator = 1,
+       .cached = 1,
+       .start = 0x6f000000,
+       .size =  0x1000000,
+       //.start = 0x67000000,
+       //.size =  0x1000000,
+};
+
+static struct android_pmem_platform_data pmem_pdata_dsp = {
+       .name = "pmem-dsp",
+       .no_allocator = 1,
+       .cached = 0,
+    .start = 0x66B00000,
+       .size =  0x1500000,
+};
+
+struct platform_device rk2818_device_pmem = {
+       .name = "android_pmem",
+       .id = 0,
+       .dev = { .platform_data = &pmem_pdata },
+};
+
+struct platform_device rk2818_device_pmem_dsp = {
+       .name = "android_pmem",
+       .id = 1,
+       .dev = { .platform_data = &pmem_pdata_dsp },
+};
+
+
+#endif
+
index a85cbebc1f4162177e7caf64b2c0374ec00601f9..22e8f6c9f549454ae260d8f6a3073981acec21b4 100644 (file)
@@ -26,6 +26,7 @@ extern struct platform_device rk2818_device_i2c1;
 extern struct rk2818_i2c_platform_data default_i2c0_data;
 extern struct rk2818_i2c_platform_data default_i2c1_data;
 extern struct platform_device rk2818_device_dm9k;
+extern struct platform_device rk2818_device_pmem;
 extern struct platform_device rk2818_device_fb;
 extern struct platform_device rk2818_device_adc;
 extern struct platform_device rk2818_device_adckey;