DM6446 Notes
From Wiki
Jump to navigationJump to search
Links
- TI's TMDSEVM6446 Home
- Spectrum Digitals EVM Support Home
- Loading U-Boot to NAND memory (PDF, page 4)
- Booting and Flashing via the DaVinci TMS320DM644x Serial Interface (PDF)
- How to rebuild u-boot for DM6446
- Basic Application Loading Over Serial Interface for the DaVinci DM644x (PDF)
- Wiki page on RBL/UBL
- Sources for DVSDK, LSP, etc
- Late-model kernel via git info
- Updates of stuff...
- git kernel update summary
YAFFS2
USB
PC Application Software
Terms
- RBL - ROM boot loader
- UBL - User boot loader (loaded by RBL)
Odds & Ends
- NAND is MT29F4G08ABC, 4GB, x8, 1.8V, 0xAC indentifier
Programming
Boot Loader came from http://tiexpressdsp.com/index.php/Serial_Boot_and_Flash_Loading_Utility u-boot came from ~/tigerlabs/dvsdk_2_00_00_22/PSP_02_00_00_140/board_utilities/u-boot-1.2.0
Command line to program UBL and U-Boot into NAND is
G:\tigerlabs\dm6446\DM644x_FlashAndBootUtils_1_50\DM644x\GNU>sfh_DM644x.exe -nandflash ubl\ubl_DM644x_nand.bin u-boot.bin
Loading The Kernel
Boot into u-boot, issue the following commands:
# loady # nand erase 0x400000 0x200000 # nand write 0x80700000 0x400000 0x200000
When 'loady' starts, use Ymodem to send down uImage-dm6446. After erasing and writing the flash,
# nboot 0x80700000 0 0x400000;bootm
should start the kernel booting. To prevent it from attempting to boot from the network, make sure 'ip=none' is in the bootargs.
MTD Adjustments
- dm6446_mv5/osgk/linux-davinci/arch/arm/mach-davinci/board-dm644x-evm.c needs adjustment once we know the flash sizes
U-Boot Mods
- dvsdk_2_00_00_22/PSP_02_00_00_140/board_utilities/u-boot-1.2.0/include/configs/slideshow.h has U-Boot configuration settings
Das U-Boot
To fetch entire tree:
git clone git://git.denx.de/u-boot.git u-boot/
To update sources against git repository
git pull
http://git.denx.de/?p=u-boot.git;a=summary has change sumary for Das U-boot
To build Das u-boot:
make ARCH=arm CROSS_COMPILE=arm_v5t_le- USE_PRIVATE_LIBGCC=yes cp u-boot.bin ~/tigerlabs/ss/das-boot.bin
Jumpers
H2-3 | H2-4 | Mode |
---|---|---|
0 | 0 | NAND flash boot |
0 | 1 | NOR flash boot |
1 | 0 | Reserved |
1 | 1 | UART boot |
NAND Memory Map
Start | End | Size | Block(s) | Block #'s | Contents |
---|---|---|---|---|---|
0x00000000 | 0x0001ffff | 128K | 1 | 1 | UBL |
0x00020000 | 0x0003ffff | 128K | 1 | 2 | UBL (spare #1) |
0x00040000 | 0x0005ffff | 128K | 1 | 3 | UBL (spare #2) |
0x00060000 | 0x0007ffff | 128K | 1 | 4 | UBL (spare #3) |
0x00080000 | 0x0009ffff | 128K | 1 | 5 | UBL (spare #4) |
0x000a0000 | 0x003fffff | 3456K | 27 | 6-32 | U-Boot |
0x00400000 | 0x005fffff | 2048K | 16 | 33-48 | Kernel |
0x00600000 | 0x025fffff | 32M | 256 | 49-304 | File system (rootfs) |
0x02600000 | 0x01ffffff | 474M | 3792 | 305-4096 | File system (extra) |
JFFS2 Variables
setenv mtdids nand0=nand0 setenv mtdparts mtdparts=nand0:4m(bootloader),2m(kernel),-(filesystem) setenv partition nand0,2
Setting Kernel .config Defaults
- For 2.6.31 git kernel
make davinci_all_defconfig
- For 2.6.18 kernel
make ?