|
|
|
1. SATA usage in U-boot
|
|
|
|
|
|
|
|
Two ways to operate the hard disk
|
|
|
|
|
|
|
|
* Raw read/write block from/to SATA hard disk;
|
|
|
|
* ext2load read file from ext2 filesytem in hard disk
|
|
|
|
|
|
|
|
1.0 How to know the information of SATA hard disk?
|
|
|
|
|
|
|
|
=> sata info
|
|
|
|
|
|
|
|
SATA device 0: Model: ST3320620AS Firm: 3.AAD Ser#: 4QF01ZTN
|
|
|
|
Type: Hard Disk
|
|
|
|
Supports 48-bit addressing
|
|
|
|
Capacity: 305245.3 MB = 298.0 GB (625142448 x 512)
|
|
|
|
|
|
|
|
1.1 How to save the kernel, filesystem, dtb to SATA hard disk with raw?
|
|
|
|
|
|
|
|
Notes: 0x1000 sectors = 2 MBytes
|
|
|
|
|
|
|
|
wirte kernel
|
|
|
|
=> tftp 40000 /tftpboot/uImage.837x
|
|
|
|
=> sata write 40000 0 2000
|
|
|
|
|
|
|
|
write ramdisk
|
|
|
|
=> tftp 40000 /tftpboot/ramdisk.837x
|
|
|
|
=> sata write 40000 2000 8000
|
|
|
|
|
|
|
|
write dtb
|
|
|
|
=> tftp 40000 /tftpboot/mpc837xemds.dtb
|
|
|
|
=> sata write 40000 a000 1000
|
|
|
|
|
|
|
|
1.2 How to read the kernel, filesystem, dtb from SATA hard disk with raw?
|
|
|
|
|
|
|
|
load kernel
|
|
|
|
=> sata read 200000 0 2000
|
|
|
|
|
|
|
|
load ramdisk
|
|
|
|
=> sata read 1000000 2000 8000
|
|
|
|
|
|
|
|
load dtb
|
|
|
|
=> sata read 2000000 a000 1000
|
|
|
|
|
|
|
|
boot
|
|
|
|
=> bootm 200000 1000000 2000000
|
|
|
|
|
|
|
|
1.3 How to load image from ext2 filesystem in U-boot?
|
|
|
|
|
|
|
|
U-boot doesn't support ext2 write to hard disk, so
|
|
|
|
you have to write the image to hard disk under Linux env,
|
|
|
|
before you load image from ext2 filesystem.
|
|
|
|
|
|
|
|
=> ext2ls sata 0:1 /
|
|
|
|
<DIR> 4096 .
|
|
|
|
<DIR> 4096 ..
|
|
|
|
<DIR> 16384 lost+found
|
|
|
|
1352023 uImage.837x
|
|
|
|
3646377 ramdisk.837x
|
|
|
|
12288 mpc837xemds.dtb
|
|
|
|
12 hello.txt
|
|
|
|
|
|
|
|
=> ext2load sata 0:1 200000 /uImage.837x
|
|
|
|
|
|
|
|
=> ext2load sata 0:1 1000000 /ramdisk.837x
|
|
|
|
|
|
|
|
=> ext2load sata 0:1 2000000 /mpc837xemds.dtb
|
|
|
|
|
|
|
|
=> bootm 200000 1000000 2000000
|