| 1. SATA usage in U-Boot | 
|   | 
|     There are two ways to operate the hard disk | 
|   | 
|     * Read/write raw blocks from/to SATA hard disk | 
|     * ext2load to read a file from ext2 file system | 
|   | 
| 1.0 How to read the SATA hard disk's information? | 
|   | 
|     => 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 raw write the kernel, file system, dtb to a SATA hard disk? | 
|   | 
|     Notes: Hard disk sectors are normally 512 bytes, so | 
|         0x1000 sectors = 2 MBytes | 
|   | 
|     write 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 raw read the kernel, file system, dtb from a SATA hard disk? | 
|   | 
|     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 an image from an ext2 file system in U-Boot? | 
|   | 
|     U-Boot doesn't support writing to an ext2 file system, so the | 
|     files must be written by other means (e.g. linux). | 
|   | 
|     => 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 |