diff options
author | wdenk <wdenk> | 2004-03-13 23:29:43 +0000 |
---|---|---|
committer | wdenk <wdenk> | 2004-03-13 23:29:43 +0000 |
commit | c40b29568232761e33400e58be86b15a167d3422 (patch) | |
tree | c306e01e8cf535467fb448499304020d251a763a /include | |
parent | 6629d2f22b4af180dc41defe2396bafcd8fe4093 (diff) | |
download | bootable_bootloader_goldelico_gta04-c40b29568232761e33400e58be86b15a167d3422.zip bootable_bootloader_goldelico_gta04-c40b29568232761e33400e58be86b15a167d3422.tar.gz bootable_bootloader_goldelico_gta04-c40b29568232761e33400e58be86b15a167d3422.tar.bz2 |
* Patch by Rune Torgersen, 27 Feb 2004:
- Added LBA48 support (CONFIG_LBA48 & CFG_64BIT_LBA)
- Added support for 64bit printing in vsprintf (CFG_64BIT_VSPRINTF)
- Added support for 64bit strtoul (CFG_64BIT_STRTOUL)
* Patch by Masami Komiya, 27 Feb 2004:
Fix rarpboot: add autoload by NFS
* Patch by Dan Eisenhut, 26 Feb 2004:
fix flash_write return value in saveenv
* Patch by Stephan Linz, 11 Dec 2003
expand config.mk to avoid trigraph warnings on NIOS
* Rename "BMS2003" board into "HMI10"
Diffstat (limited to 'include')
-rw-r--r-- | include/ata.h | 11 | ||||
-rw-r--r-- | include/common.h | 3 | ||||
-rw-r--r-- | include/configs/HMI10.h (renamed from include/configs/bms2003.h) | 8 | ||||
-rw-r--r-- | include/ide.h | 10 | ||||
-rw-r--r-- | include/status_led.h | 6 |
5 files changed, 27 insertions, 11 deletions
diff --git a/include/ata.h b/include/ata.h index 719f76a..d07210b 100644 --- a/include/ata.h +++ b/include/ata.h @@ -106,6 +106,10 @@ #define ATA_CMD_SETF 0xEF /* Set Features */ #define ATA_CMD_CHK_PWR 0xE5 /* Check Power Mode */ +#define ATA_CMD_READ_EXT 0x24 /* Read Sectors (with retries) with 48bit addressing */ +#define ATA_CMD_WRITE_EXT 0x34 /* Write Sectores (with retries) with 48bit addressing */ +#define ATA_CMD_VRFY_EXT 0x42 /* Read Verify (with retries) with 48bit addressing */ + /* * ATAPI Commands */ @@ -192,7 +196,7 @@ typedef struct hd_driveid { unsigned short major_rev_num; /* */ unsigned short minor_rev_num; /* */ unsigned short command_set_1; /* bits 0:Smart 1:Security 2:Removable 3:PM */ - unsigned short command_set_2; /* bits 14:Smart Enabled 13:0 zero */ + unsigned short command_set_2; /* bits 14:Smart Enabled 13:0 zero 10:lba48 support*/ unsigned short cfsse; /* command set-feature supported extensions */ unsigned short cfs_enable_1; /* command set-feature enabled */ unsigned short cfs_enable_2; /* command set-feature enabled */ @@ -203,7 +207,10 @@ typedef struct hd_driveid { unsigned short CurAPMvalues; /* current APM values */ unsigned short word92; /* reserved (word 92) */ unsigned short hw_config; /* hardware config */ - unsigned short words94_125[32];/* reserved words 94-125 */ + unsigned short words94_99[6];/* reserved words 94-99 */ + //unsigned long long lba48_capacity; /* 4 16bit values containing lba 48 total number of sectors */ + unsigned short lba48_capacity[4]; /* 4 16bit values containing lba 48 total number of sectors */ + unsigned short words104_125[22];/* reserved words 104-125 */ unsigned short last_lun; /* reserved (word 126) */ unsigned short word127; /* reserved (word 127) */ unsigned short dlf; /* device lock function diff --git a/include/common.h b/include/common.h index a1460f4..4c39403 100644 --- a/include/common.h +++ b/include/common.h @@ -459,6 +459,9 @@ int init_timebase (void); /* lib_generic/vsprintf.c */ ulong simple_strtoul(const char *cp,char **endp,unsigned int base); +#if CFG_64BIT_VSPRINTF +unsigned long long simple_strtoull(const char *cp,char **endp,unsigned int base); +#endif long simple_strtol(const char *cp,char **endp,unsigned int base); void panic(const char *fmt, ...); int sprintf(char * buf, const char *fmt, ...); diff --git a/include/configs/bms2003.h b/include/configs/HMI10.h index 8a76a28..8acea1c 100644 --- a/include/configs/bms2003.h +++ b/include/configs/HMI10.h @@ -33,7 +33,7 @@ * (easy to change) */ -#define CONFIG_BMS2003 +#define CONFIG_HMI10 #define CONFIG_MPC823 1 /* This is a MPC823 CPU */ #define CONFIG_TQM823L 1 /* ...on a TQM8xxL module */ @@ -78,7 +78,7 @@ "bootm $(kernel_addr) $(ramdisk_addr)\0" \ "net_nfs=tftp 200000 $(bootfile);run nfsargs addip;bootm\0" \ "rootpath=/opt/eldk/ppc_8xx\0" \ - "bootfile=/tftpboot/BMS/uImage\0" \ + "bootfile=/tftpboot/HMI10/uImage\0" \ "kernel_addr=40040000\0" \ "ramdisk_addr=40100000\0" \ "" @@ -328,7 +328,7 @@ *----------------------------------------------------------------------- * */ -#ifndef CONFIG_BMS2003 +#ifndef CONFIG_HMI10 #define CFG_PCMCIA_MEM_ADDR (0xE0000000) #define CFG_PCMCIA_MEM_SIZE ( 64 << 20 ) #define CFG_PCMCIA_DMA_ADDR (0xE4000000) @@ -337,7 +337,7 @@ #define CFG_PCMCIA_ATTRB_SIZE ( 64 << 20 ) #define CFG_PCMCIA_IO_ADDR (0xEC000000) #define CFG_PCMCIA_IO_SIZE ( 64 << 20 ) -#else /* CONFIG_BMS2003 */ +#else /* CONFIG_HMI10 */ #define CFG_PCMCIA_MEM_ADDR (0xE0100000) #define CFG_PCMCIA_MEM_SIZE ( 64 << 20 ) #define CFG_PCMCIA_DMA_ADDR (0xE4100000) diff --git a/include/ide.h b/include/ide.h index 08b86aa..3af12c8 100644 --- a/include/ide.h +++ b/include/ide.h @@ -38,12 +38,18 @@ #endif /* CONFIG_IDE_LED */ +#if CFG_64BIT_LBA +typedef uint64_t lbaint_t; +#else +typedef ulong lbaint_t; +#endif + /* * Function Prototypes */ void ide_init (void); -ulong ide_read (int device, ulong blknr, ulong blkcnt, ulong *buffer); -ulong ide_write (int device, ulong blknr, ulong blkcnt, ulong *buffer); +ulong ide_read (int device, lbaint_t blknr, ulong blkcnt, ulong *buffer); +ulong ide_write (int device, lbaint_t blknr, ulong blkcnt, ulong *buffer); #endif /* _IDE_H */ diff --git a/include/status_led.h b/include/status_led.h index 3438bde..4840c49 100644 --- a/include/status_led.h +++ b/include/status_led.h @@ -43,7 +43,7 @@ void status_led_tick (unsigned long timestamp); void status_led_set (int led, int state); /***** TQM8xxL ********************************************************/ -#if defined(CONFIG_TQM8xxL) && !defined(CONFIG_BMS2003) +#if defined(CONFIG_TQM8xxL) && !defined(CONFIG_HMI10) # define STATUS_LED_PAR im_cpm.cp_pbpar # define STATUS_LED_DIR im_cpm.cp_pbdir # define STATUS_LED_ODR im_cpm.cp_pbodr @@ -318,8 +318,8 @@ void status_led_set (int led, int state); # define STATUS_LED_BOOT 0 /* LED 0 used for boot status */ -/***** BMS2003 ********************************************************/ -#elif defined(CONFIG_BMS2003) +/***** HMI10 **********************************************************/ +#elif defined(CONFIG_HMI10) # define STATUS_LED_PAR im_ioport.iop_papar # define STATUS_LED_DIR im_ioport.iop_padir # define STATUS_LED_ODR im_ioport.iop_paodr |