mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-25 14:10:43 +00:00
6931ab2fb4
The SPL doesn't have much room, so in order to support OF_CONTROL in SPL, we need the extra functionality of SPL_OF_PLATDATA. Adding these features allows us to remove a small part of code without losing the serial port during SPL. Signed-off-by: Adam Ford <aford173@gmail.com> |
||
---|---|---|
.. | ||
Kconfig | ||
MAINTAINERS | ||
Makefile | ||
omap3logic.c | ||
omap3logic.h | ||
README |
Summary ======= The source for omap3som encompases the DM3730 SOM-LV and DM3730 Torpedo platforms. By default, the Torpedo Device Tree is integrated into U-Boot,but the MMC controller, GPIO and I2C controllers are the same, so for the purposes of loading U-Boot, it should be sufficient. However this will display the Model as "LogicPD Zoom DM3730 Torpedo + Wireless Development Kit" upon boot. The actual board remains autodetected and the Board will read "DM37xx SOM LV" when used on the DM37 SOM-LV. The device tree loaded with Linux is also correct. Integrating the SOM-LV Device Tree into U-Boot ============================================== This step is optional, but should you want to change the default to the SOM-LV, locate the configs/omap3_logic_defconfig file and make the following change. CONFIG_DEFAULT_DEVICE_TREE="logicpd-som-lv-37xx-devkit" make distclean make omap3_logic_defconfig Falcon Mode: FAT SD cards ========================= In this case the additional file is written to the filesystem. In this example we assume that the uImage and device tree to be used are already on the FAT filesystem (only the uImage MUST be for this to function afterwards) along with a Falcon Mode aware MLO and the FAT partition has already been created and marked bootable: U-Boot # mmc rescan # Load kernel and device tree into memory, perform export U-Boot # fatload mmc 0 ${loadaddr} uImage U-Boot # run loadfdt U-Boot # setenv optargs quiet U-Boot # run mmcargs U-Boot # run common_bootargs U-Boot # spl export fdt ${loadaddr} - ${fdtaddr} This will print a number of lines and then end with something like: Loading Device Tree to 8dec9000, end 8dee0295 ... OK So then note the starting address and write the args to mmc/sd: U-Boot # fatwrite mmc 0:1 0x8dec9000 args 0x20000 The size of 0x20000 matches the CMD_SPL_WRITE_SIZE. Falcon Mode: NAND ================= In this case the additional data is written to another partition of the NAND. In this example we assume that the uImage and device tree to be are already located on the NAND somewhere (such as filesystem or mtd partition) along with a Falcon Mode aware MLO written to the correct locations for booting and mtdparts have been configured correctly for the board: U-Boot # nand read ${loadaddr} kernel U-Boot # load nand rootfs ${fdtaddr} /boot/am335x-evm.dtb U-Boot # run nandargs U-Boot # run common_bootargs U-Boot # spl export fdt ${loadaddr} - ${fdtaddr} U-Boot # nand erase.part u-boot-spl-os U-Boot # nand write ${fdtaddr} u-boot-spl-os