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 / 4096 . 4096 .. 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