diff options
-rw-r--r-- | CHANGELOG | 130 | ||||
-rw-r--r-- | doc/README.sata | 24 | ||||
-rw-r--r-- | drivers/block/libata.c | 8 | ||||
-rw-r--r-- | include/libata.h | 14 | ||||
-rw-r--r-- | include/part.h | 8 |
5 files changed, 157 insertions, 27 deletions
@@ -1,3 +1,133 @@ +commit fd0b1fe3c388a77e8fe00cdd930ca317a91198d4 +Author: Dave Liu <r63238@freescale.com> +Date: Wed Mar 26 22:55:32 2008 +0800 + + drivers: add the support for Freescale SATA controller + + Add the Freescale on-chip SATA controller driver to u-boot, + The SATA controller is used on the 837x and 8315 targets, + The driver can be used to load kernel, fs and dtb. + + The features list: + - 1.5/3 Gbps link speed + - LBA48, LBA28 support + - DMA and FPDMA support + - Two ports support + + Signed-off-by: Dave Liu <daveliu@freescale.com> + +commit bede87f4c87c3ccd868cc60ebf792e0560c6d024 +Author: Dave Liu <r63238@freescale.com> +Date: Wed Mar 26 22:54:44 2008 +0800 + + ata: add the readme for SATA command line + + Signed-off-by: Dave Liu <daveliu@freescale.com> + +commit cd54081cd479e542fc399b8a40651ff11a1ad849 +Author: Dave Liu <r63238@freescale.com> +Date: Wed Mar 26 22:53:24 2008 +0800 + + ata: enable the sata initialize on boot up + + Signed-off-by: Dave Liu <daveliu@freescale.com> + +commit 69386383c5c2b323c66495b0b0cef6a9714d83bf +Author: Dave Liu <r63238@freescale.com> +Date: Wed Mar 26 22:52:36 2008 +0800 + + ata: add the fis struct for SATA + + Signed-off-by: Dave Liu <daveliu@freescale.com> + +commit ffc664e80dfb2e17de0df5ad39e91a02e9c361bc +Author: Dave Liu <r63238@freescale.com> +Date: Wed Mar 26 22:51:44 2008 +0800 + + ata: add the libata support + + add simple libata support in u-boot + + Signed-off-by: Dave Liu <daveliu@freescale.com> + +commit 8e9bb43429e50df55fa41932cbe65841ff579220 +Author: Dave Liu <r63238@freescale.com> +Date: Wed Mar 26 22:50:45 2008 +0800 + + ata: make the ata_piix driver using new SATA framework + + original ata_piix driver is using IDE framework, not real + SATA framework. For now, the ata_piix driver is only used + by x86 sc520_cdp board. This patch makes the ata_piix driver + use the new SATA framework, so + + - remove the duplicated command stuff + - remove the CONFIG_CMD_IDE define in the sc520_cdp.h + - add the CONFIG_CMD_SATA define to sc520_cdp.h + + Signed-off-by: Dave Liu <daveliu@freescale.com> + +commit c7057b529c3c3cb9c0ac9060686a4068f1491bbe +Author: Dave Liu <r63238@freescale.com> +Date: Wed Mar 26 22:49:44 2008 +0800 + + ata: add the support for SATA framework + + - add the SATA framework + - add the SATA command line + + Signed-off-by: Dave Liu <daveliu@freescale.com> + +commit 83c7f470a4ce94f33600f11ae85ce4dcf00aa90c +Author: Dave Liu <r63238@freescale.com> +Date: Wed Mar 26 22:48:18 2008 +0800 + + ata: merge the header of ata_piix driver + + move the sata.h from include/ to drivers/block/ata_piix.h + + Signed-off-by: Dave Liu <daveliu@freescale.com> + +commit 9eef62804d9695425b24c87b46a61a7fa74afee0 +Author: Dave Liu <r63238@freescale.com> +Date: Wed Mar 26 22:47:06 2008 +0800 + + ata: merge the ata_piix driver + + move the cmd_sata.c from common/ to drivers/ata_piix.c, + the cmd_sata.c have some part of ata_piix controller drivers. + consolidate the driver to have better framework. + + Signed-off-by: Dave Liu <daveliu@freescale.com> + +commit 5b5eb9ca5b778f763bcf332697b35cc1e747626e +Author: Wolfgang Denk <wd@denx.de> +Date: Wed Mar 26 15:38:47 2008 +0100 + + Coding style cleanup. + + Signed-off-by: Wolfgang Denk <wd@denx.de> + +commit da8808df7a9cef5a3d2ee286ef9ebf9de1780660 +Author: Joakim Tjernlund <Joakim.Tjernlund@transmode.se> +Date: Wed Mar 26 13:02:13 2008 +0100 + + Add CFG_RTC_DS1337_NOOSC to turn off OSC output + + The default settings for RTC DS1337 keeps the OSC + output, 32,768 Hz, on. This add CFG_RTC_DS1337_NOOSC to + turn it off. + + Signed-off-by: Joakim Tjernlund <Joakim.Tjernlund@transmode.se> + +commit 438a4c11260b4ea9805039b0b4f92f9df5306b02 +Author: Wolfgang Denk <wd@denx.de> +Date: Wed Mar 26 11:48:46 2008 +0100 + + Cleanup coding style, update CHANGELOG + + Signed-off-by: Wolfgang Denk <wd@denx.de> + commit 218ca724c08ca8a649f0917cf201cf23d4b33f39 Author: Wolfgang Denk <wd@denx.de> Date: Wed Mar 26 10:40:12 2008 +0100 diff --git a/doc/README.sata b/doc/README.sata index 3e2c6e8..168dc7f 100644 --- a/doc/README.sata +++ b/doc/README.sata @@ -9,10 +9,10 @@ => 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) +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? @@ -48,16 +48,16 @@ SATA device 0: Model: ST3320620AS Firm: 3.AAD Ser#: 4QF01ZTN 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. + 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 + <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 diff --git a/drivers/block/libata.c b/drivers/block/libata.c index a0cf90d..bbe16a2 100644 --- a/drivers/block/libata.c +++ b/drivers/block/libata.c @@ -109,7 +109,7 @@ void ata_dump_id(u16 *id) n_sectors = ata_id_n_sectors(id); printf("Capablity: %d sectors\n\r", n_sectors); - printf("id[49]: capabilities ==0x%04x\n" + printf ("id[49]: capabilities ==0x%04x\n" "id[53]: field valid ==0x%04x\n" "id[63]: mwdma ==0x%04x\n" "id[64]: pio ==0x%04x\n" @@ -120,14 +120,14 @@ void ata_dump_id(u16 *id) id[64], id[75]); - printf("id[76]: sata capablity ==0x%04x\n" + printf ("id[76]: sata capablity ==0x%04x\n" "id[78]: sata features supported ==0x%04x\n" "id[79]: sata features enable ==0x%04x\n", id[76], id[78], id[79]); - printf("id[80]: major version ==0x%04x\n" + printf ("id[80]: major version ==0x%04x\n" "id[81]: minor version ==0x%04x\n" "id[82]: command set supported 1 ==0x%04x\n" "id[83]: command set supported 2 ==0x%04x\n" @@ -137,7 +137,7 @@ void ata_dump_id(u16 *id) id[82], id[83], id[84]); - printf("id[85]: command set enable 1 ==0x%04x\n" + printf ("id[85]: command set enable 1 ==0x%04x\n" "id[86]: command set enable 2 ==0x%04x\n" "id[87]: command set default ==0x%04x\n" "id[88]: udma ==0x%04x\n" diff --git a/include/libata.h b/include/libata.h index a5d1c4f..aedba74 100644 --- a/include/libata.h +++ b/include/libata.h @@ -168,13 +168,13 @@ enum { #define ata_id_has_ncq(id) ((id)[76] & (1 << 8)) #define ata_id_queue_depth(id) (((id)[75] & 0x1f) + 1) -#define ata_id_u32(id,n) \ - (((u32) (id)[(n) + 1] << 16) | ((u32) (id)[(n)])) -#define ata_id_u64(id,n) \ - ( ((u64) (id)[(n) + 3] << 48) | \ - ((u64) (id)[(n) + 2] << 32) | \ - ((u64) (id)[(n) + 1] << 16) | \ - ((u64) (id)[(n) + 0]) ) +#define ata_id_u32(id,n) \ + (((u32) (id)[(n) + 1] << 16) | ((u32) (id)[(n)])) +#define ata_id_u64(id,n) \ + ( ((u64) (id)[(n) + 3] << 48) | \ + ((u64) (id)[(n) + 2] << 32) | \ + ((u64) (id)[(n) + 1] << 16) | \ + ((u64) (id)[(n) + 0]) ) static inline unsigned int ata_id_major_version(const u16 *id) diff --git a/include/part.h b/include/part.h index cb1b758..b22a637 100644 --- a/include/part.h +++ b/include/part.h @@ -27,8 +27,8 @@ typedef struct block_dev_desc { int if_type; /* type of the interface */ - int dev; /* device number */ - unsigned char part_type; /* partition type */ + int dev; /* device number */ + unsigned char part_type; /* partition type */ unsigned char target; /* target SCSI ID */ unsigned char lun; /* target LUN */ unsigned char type; /* device type */ @@ -36,9 +36,9 @@ typedef struct block_dev_desc { #ifdef CONFIG_LBA48 unsigned char lba48; /* device can use 48bit addr (ATA/ATAPI v7) */ #endif - lbaint_t lba; /* number of blocks */ + lbaint_t lba; /* number of blocks */ unsigned long blksz; /* block size */ - char vendor [40+1]; /* IDE model, SCSI Vendor */ + char vendor [40+1]; /* IDE model, SCSI Vendor */ char product[20+1]; /* IDE Serial no, SCSI product */ char revision[8+1]; /* firmware revision */ unsigned long (*block_read)(int dev, |