[U-Boot] [U-Boot, v2, 2/6] board/ti/am335x: add support for beaglebone NAND cape
Tom Rini
trini at ti.com
Mon Aug 25 21:15:35 CEST 2014
On Tue, Jul 22, 2014 at 04:03:20PM +0530, pekon gupta wrote:
> Beaglebone Board can be connected to expansion boards to add devices to them.
> These expansion boards are called 'capes'. This patch adds support for
> following versions of Beaglebone(AM335x) NAND capes
> (a) NAND Device with bus-width=16, block-size=128k, page-size=2k, oob-size=64
> (b) NAND Device with bus-width=16, block-size=256k, page-size=4k, oob-size=224
> Further information and datasheets can be found at [1] and [2]
>
> * How to boot from NAND using Memory Expander + NAND Cape ? *
> - Important: As BOOTSEL values are sampled only at POR, so after changing any
> setting on SW2 (DIP switch), disconnect and reconnect all board power supply
> (including mini-USB console port) to POR the beaglebone.
>
> - Selection of ECC scheme
> for NAND cape(a), ROM code expects BCH8_HW ecc-scheme
> for NAND cape(b), ROM code expects BCH16_HW ecc-scheme
>
> - Selction of boot modes can be controlled via DIP switch(SW2) present on
> Memory Expander cape.
> SW2[SWITCH_BOOT] == OFF follow default boot order MMC-> SPI -> UART -> USB
> SW2[SWITCH_BOOT] == ON boot mode selected via DIP switch(SW2)
> So to flash NAND, first boot via MMC or other sources and then switch to
> SW2[SWITCH_BOOT]=ON to boot from NAND Cape.
>
> - For NAND boot following switch settings need to be followed
> SW2[ 1] = OFF (SYSBOOT[ 0]==1: NAND boot mode selected )
> SW2[ 2] = OFF (SYSBOOT[ 1]==1: -- do -- )
> SW2[ 3] = ON (SYSBOOT[ 2]==0: -- do -- )
> SW2[ 4] = ON (SYSBOOT[ 3]==0: -- do -- )
> SW2[ 5] = OFF (SYSBOOT[ 4]==1: -- do -- )
> SW2[ 6] = OFF (SYSBOOT[ 8]==1: 0:x8 device, 1:x16 device )
> SW2[ 7] = ON (SYSBOOT[ 9]==0: ECC done by ROM )
> SW2[ 8] = ON (SYSBOOT[10]==0: Non Muxed device )
> SW2[ 9] = ON (SYSBOOT[11]==0: -- do -- )
>
> [1] http://beagleboardtoys.info/index.php?title=BeagleBone_Memory_Expansion
> [2] http://beagleboardtoys.info/index.php?title=BeagleBone_4Gb_16-Bit_NAND_Module
>
> *IMPORTANT NOTE*
> As Beaglebone board shares the same config as AM335x EVM, so following
> changes are required in addition to this patch for Beaglebone NAND cape.
> (1) Enable NAND in am335x_beaglebone board profile
> (2) Add CONFIG_SYS_NAND_BUSWIDTH_16BIT to board config because:
> - AM335x EVM has NAND device with datawidth=8, whereas
> - Beaglebone NAND cape has NAND device with data-width=16
>
> diff --git a/boards.cfg b/boards.cfg
> -Active arm armv7 am33xx ti am335x am335x_boneblack am335x_evm:SERIAL1,CONS_INDEX=1,EMMC_BOOT Tom Rini <trini at ti.com>
> +Active arm armv7 am33xx ti am335x am335x_boneblack am335x_evm:SERIAL1,CONS_INDEX=1,NAND Tom Rini <trini at ti.com>
>
> diff --git a/include/configs/am335x_evm.h b/include/configs/am335x_evm.h
> +#define CONFIG_SYS_NAND_BUSWIDTH_16BIT
>
> Signed-off-by: Pekon Gupta <pekon at ti.com>
Applied to u-boot-ti/master, thanks!
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20140825/e7a432d7/attachment.pgp>
More information about the U-Boot
mailing list