[U-Boot] [linux-sunxi] [RFC 11/11] mtd/nand: Sunxi NAND boot partition definitions

Michal Suchanek
2015-06-07T16:48:26Z

Hello,

On 5 June 2015 at 13:52, Roy Spliet <r.spliet@ultimaker.com> wrote:
> Based on the default layout of the android image used at least on Olimex Lime
>
> Signed-off-by: Roy Spliet <r.spliet@ultimaker.com>
> ---
> include/configs/sunxi-common.h | 9 +++++++++
> 1 file changed, 9 insertions(+)
>
> diff --git a/include/configs/sunxi-common.h b/include/configs/sunxi-common.h
> index ec28c40..b38f2f5 100644
> --- a/include/configs/sunxi-common.h
> +++ b/include/configs/sunxi-common.h
> @@ -404,8 +404,15 @@ extern int soft_i2c_gpio_scl;
> #define BOOT_TARGET_DEVICES_USB(func)
> #endif
>
> +#ifdef CONFIG_NAND
> +#define BOOT_TARGET_DEVICES_NAND(func) func(NAND, nand , 0)
> +#else
> +#define BOOT_TARGET_DEVICES_NAND(func)
> +#endif
> +
> #define BOOT_TARGET_DEVICES(func) \
> BOOT_TARGET_DEVICES_MMC(func) \
> + BOOT_TARGET_DEVICES_NAND(func) \
> BOOT_TARGET_DEVICES_SCSI(func) \
> BOOT_TARGET_DEVICES_USB(func) \
> func(PXE, pxe, na) \
> @@ -441,6 +448,8 @@ extern int soft_i2c_gpio_scl;
> MEM_LAYOUT_ENV_SETTINGS \
> "fdtfile=" CONFIG_DEFAULT_DEVICE_TREE ".dtb\0" \
> "console=ttyS0,115200\0" \
> + "mtdids=nand0=mtd2\0" \
> + "mtdparts=mtdparts=mtd2:0xffc00000 at 0x400000(nand0_main)\0" \
> BOOTENV

From what I heard the nand boot partition size should be specified in
nand pages rather than bytes because the boot rom loads a fixed number
of pages and just uses the start of each page regardless of page size.

I did not find any document regarding the nand boot partition layout
so I would like to see some input from somebody familiar with the
driver.

While it is fine for testing to hand-edit the environment the final
nand support should have

1) way to express the boot partition size in nand pages
2) way to make the main partition start at the end of boot partition
and extend to the end of the flash

This should probably also go to Linux.

Thanks

Michal