aboutsummaryrefslogtreecommitdiffstats
path: root/recipes/linux/linux-2.6.28/tosa/commit-f34ee79
diff options
context:
space:
mode:
Diffstat (limited to 'recipes/linux/linux-2.6.28/tosa/commit-f34ee79')
-rw-r--r--recipes/linux/linux-2.6.28/tosa/commit-f34ee7968
1 files changed, 68 insertions, 0 deletions
diff --git a/recipes/linux/linux-2.6.28/tosa/commit-f34ee79 b/recipes/linux/linux-2.6.28/tosa/commit-f34ee79
new file mode 100644
index 0000000000..37522d8aa2
--- /dev/null
+++ b/recipes/linux/linux-2.6.28/tosa/commit-f34ee79
@@ -0,0 +1,68 @@
+commit f34ee79a5307e9a4c68c978840cf7e7e10236362
+Author: Dmitry Baryshkov <dbaryshkov@gmail.com>
+Date: Tue Nov 25 00:57:27 2008 +0300
+
+ [ARM] pxa/tosa: add physmap mapping for ROM
+
+ Add mapping for system ROM using physmap-flash mapping.
+
+ Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
+ Signed-off-by: Eric Miao <eric.miao@marvell.com>
+
+diff --git a/arch/arm/mach-pxa/tosa.c b/arch/arm/mach-pxa/tosa.c
+index c46b640..3332e5d 100644
+--- a/arch/arm/mach-pxa/tosa.c
++++ b/arch/arm/mach-pxa/tosa.c
+@@ -25,6 +25,7 @@
+ #include <linux/mfd/tmio.h>
+ #include <linux/mtd/nand.h>
+ #include <linux/mtd/partitions.h>
++#include <linux/mtd/physmap.h>
+ #include <linux/pm.h>
+ #include <linux/gpio_keys.h>
+ #include <linux/input.h>
+@@ -831,6 +832,36 @@ static struct spi_board_info spi_board_info[] __initdata = {
+ },
+ };
+
++static struct mtd_partition sharpsl_rom_parts[] = {
++ {
++ .name ="Boot PROM Filesystem",
++ .offset = 0x00160000,
++ .size = MTDPART_SIZ_FULL,
++ },
++};
++
++static struct physmap_flash_data sharpsl_rom_data = {
++ .width = 2,
++ .nr_parts = ARRAY_SIZE(sharpsl_rom_parts),
++ .parts = sharpsl_rom_parts,
++};
++
++static struct resource sharpsl_rom_resources[] = {
++ {
++ .start = 0x00000000,
++ .end = 0x007fffff,
++ .flags = IORESOURCE_MEM,
++ },
++};
++
++static struct platform_device sharpsl_rom_device = {
++ .name = "physmap-flash",
++ .id = -1,
++ .resource = sharpsl_rom_resources,
++ .num_resources = ARRAY_SIZE(sharpsl_rom_resources),
++ .dev.platform_data = &sharpsl_rom_data,
++};
++
+ static struct platform_device *devices[] __initdata = {
+ &tosascoop_device,
+ &tosascoop_jc_device,
+@@ -840,6 +871,7 @@ static struct platform_device *devices[] __initdata = {
+ &tosa_gpio_keys_device,
+ &tosaled_device,
+ &tosa_bt_device,
++ &sharpsl_rom_device,
+ };
+
+ static void tosa_poweroff(void)