#
# src/target/armadillo4x0/Kconfig
#

if PLATFORM_ARMADILLO4X0
config FORCE_MTDPARTS4x0
	bool "force use old(4x0) mtd parts for Armadillo-411 and Armadillo-441"
	default n
	help
	 A4110 and A4410 has a flash memory with uniform erase
	 block of 128 KB instead of the one we used had on A4100 and A4400, four
	 32 KB bottom parameter blocks.

	 With the bottom parameter blocks, Hermit was able to store "setenv"
	 parameters at the fourth block. Unfortunately, this strategy does not
	 work with the new flash memory with 128 KB uniform blocks; it will
	 erase the hermit proper when it tries to erase the setenv param space.

	 To overcome this limitation, we have changed the partioning of the
	 flash memory accordingly.  Increased the "bootloader" region from 128
	 KB (32 KB * 4) to 256 KB (128 KB * 2).	This change moved succeeding
	 "kernel" region by 128 KB.  The "userland" region is reduced in size
	 by 128 KB.  The "config" region is intact.

	 This option, when enabled, apply the old partioning to the boards with
	 new uniform erase block flash memory, A4110 and A4410.	With the old
	 partion, you have a risk to erase the whole bootloader region with
	 setenv command, but you can retain the same memory map with older
	 boards.

	 A picture is worth a thousand words:

			     +------------+   +------------+ 0x0
	  32 KB * 4 = 128 KB | bootloader |   | bootloader |   128 KB
			     +------------+   |		   |   128 KB
			     | kernel	  |   +------------+ 0x40_0000
			     =		  =   | kernel	   |
			     |		  |   =		   =
			     |		  |   |		   |
			     +------------+   |		   |
			     | userland	  |   +------------+
			     |		  |   | userland   |
			     =		  =   =		   =
			     |		  |   |		   |
			     +------------+   +-------------
			     | config	  |   | config	   |
			     +------------+   +------------+
endif # PLATFORM_ARMADILLO4X0
