DM6446 Notes

From Wiki
Jump to: navigation, search




PC Application Software


  • RBL - ROM boot loader
  • UBL - User boot loader (loaded by RBL)

Odds & Ends

  • NAND is MT29F4G08ABC, 4GB, x8, 1.8V, 0xAC indentifier


Boot Loader came from 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:// u-boot/

To update sources against git repository

git pull;a=summary has change sumary for Das U-boot

To build Das u-boot:

cp u-boot.bin ~/tigerlabs/ss/das-boot.bin


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 ?