1
0
Fork 0
remarkable-uboot/board/lego/ev3
David Lechner 2ac07f75d1 arm: Add support for LEGO MINDSTORMS EV3
This is based on the davinci da850evm. It can boot from either the
on-board 16MB flash or from a microSD card. It also reads board
information from an I2C EEPROM.

The EV3 itself initally boots from write-protected EEPROM, so no
u-boot SPL is needed.

Signed-off-by: David Lechner <david@lechnology.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
2016-03-14 19:18:40 -04:00
..
Kconfig arm: Add support for LEGO MINDSTORMS EV3 2016-03-14 19:18:40 -04:00
MAINTAINERS arm: Add support for LEGO MINDSTORMS EV3 2016-03-14 19:18:40 -04:00
Makefile arm: Add support for LEGO MINDSTORMS EV3 2016-03-14 19:18:40 -04:00
README arm: Add support for LEGO MINDSTORMS EV3 2016-03-14 19:18:40 -04:00
legoev3.c arm: Add support for LEGO MINDSTORMS EV3 2016-03-14 19:18:40 -04:00

README

Summary
=======

LEGO MINDSTORMS EV3 is a toy robot produced by the LEGO Group. It is based
on the davinci da850 evm. The EV3 has a 16MB spi flash and a SDHC microSD card
reader.

Booting
=======

The EV3 contains a bootloader in EEPROM that loads u-boot.bin from address 0x0
of the spi flash memory. Using the default configuration, u-boot will check to
see if there is a boot.scr file on the first FAT partition of the mmc. If there
is, it will run the script and boot the kernel from the uImage file also in
the FAT partition. Otherwise, it will load a kernel and rootfs from the flash.
The kernel must be stored at address 0x50000 on the flash and have a maximum
size of 3MiB. The rootfs must be a squasfs image and stored at 0x350000 in the
flash and have a maximum size of 9.3MiB. The flash starting at 0xCB0000 is
reserved for user data.

Writing image to flash
======================

The EEPROM contains a program for uploading an image file to the flash memory.
The program is started by holding down the right button on the EV3 when powering
it on. You can also `run fwupdateboot` in the u-boot shell to reboot into this
mode. The image can then be uploaded using the official LEGO MINDSTORMS EV3
software or a 3rd party program capable of uploading a firmware file.

If you are booting from the microSD card, it is enough to just write uboot.bin
to the flash. If you are not using a microSD card, you will need to create an
image file using the layout described above.