xref: /openbmc/u-boot/board/logicpd/omap3som/README (revision 6032c029474cfba1ab2ff4a68e78905545c0c843)
115fde737SAdam FordSummary
215fde737SAdam Ford=======
315fde737SAdam Ford
415fde737SAdam FordThe source for omap3som encompases the DM3730 SOM-LV and DM3730 Torpedo platforms.
515fde737SAdam Ford
615fde737SAdam FordBy 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.
715fde737SAdam Ford
815fde737SAdam FordThe 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.
915fde737SAdam Ford
1015fde737SAdam FordIntegrating the SOM-LV Device Tree into U-Boot
1115fde737SAdam Ford==============================================
1215fde737SAdam Ford
1315fde737SAdam FordThis 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.
1415fde737SAdam Ford
1515fde737SAdam Ford  CONFIG_DEFAULT_DEVICE_TREE="logicpd-som-lv-37xx-devkit"
1615fde737SAdam Ford
1715fde737SAdam Ford  make distclean
1815fde737SAdam Ford  make omap3_logic_defconfig
1915fde737SAdam Ford
20*6032c029SAdam FordFalcon Mode: FAT SD cards
21*6032c029SAdam Ford=========================
22*6032c029SAdam Ford
23*6032c029SAdam FordIn this case the additional file is written to the filesystem.  In this
24*6032c029SAdam Fordexample we assume that the uImage and device tree to be used are already on
25*6032c029SAdam Fordthe FAT filesystem (only the uImage MUST be for this to function
26*6032c029SAdam Fordafterwards) along with a Falcon Mode aware MLO and the FAT partition has
27*6032c029SAdam Fordalready been created and marked bootable:
28*6032c029SAdam Ford
29*6032c029SAdam FordU-Boot # mmc rescan
30*6032c029SAdam Ford# Load kernel and device tree into memory, perform export
31*6032c029SAdam FordU-Boot # fatload mmc 0 ${loadaddr} uImage
32*6032c029SAdam FordU-Boot # run loadfdt
33*6032c029SAdam FordU-Boot # setenv optargs quiet
34*6032c029SAdam FordU-Boot # run mmcargs
35*6032c029SAdam FordU-Boot # run common_bootargs
36*6032c029SAdam FordU-Boot # spl export fdt ${loadaddr} - ${fdtaddr}
37*6032c029SAdam Ford
38*6032c029SAdam FordThis will print a number of lines and then end with something like:
39*6032c029SAdam Ford   Loading Device Tree to 8dec9000, end 8dee0295 ... OK
40*6032c029SAdam Ford
41*6032c029SAdam FordSo then note the starting address and write the args to mmc/sd:
42*6032c029SAdam Ford
43*6032c029SAdam FordU-Boot # fatwrite mmc 0:1 0x8dec9000 args 0x20000
44*6032c029SAdam Ford
45*6032c029SAdam FordThe size of 0x20000 matches the CMD_SPL_WRITE_SIZE.
46*6032c029SAdam Ford
47*6032c029SAdam FordFalcon Mode: NAND
48*6032c029SAdam Ford=================
49*6032c029SAdam Ford
50*6032c029SAdam FordIn this case the additional data is written to another partition of the
51*6032c029SAdam FordNAND.  In this example we assume that the uImage and device tree to be are
52*6032c029SAdam Fordalready located on the NAND somewhere (such as filesystem or mtd partition)
53*6032c029SAdam Fordalong with a Falcon Mode aware MLO written to the correct locations for
54*6032c029SAdam Fordbooting and mtdparts have been configured correctly for the board:
55*6032c029SAdam Ford
56*6032c029SAdam FordU-Boot # nand read ${loadaddr} kernel
57*6032c029SAdam FordU-Boot # load nand rootfs ${fdtaddr} /boot/am335x-evm.dtb
58*6032c029SAdam FordU-Boot # run nandargs
59*6032c029SAdam FordU-Boot # run common_bootargs
60*6032c029SAdam FordU-Boot # spl export fdt ${loadaddr} - ${fdtaddr}
61*6032c029SAdam FordU-Boot # nand erase.part u-boot-spl-os
62*6032c029SAdam FordU-Boot # nand write ${fdtaddr} u-boot-spl-os
63