Re: [PATCH] Add support for OMAP3Stalker boards

2010-05-10 Thread Tony Lindgren
* Jason l...@ema-tech.com [100505 19:09]:
 
 A question about board version. Is it good to do a hardware check to find
 out hardware version?
  Like function static void __init omap3_evm_get_revision(void) in
 board-omap3evm.c

Sure, that's the best option.

Some boards are also using the system_rev, which contains the
ATAG_REVISION passed from the bootloader. But then you depend on
the bootloader to pass it.. So hardare detection early on is
the most flexible way of doing this.

Regards,

Tony
--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


RE: [PATCH] Add support for OMAP3Stalker boards

2010-05-05 Thread Jason
Thanks for replaying, I did have a long wait.

A question about board version. Is it good to do a hardware check to find
out hardware version?
 Like function static void __init omap3_evm_get_revision(void) in
board-omap3evm.c


Best regards,
Jason

 -Original Message-
 From: Tony Lindgren [mailto:t...@atomide.com]
 Sent: 2010年5月5日 7:00
 To: Jason
 Cc: linux-omap@vger.kernel.org
 Subject: Re: [PATCH] Add support for OMAP3Stalker boards
 
 Hi,
 
 Sorry for the delay in replying. Few comments, see below.
 
 * Jason l...@ema-tech.com [100303 06:16]:
  This patche add omap3 board support for the EMA-Tech StalkerBoards. Base
 on
  TI's EVM.
 
 snip
 
  --- a/arch/arm/mach-omap2/Kconfig
  +++ b/arch/arm/mach-omap2/Kconfig
  @@ -82,6 +82,26 @@ config MACH_OMAP3517EVM
  depends on ARCH_OMAP3
  select OMAP_PACKAGE_CBB
 
  +config MACH_SBC3530
  +   bool OMAP3 SBC STALKER board
  +   depends on ARCH_OMAP3
  +
  +choice
  +   prompt STALKER_BOARD_TYPE
  +   depends on MACH_SBC3530
  +   default STALKER_EVM
  +
  +config STALKER_BOARD_TYPE_EVM
  +   bool Stalker EVM board
  +   help
  + Select this option if you have a Stalker EVM board
  +
  +config STALKER_BOARD_TYPE_LK_S
  +   bool Stalker LK-S board
  +   help
  + Select this option if you have a Stalker LK-S board
  +endchoice
  +
   config MACH_OMAP3_PANDORA
  bool OMAP3 Pandora
  depends on ARCH_OMAP3
 
 Things like this are best done by looking at the ATAG_REVISION passed by
 the bootloader. Then you can dynamically initialize the platform data
 based on the revision.
 
  --- /dev/null
  +++ b/arch/arm/mach-omap2/board-omap3stalker.c
  @@ -0,0 +1,922 @@
  +/*
  + * linux/arch/arm/mach-omap2/board-omap3evm.c
  + *
  + * Copyright (C) 2008 Guangzhou EMA-Tech
  + *
  + * Modified from mach-omap2/board-omap3evm.c
  + *
  + * Initial code: Syed Mohammed Khasim
  + *
  + * This program is free software; you can redistribute it and/or modify
  + * it under the terms of the GNU General Public License version 2 as
  + * published by the Free Software Foundation.
  + */
  +
  +#include linux/kernel.h
  +#include linux/init.h
  +#include linux/platform_device.h
  +#include linux/delay.h
  +#include linux/err.h
  +#include linux/clk.h
  +#include linux/gpio.h
  +#include linux/input.h
  +#include linux/input/matrix_keypad.h
  +#include linux/leds.h
  +#include linux/interrupt.h
  +
  +#include linux/spi/spi.h
  +#include linux/spi/ads7846.h
  +#include linux/i2c/twl.h
  +#include linux/usb/otg.h
  +#if defined(CONFIG_STALKER_BOARD_TYPE_EVM)
  +#include linux/dm9000.h
  +#elif defined(CONFIG_STALKER_BOARD_TYPE_LK_S)
 
 We should not ifdef includes, it should be OK to include them
automatically.
 
  +#include linux/smsc911x.h
  +#include linux/gpio_keys.h
  +#include linux/i2c/at24.h
  +#endif
  +
  +#include linux/regulator/machine.h
  +
  +#include linux/mtd/mtd.h
  +#include linux/mtd/partitions.h
  +#include linux/mtd/nand.h
  +
  +#include mach/hardware.h
  +#include asm/mach-types.h
  +#include asm/mach/arch.h
  +#include asm/mach/map.h
  +#include asm/mach/flash.h
  +
  +#include plat/board.h
  +#include plat/mux.h
  +#include plat/gpmc.h
  +#include plat/nand.h
  +#include plat/usb.h
  +#include plat/common.h
  +#include plat/control.h
  +#include plat/mcspi.h
  +#include plat/clock.h
  +#include plat/omap-pm.h
  +#include plat/display.h
  +#include plat/timer-gp.h
  +
  +#include mux.h
  +#include sdram-micron-mt46h32m32lf-6.h
  +#include hsmmc.h
  +#include pm.h
 
 That's a lot of include files, are they all needed?
 
  +static struct mtd_partition omap3stalker_nand_partitions[] = {
  +   /* All the partition sizes are listed in terms of NAND block size */
  +   {
  +.name = X-Loader,
  +.offset = 0,
  +.size = 4 * (SZ_128K),
  +.mask_flags = MTD_WRITEABLE,
  +},
  +   {
  +.name = U-Boot,
  +.offset = MTDPART_OFS_APPEND,
  +.size = 15 * (SZ_128K),
  +.mask_flags = MTD_WRITEABLE,
  +},
  +   {
  +.name = U-Boot Env,
  +.offset = MTDPART_OFS_APPEND,
  +.size = 1 * (SZ_128K)},
  +   {
  +.name = Kernel,
  +.offset = MTDPART_OFS_APPEND,
  +.size = 32 * (SZ_128K)},
  +   {
  +.name = File System,
  +.size = MTDPART_SIZ_FULL,
  +.offset = MTDPART_OFS_APPEND,
  +},
  +};
 
 Please use tabs instead of spaces.
 
  +void __init omap3stalker_flash_init(void)
  +{
  +   u8 cs = 0;
  +   u8 nandcs = GPMC_CS_NUM + 1;
  +   u32 gpmc_base_add = OMAP34XX_GPMC_VIRT;
 
 Please leave out the NAND stuff for now, we need to first fix the
 NAND driver before adding more of the OMAP34XX_GPMC_VIRT..
 
  +static struct resource omap3stalker_smsc911x_resources[] = {
  +   [0] = {
  +  .start = OMAP3STALKER_ETHR_START,
  +  .end =
  +  (OMAP3STALKER_ETHR_START + OMAP3STALKER_ETHR_SIZE -
 1),
  +  .flags = IORESOURCE_MEM,
  +  },
  +   [1] = {
  +  .start = OMAP_GPIO_IRQ(OMAP3STALKER_ETHR_GPIO_IRQ),
  +  .end = OMAP_GPIO_IRQ

Re: [PATCH] Add support for OMAP3Stalker boards

2010-05-04 Thread Tony Lindgren
Hi,

Sorry for the delay in replying. Few comments, see below.

* Jason l...@ema-tech.com [100303 06:16]:
 This patche add omap3 board support for the EMA-Tech StalkerBoards. Base on
 TI's EVM. 

snip 

 --- a/arch/arm/mach-omap2/Kconfig
 +++ b/arch/arm/mach-omap2/Kconfig
 @@ -82,6 +82,26 @@ config MACH_OMAP3517EVM
   depends on ARCH_OMAP3
   select OMAP_PACKAGE_CBB
 
 +config MACH_SBC3530
 + bool OMAP3 SBC STALKER board
 + depends on ARCH_OMAP3
 +
 +choice
 + prompt STALKER_BOARD_TYPE
 + depends on MACH_SBC3530
 + default STALKER_EVM
 +
 +config STALKER_BOARD_TYPE_EVM
 + bool Stalker EVM board
 + help
 +   Select this option if you have a Stalker EVM board
 +
 +config STALKER_BOARD_TYPE_LK_S
 + bool Stalker LK-S board
 + help
 +   Select this option if you have a Stalker LK-S board
 +endchoice
 +
  config MACH_OMAP3_PANDORA
   bool OMAP3 Pandora
   depends on ARCH_OMAP3

Things like this are best done by looking at the ATAG_REVISION passed by
the bootloader. Then you can dynamically initialize the platform data
based on the revision.

 --- /dev/null
 +++ b/arch/arm/mach-omap2/board-omap3stalker.c
 @@ -0,0 +1,922 @@
 +/*
 + * linux/arch/arm/mach-omap2/board-omap3evm.c
 + *
 + * Copyright (C) 2008 Guangzhou EMA-Tech
 + *
 + * Modified from mach-omap2/board-omap3evm.c
 + *
 + * Initial code: Syed Mohammed Khasim
 + *
 + * This program is free software; you can redistribute it and/or modify
 + * it under the terms of the GNU General Public License version 2 as
 + * published by the Free Software Foundation.
 + */
 +
 +#include linux/kernel.h
 +#include linux/init.h
 +#include linux/platform_device.h
 +#include linux/delay.h
 +#include linux/err.h
 +#include linux/clk.h
 +#include linux/gpio.h
 +#include linux/input.h
 +#include linux/input/matrix_keypad.h
 +#include linux/leds.h
 +#include linux/interrupt.h
 +
 +#include linux/spi/spi.h
 +#include linux/spi/ads7846.h
 +#include linux/i2c/twl.h
 +#include linux/usb/otg.h
 +#if defined(CONFIG_STALKER_BOARD_TYPE_EVM)
 +#include linux/dm9000.h
 +#elif defined(CONFIG_STALKER_BOARD_TYPE_LK_S)

We should not ifdef includes, it should be OK to include them automatically.

 +#include linux/smsc911x.h
 +#include linux/gpio_keys.h
 +#include linux/i2c/at24.h
 +#endif
 +
 +#include linux/regulator/machine.h
 +
 +#include linux/mtd/mtd.h
 +#include linux/mtd/partitions.h
 +#include linux/mtd/nand.h
 +
 +#include mach/hardware.h
 +#include asm/mach-types.h
 +#include asm/mach/arch.h
 +#include asm/mach/map.h
 +#include asm/mach/flash.h
 +
 +#include plat/board.h
 +#include plat/mux.h
 +#include plat/gpmc.h
 +#include plat/nand.h
 +#include plat/usb.h
 +#include plat/common.h
 +#include plat/control.h
 +#include plat/mcspi.h
 +#include plat/clock.h
 +#include plat/omap-pm.h
 +#include plat/display.h
 +#include plat/timer-gp.h
 +
 +#include mux.h
 +#include sdram-micron-mt46h32m32lf-6.h
 +#include hsmmc.h
 +#include pm.h

That's a lot of include files, are they all needed?

 +static struct mtd_partition omap3stalker_nand_partitions[] = {
 + /* All the partition sizes are listed in terms of NAND block size */
 + {
 +  .name = X-Loader,
 +  .offset = 0,
 +  .size = 4 * (SZ_128K),
 +  .mask_flags = MTD_WRITEABLE,
 +  },
 + {
 +  .name = U-Boot,
 +  .offset = MTDPART_OFS_APPEND,
 +  .size = 15 * (SZ_128K),
 +  .mask_flags = MTD_WRITEABLE,
 +  },
 + {
 +  .name = U-Boot Env,
 +  .offset = MTDPART_OFS_APPEND,
 +  .size = 1 * (SZ_128K)},
 + {
 +  .name = Kernel,
 +  .offset = MTDPART_OFS_APPEND,
 +  .size = 32 * (SZ_128K)},
 + {
 +  .name = File System,
 +  .size = MTDPART_SIZ_FULL,
 +  .offset = MTDPART_OFS_APPEND,
 +  },
 +};

Please use tabs instead of spaces.

 +void __init omap3stalker_flash_init(void)
 +{
 + u8 cs = 0;
 + u8 nandcs = GPMC_CS_NUM + 1;
 + u32 gpmc_base_add = OMAP34XX_GPMC_VIRT;

Please leave out the NAND stuff for now, we need to first fix the
NAND driver before adding more of the OMAP34XX_GPMC_VIRT..

 +static struct resource omap3stalker_smsc911x_resources[] = {
 + [0] = {
 +.start = OMAP3STALKER_ETHR_START,
 +.end =
 +(OMAP3STALKER_ETHR_START + OMAP3STALKER_ETHR_SIZE - 1),
 +.flags = IORESOURCE_MEM,
 +},
 + [1] = {
 +.start = OMAP_GPIO_IRQ(OMAP3STALKER_ETHR_GPIO_IRQ),
 +.end = OMAP_GPIO_IRQ(OMAP3STALKER_ETHR_GPIO_IRQ),
 +.flags = (IORESOURCE_IRQ | IRQF_TRIGGER_LOW),
 +},
 +};

Please use tabs here too instead of spaces.

 +static struct omap2_hsmmc_info mmc[] = {
 + {
 +  .mmc = 1,
 +  .wires = 4,
 +  .gpio_cd = -EINVAL,
 +  .gpio_wp = 23,
 +  },
 + {}  /* Terminator */
 +};
 +
 +#if defined(CONFIG_STALKER_BOARD_TYPE_LK_S)
 +static struct gpio_keys_button gpio_buttons[] = {
 + {
 +  .code = BTN_EXTRA,
 +  .gpio 

[PATCH] Add support for OMAP3Stalker boards

2010-03-03 Thread Jason
This patche add omap3 board support for the EMA-Tech StalkerBoards. Base on
TI's EVM. 

From ca9879de445ffa8063e79f43a715712eca9b335f Mon Sep 17 00:00:00 2001
From: Jason Lam l...@ema-tech.com
Date: Wed, 3 Mar 2010 10:04:36 +0800
Subject: [PATCH] Add support for OMAP3Stalker boards


Signed-off-by: Jason Lam l...@ema-tech.com
---
 arch/arm/mach-omap2/Kconfig  |   20 +
 arch/arm/mach-omap2/Makefile |2 +
 arch/arm/mach-omap2/board-omap3stalker.c |  922
++
 3 files changed, 944 insertions(+), 0 deletions(-)
 create mode 100644 arch/arm/mach-omap2/board-omap3stalker.c

diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
index a8a3d1e..50386c8 100644
--- a/arch/arm/mach-omap2/Kconfig
+++ b/arch/arm/mach-omap2/Kconfig
@@ -82,6 +82,26 @@ config MACH_OMAP3517EVM
depends on ARCH_OMAP3
select OMAP_PACKAGE_CBB

+config MACH_SBC3530
+   bool OMAP3 SBC STALKER board
+   depends on ARCH_OMAP3
+
+choice
+   prompt STALKER_BOARD_TYPE
+   depends on MACH_SBC3530
+   default STALKER_EVM
+
+config STALKER_BOARD_TYPE_EVM
+   bool Stalker EVM board
+   help
+ Select this option if you have a Stalker EVM board
+
+config STALKER_BOARD_TYPE_LK_S
+   bool Stalker LK-S board
+   help
+ Select this option if you have a Stalker LK-S board
+endchoice
+
 config MACH_OMAP3_PANDORA
bool OMAP3 Pandora
depends on ARCH_OMAP3
diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile
index 2069fb3..51cfe4b 100644
--- a/arch/arm/mach-omap2/Makefile
+++ b/arch/arm/mach-omap2/Makefile
@@ -110,6 +110,8 @@ obj-$(CONFIG_MACH_OVERO)+= board-overo.o \
   hsmmc.o
 obj-$(CONFIG_MACH_OMAP3EVM)+= board-omap3evm.o \
   hsmmc.o
+obj-$(CONFIG_MACH_SBC3530) += board-omap3stalker.o \
+  hsmmc.o
 obj-$(CONFIG_MACH_OMAP3_PANDORA)   += board-omap3pandora.o \
   hsmmc.o
 obj-$(CONFIG_MACH_OMAP_3430SDP)+= board-3430sdp.o \
diff --git a/arch/arm/mach-omap2/board-omap3stalker.c
b/arch/arm/mach-omap2/board-omap3stalker.c
new file mode 100644
index 000..bb70b46
--- /dev/null
+++ b/arch/arm/mach-omap2/board-omap3stalker.c
@@ -0,0 +1,922 @@
+/*
+ * linux/arch/arm/mach-omap2/board-omap3evm.c
+ *
+ * Copyright (C) 2008 Guangzhou EMA-Tech
+ *
+ * Modified from mach-omap2/board-omap3evm.c
+ *
+ * Initial code: Syed Mohammed Khasim
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+#include linux/kernel.h
+#include linux/init.h
+#include linux/platform_device.h
+#include linux/delay.h
+#include linux/err.h
+#include linux/clk.h
+#include linux/gpio.h
+#include linux/input.h
+#include linux/input/matrix_keypad.h
+#include linux/leds.h
+#include linux/interrupt.h
+
+#include linux/spi/spi.h
+#include linux/spi/ads7846.h
+#include linux/i2c/twl.h
+#include linux/usb/otg.h
+#if defined(CONFIG_STALKER_BOARD_TYPE_EVM)
+#include linux/dm9000.h
+#elif defined(CONFIG_STALKER_BOARD_TYPE_LK_S)
+#include linux/smsc911x.h
+#include linux/gpio_keys.h
+#include linux/i2c/at24.h
+#endif
+
+#include linux/regulator/machine.h
+
+#include linux/mtd/mtd.h
+#include linux/mtd/partitions.h
+#include linux/mtd/nand.h
+
+#include mach/hardware.h
+#include asm/mach-types.h
+#include asm/mach/arch.h
+#include asm/mach/map.h
+#include asm/mach/flash.h
+
+#include plat/board.h
+#include plat/mux.h
+#include plat/gpmc.h
+#include plat/nand.h
+#include plat/usb.h
+#include plat/common.h
+#include plat/control.h
+#include plat/mcspi.h
+#include plat/clock.h
+#include plat/omap-pm.h
+#include plat/display.h
+#include plat/timer-gp.h
+
+#include mux.h
+#include sdram-micron-mt46h32m32lf-6.h
+#include hsmmc.h
+#include pm.h
+
+static struct mtd_partition omap3stalker_nand_partitions[] = {
+   /* All the partition sizes are listed in terms of NAND block size */
+   {
+.name = X-Loader,
+.offset = 0,
+.size = 4 * (SZ_128K),
+.mask_flags = MTD_WRITEABLE,
+},
+   {
+.name = U-Boot,
+.offset = MTDPART_OFS_APPEND,
+.size = 15 * (SZ_128K),
+.mask_flags = MTD_WRITEABLE,
+},
+   {
+.name = U-Boot Env,
+.offset = MTDPART_OFS_APPEND,
+.size = 1 * (SZ_128K)},
+   {
+.name = Kernel,
+.offset = MTDPART_OFS_APPEND,
+.size = 32 * (SZ_128K)},
+   {
+.name = File System,
+.size = MTDPART_SIZ_FULL,
+.offset = MTDPART_OFS_APPEND,
+},
+};
+
+static struct omap_nand_platform_data omap3stalker_nand_data = {
+   .parts = omap3stalker_nand_partitions,
+   .nr_parts = ARRAY_SIZE(omap3stalker_nand_partitions

[PATCH] Add support for OMAP3Stalker boards

2010-03-02 Thread Jason
This patche add omap3 board support for the EMA-Tech StalkerBoards. Base on
TI's EVM. 

From ca9879de445ffa8063e79f43a715712eca9b335f Mon Sep 17 00:00:00 2001
From: Jason Lam l...@ema-tech.com
Date: Wed, 3 Mar 2010 10:04:36 +0800
Subject: [PATCH] Add support for OMAP3Stalker boards


Signed-off-by: Jason Lam l...@ema-tech.com
---
 arch/arm/mach-omap2/Kconfig  |   20 +
 arch/arm/mach-omap2/Makefile |2 +
 arch/arm/mach-omap2/board-omap3stalker.c |  922
++
 3 files changed, 944 insertions(+), 0 deletions(-)
 create mode 100644 arch/arm/mach-omap2/board-omap3stalker.c

diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
index a8a3d1e..50386c8 100644
--- a/arch/arm/mach-omap2/Kconfig
+++ b/arch/arm/mach-omap2/Kconfig
@@ -82,6 +82,26 @@ config MACH_OMAP3517EVM
depends on ARCH_OMAP3
select OMAP_PACKAGE_CBB

+config MACH_SBC3530
+   bool OMAP3 SBC STALKER board
+   depends on ARCH_OMAP3
+
+choice
+   prompt STALKER_BOARD_TYPE
+   depends on MACH_SBC3530
+   default STALKER_EVM
+
+config STALKER_BOARD_TYPE_EVM
+   bool Stalker EVM board
+   help
+ Select this option if you have a Stalker EVM board
+
+config STALKER_BOARD_TYPE_LK_S
+   bool Stalker LK-S board
+   help
+ Select this option if you have a Stalker LK-S board
+endchoice
+
 config MACH_OMAP3_PANDORA
bool OMAP3 Pandora
depends on ARCH_OMAP3
diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile
index 2069fb3..51cfe4b 100644
--- a/arch/arm/mach-omap2/Makefile
+++ b/arch/arm/mach-omap2/Makefile
@@ -110,6 +110,8 @@ obj-$(CONFIG_MACH_OVERO)+= board-overo.o \
   hsmmc.o
 obj-$(CONFIG_MACH_OMAP3EVM)+= board-omap3evm.o \
   hsmmc.o
+obj-$(CONFIG_MACH_SBC3530) += board-omap3stalker.o \
+  hsmmc.o
 obj-$(CONFIG_MACH_OMAP3_PANDORA)   += board-omap3pandora.o \
   hsmmc.o
 obj-$(CONFIG_MACH_OMAP_3430SDP)+= board-3430sdp.o \
diff --git a/arch/arm/mach-omap2/board-omap3stalker.c
b/arch/arm/mach-omap2/board-omap3stalker.c
new file mode 100644
index 000..bb70b46
--- /dev/null
+++ b/arch/arm/mach-omap2/board-omap3stalker.c
@@ -0,0 +1,922 @@
+/*
+ * linux/arch/arm/mach-omap2/board-omap3evm.c
+ *
+ * Copyright (C) 2008 Guangzhou EMA-Tech
+ *
+ * Modified from mach-omap2/board-omap3evm.c
+ *
+ * Initial code: Syed Mohammed Khasim
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+#include linux/kernel.h
+#include linux/init.h
+#include linux/platform_device.h
+#include linux/delay.h
+#include linux/err.h
+#include linux/clk.h
+#include linux/gpio.h
+#include linux/input.h
+#include linux/input/matrix_keypad.h
+#include linux/leds.h
+#include linux/interrupt.h
+
+#include linux/spi/spi.h
+#include linux/spi/ads7846.h
+#include linux/i2c/twl.h
+#include linux/usb/otg.h
+#if defined(CONFIG_STALKER_BOARD_TYPE_EVM)
+#include linux/dm9000.h
+#elif defined(CONFIG_STALKER_BOARD_TYPE_LK_S)
+#include linux/smsc911x.h
+#include linux/gpio_keys.h
+#include linux/i2c/at24.h
+#endif
+
+#include linux/regulator/machine.h
+
+#include linux/mtd/mtd.h
+#include linux/mtd/partitions.h
+#include linux/mtd/nand.h
+
+#include mach/hardware.h
+#include asm/mach-types.h
+#include asm/mach/arch.h
+#include asm/mach/map.h
+#include asm/mach/flash.h
+
+#include plat/board.h
+#include plat/mux.h
+#include plat/gpmc.h
+#include plat/nand.h
+#include plat/usb.h
+#include plat/common.h
+#include plat/control.h
+#include plat/mcspi.h
+#include plat/clock.h
+#include plat/omap-pm.h
+#include plat/display.h
+#include plat/timer-gp.h
+
+#include mux.h
+#include sdram-micron-mt46h32m32lf-6.h
+#include hsmmc.h
+#include pm.h
+
+static struct mtd_partition omap3stalker_nand_partitions[] = {
+   /* All the partition sizes are listed in terms of NAND block size */
+   {
+.name = X-Loader,
+.offset = 0,
+.size = 4 * (SZ_128K),
+.mask_flags = MTD_WRITEABLE,
+},
+   {
+.name = U-Boot,
+.offset = MTDPART_OFS_APPEND,
+.size = 15 * (SZ_128K),
+.mask_flags = MTD_WRITEABLE,
+},
+   {
+.name = U-Boot Env,
+.offset = MTDPART_OFS_APPEND,
+.size = 1 * (SZ_128K)},
+   {
+.name = Kernel,
+.offset = MTDPART_OFS_APPEND,
+.size = 32 * (SZ_128K)},
+   {
+.name = File System,
+.size = MTDPART_SIZ_FULL,
+.offset = MTDPART_OFS_APPEND,
+},
+};
+
+static struct omap_nand_platform_data omap3stalker_nand_data = {
+   .parts = omap3stalker_nand_partitions,
+   .nr_parts = ARRAY_SIZE(omap3stalker_nand_partitions