README 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. Summary
  2. =======
  3. LEGO MINDSTORMS EV3 is a toy robot produced by the LEGO Group. It is based
  4. on the davinci da850 evm. The EV3 has a 16MB spi flash and a SDHC microSD card
  5. reader.
  6. Booting
  7. =======
  8. The EV3 contains a bootloader in EEPROM that loads u-boot.bin from address 0x0
  9. of the SPI flash memory (with a size of 256KiB!). Because the EEPROM is read-
  10. only and it takes care of low level configuration (PLL and DDR), we don't use
  11. U-Boot to produce an SPL image.
  12. Using the default configuration, U-Boot had a boot scrips that works as follows:
  13. * Check to see if microSD card is present
  14. * If it is, try to load boot.scr from the first FAT partition
  15. * If loading boot.scr was successful, run it
  16. * Otherwise, try loading uEnv.txt
  17. * If loading uEnv.txt was successful, import it
  18. * If there is a uenvcmd variable (from uEnv.txt), run it
  19. * Try to load uImage from the first FAT partition
  20. * If it was successful, try to load da850-lego-ev3.dtb
  21. * If loading uImage was successful, boot it (DT is optional)
  22. * If none of the above was successful, try booting from flash
  23. Suggested Flash Memory Layout
  24. =============================
  25. The following is based on the default U-Boot configuration:
  26. | Image (file) | Start Addr. | Max. Size |
  27. +--------------------+-------------+-------------------+
  28. | u-boot.bin | 0x0 | 0x40000 (256KiB) |
  29. | da850-lego-ev3.dtb | 0x40000 | 0x10000 (64KiB) |
  30. | uImage | 0x50000 | 0x400000 (4MiB) |
  31. | rootfs (squashfs) | 0x450000 | 0xa00000 (10MiB) |
  32. Writing image to flash
  33. ======================
  34. The EEPROM contains a program for uploading an image file to the flash memory.
  35. The program is started by holding down the right button on the EV3 when powering
  36. it on. You can also `run fwupdateboot` in the u-boot shell to reboot into this
  37. mode. The image can then be uploaded using the official LEGO MINDSTORMS EV3
  38. software or a 3rd party program capable of uploading a firmware file.
  39. If you are booting from the microSD card, it is enough to just write uboot.bin
  40. to the flash. If you are not using a microSD card, you will need to create an
  41. image file using the layout described above.
  42. IMPORTANT: The EEPROM bootloader only copies 256k, so u-boot.img must not
  43. exceed that size!