Commit a5bbcc3c authored by wdenk's avatar wdenk

* Patches by Sean Chang, 09 Aug 2004:

  - Added support for both 8 and 16 bit mode access to System ACE CF
    through MPU.
  - Fixed missing System ACE CF device during get FAT partition info
    in fat_register_device function.
  - Enabled System ACE CF support on ML300.

* Patch by Sean Chang, 09 Aug 2004:
  Synch defines for saveenv and do_saveenv functions so they get
  compiled under the same statement.
parent a06752e3
......@@ -2,7 +2,18 @@
Changes since U-Boot 1.1.1:
======================================================================
* Patch by Sean Chang, 9 Aug 2004:
* Patches by Sean Chang, 09 Aug 2004:
- Added support for both 8 and 16 bit mode access to System ACE CF
through MPU.
- Fixed missing System ACE CF device during get FAT partition info
in fat_register_device function.
- Enabled System ACE CF support on ML300.
* Patch by Sean Chang, 09 Aug 2004:
Synch defines for saveenv and do_saveenv functions so they get
compiled under the same statement.
* Patch by Sean Chang, 09 Aug 2004:
- Added I2C support for ML300.
- Added support for ML300 to read out its environment information
stored on the EEPROM.
......@@ -11,7 +22,7 @@ Changes since U-Boot 1.1.1:
- Updated MLD files to support configuration for new features
above.
* Patches by Travis Sawyer, 5 Aug 2004:
* Patches by Travis Sawyer, 05 Aug 2004:
- Remove incorrect bridge settings for eth group 6
- Add call to setup bridge in ppc_440x_eth_initialize
- Fix ppc_440x_eth_init to reset the phy only if its the
......
......@@ -50,12 +50,35 @@
*/
static unsigned ace_readw(unsigned offset)
{
return readw(CFG_SYSTEMACE_BASE+offset);
#if (CFG_SYSTEMACE_WIDTH == 8)
u16 temp;
#if !defined(__BIG_ENDIAN)
temp =((u16)readb(CFG_SYSTEMACE_BASE+offset) << 8);
temp |= (u16)readb(CFG_SYSTEMACE_BASE+offset+1);
#else
temp = (u16)readb(CFG_SYSTEMACE_BASE+offset);
temp |=((u16)readb(CFG_SYSTEMACE_BASE+offset+1) << 8);
#endif
return temp;
#else
return readw(CFG_SYSTEMACE_BASE+offset);
#endif
}
static void ace_writew(unsigned val, unsigned offset)
{
writew(val, CFG_SYSTEMACE_BASE+offset);
#if (CFG_SYSTEMACE_WIDTH == 8)
#if !defined(__BIG_ENDIAN)
writeb((u8)(val>>8), CFG_SYSTEMACE_BASE+offset);
writeb((u8)val, CFG_SYSTEMACE_BASE+offset+1);
#else
writeb((u8)val, CFG_SYSTEMACE_BASE+offset);
writeb((u8)(val>>8), CFG_SYSTEMACE_BASE+offset+1);
#endif
#else
writew(val, CFG_SYSTEMACE_BASE+offset);
#endif
}
/* */
......
......@@ -586,8 +586,9 @@ U_BOOT_CMD(
" - delete environment variable 'name'\n"
);
#if ((CONFIG_COMMANDS & (CFG_CMD_ENV|CFG_CMD_FLASH)) == (CFG_CMD_ENV|CFG_CMD_FLASH))
#if defined(CFG_ENV_IS_IN_NVRAM) || defined(CFG_ENV_IS_IN_EEPROM) || \
((CONFIG_COMMANDS & (CFG_CMD_ENV|CFG_CMD_FLASH)) == \
(CFG_CMD_ENV|CFG_CMD_FLASH))
U_BOOT_CMD(
saveenv, 1, 0, do_saveenv,
"saveenv - save environment variables to persistent storage\n",
......
......@@ -90,7 +90,7 @@ fat_register_device(block_dev_desc_t *dev_desc, int part_no)
}
else {
#if (CONFIG_COMMANDS & CFG_CMD_IDE) || (CONFIG_COMMANDS & CFG_CMD_SCSI) || \
(CONFIG_COMMANDS & CFG_CMD_USB)
(CONFIG_COMMANDS & CFG_CMD_USB) || defined(CONFIG_SYSTEMACE)
disk_partition_t info;
if(!get_partition_info(dev_desc, part_no, &info)) {
part_offset = info.start;
......
......@@ -56,6 +56,11 @@
#define CONFIG_4xx 1 /* ...member of PPC4xx family */
#define CONFIG_XILINX_ML300 1 /* ...on a Xilinx ML300 board */
#define CONFIG_SYSTEMACE 1
#define CONFIG_DOS_PARTITION 1
#define CFG_SYSTEMACE_BASE XPAR_SYSACE_0_BASEADDR
#define CFG_SYSTEMACE_WIDTH XPAR_XSYSACE_MEM_WIDTH
#define CFG_ENV_IS_IN_EEPROM 1 /* environment is in EEPROM */
/* following are used only if env is in EEPROM */
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment