Merge with /home/sr/git/u-boot/denx
authorWolfgang Denk <wd@pollux.denx.de>
Sun, 13 Aug 2006 00:25:32 +0000 (02:25 +0200)
committerWolfgang Denk <wd@pollux.denx.de>
Sun, 13 Aug 2006 00:25:32 +0000 (02:25 +0200)
13 files changed:
CHANGELOG
board/amcc/common/flash.c
common/cmd_mii.c
common/main.c
include/configs/bamboo.h
include/configs/bubinga.h
include/configs/ebony.h
include/configs/luan.h
include/configs/ocotea.h
include/configs/walnut.h
include/configs/yellowstone.h
include/configs/yosemite.h
include/configs/yucca.h

index 6782492..24499c5 100644 (file)
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -2,6 +2,19 @@
 Changes since U-Boot 1.1.4:
 ======================================================================
 
+* Fix control-c handing in CONFIG_CMDLINE_EDITING
+  Properly pass break code back from readline.
+  Patch by Roger Blofeld, 31 Jul 2006
+
+* Add commandline history support to all AMCC eval boards
+  Patch by Stefan Roese, 07 Aug 2006
+
+* Add Macronix MXLV320T flash support for AMCC Bamboo
+  Patch by Stefan Roese, 07 Aug 2006
+
+* Change "mii info" to not print an error upon missing PHY at address
+  Patch by Stefan Roese, 07 Aug 2006
+
 * Fix PCI-Express on PPC440SPe rev. A.
 
 * Fix preboot message on TQM85xx after switching to hush parser.
index 3a50b09..a0acbba 100644 (file)
@@ -76,6 +76,9 @@ void flash_print_info(flash_info_t * info)
        case FLASH_MAN_SST:
                printf("SST ");
                break;
+        case FLASH_MAN_MX:
+               printf ("MACRONIX ");
+               break;
        default:
                printf("Unknown Vendor ");
                break;
@@ -124,6 +127,9 @@ void flash_print_info(flash_info_t * info)
        case FLASH_STMW320DT:
                printf ("M29W320DT (32 M, top sector)\n");
                break;
+       case FLASH_MXLV320T:
+               printf ("MXLV320T (32 Mbit, top sector)\n");
+               break;
        default:
                printf("Unknown Chip Type\n");
                break;
@@ -375,6 +381,7 @@ int flash_erase(flash_info_t * info, int s_first, int s_last)
 {
        if (((info->flash_id & FLASH_TYPEMASK) == FLASH_AM320B) ||
            ((info->flash_id & FLASH_TYPEMASK) == FLASH_AM320T) ||
+           ((info->flash_id & FLASH_TYPEMASK) == FLASH_MXLV320T) ||
            ((info->flash_id & FLASH_TYPEMASK) == FLASH_STMW320DT)) {
                return flash_erase_2(info, s_first, s_last);
        } else {
@@ -555,6 +562,7 @@ static int write_word(flash_info_t * info, ulong dest, ulong data)
 {
        if (((info->flash_id & FLASH_TYPEMASK) == FLASH_AM320B) ||
            ((info->flash_id & FLASH_TYPEMASK) == FLASH_AM320T) ||
+           ((info->flash_id & FLASH_TYPEMASK) == FLASH_MXLV320T) ||
            ((info->flash_id & FLASH_TYPEMASK) == FLASH_STMW320DT)) {
                return write_word_2(info, dest, data);
        } else {
@@ -648,6 +656,9 @@ static ulong flash_get_size_2(vu_long * addr, flash_info_t * info)
        case (CFG_FLASH_WORD_SIZE) STM_MANUFACT:
                info->flash_id = FLASH_MAN_STM;
                break;
+       case (CFG_FLASH_WORD_SIZE) MX_MANUFACT:
+               info->flash_id = FLASH_MAN_MX;
+               break;
        default:
                info->flash_id = FLASH_UNKNOWN;
                info->sector_count = 0;
@@ -676,6 +687,12 @@ static ulong flash_get_size_2(vu_long * addr, flash_info_t * info)
                info->sector_count = 67;
                info->size = 0x00400000;  break;        /* => 4 MB      */
 
+       case (CFG_FLASH_WORD_SIZE)MX_ID_LV320T:
+               info->flash_id += FLASH_MXLV320T;
+               info->sector_count = 71;
+               info->size = 0x00400000;
+               break;  /* => 4 MB      */
+
        default:
                info->flash_id = FLASH_UNKNOWN;
                return (0);     /* => no or unknown flash */
@@ -711,6 +728,19 @@ static ulong flash_get_size_2(vu_long * addr, flash_info_t * info)
                        --i;
                        info->start[i] = base;
                }
+       } else if ((info->flash_id & FLASH_TYPEMASK) == FLASH_MXLV320T) {
+               i = info->sector_count - 1;
+               info->start[i--] = base + info->size - 0x00002000;
+               info->start[i--] = base + info->size - 0x00004000;
+               info->start[i--] = base + info->size - 0x00006000;
+               info->start[i--] = base + info->size - 0x00008000;
+               info->start[i--] = base + info->size - 0x0000a000;
+               info->start[i--] = base + info->size - 0x0000c000;
+               info->start[i--] = base + info->size - 0x0000e000;
+               info->start[i--] = base + info->size - 0x00010000;
+
+               for (; i >= 0; i--)
+                       info->start[i] = base + i * 0x00010000;
        } else {
                if (info->flash_id & FLASH_BTYPE) {
                        /* set sector offsets for bottom boot block type        */
index ee5e43e..e659536 100644 (file)
@@ -117,8 +117,6 @@ int do_mii (cmd_tbl_t * cmdtp, int flag, int argc, char *argv[])
                                        miiphy_speed (devname, j),
                                        (miiphy_duplex (devname, j) == FULL)
                                                ? "FDX" : "HDX");
-                       } else {
-                               puts ("Error reading info from the PHY\n");
                        }
                }
        } else if (op == 'r') {
@@ -503,8 +501,6 @@ int do_mii (cmd_tbl_t * cmdtp, int flag, int argc, char *argv[])
                                        miiphy_speed (devname, j),
                                        (miiphy_duplex (devname, j) == FULL)
                                                ? "FDX" : "HDX");
-                       } else {
-                               puts ("Error reading info from the PHY\n");
                        }
                }
        } else if (op[0] == 'r') {
index 3788bd5..13d12a4 100644 (file)
@@ -937,6 +937,7 @@ int readline (const char *const prompt)
 #ifdef CONFIG_CMDLINE_EDITING
        char *p = console_buffer;
        unsigned int len=MAX_CMDBUF_SIZE;
+       int rc;
        static int initted = 0;
 
        if (!initted) {
@@ -946,8 +947,8 @@ int readline (const char *const prompt)
 
        puts (prompt);
 
-       cread_line(p, &len);
-       return len;
+       rc = cread_line(p, &len);
+       return rc < 0 ? rc : len;
 #else
        char   *p = console_buffer;
        int     n = 0;                          /* buffer index         */
index 2c1c319..cd4339b 100644 (file)
 
 #define CONFIG_COMMANDS               (CONFIG_CMD_DFL  | \
                                CFG_CMD_ASKENV  | \
-                               CFG_CMD_EEPROM  | \
                                CFG_CMD_DATE    | \
                                CFG_CMD_DHCP    | \
                                CFG_CMD_DIAG    | \
                                CFG_CMD_ELF     | \
+                               CFG_CMD_EEPROM  | \
                                CFG_CMD_I2C     | \
                                CFG_CMD_IRQ     | \
                                CFG_CMD_MII     | \
 
 #define CFG_HZ                 1000    /* decrementer freq: 1 ms ticks */
 
-#define CONFIG_CMDLINE_EDITING
-
-#ifdef CONFIG_CMDLINE_EDITING
-#undef CONFIG_AUTO_COMPLETE
-#else
-#define CONFIG_AUTO_COMPLETE
-#endif
+#define CONFIG_CMDLINE_EDITING 1       /* add command line history     */
+#define CONFIG_LOOPW            1       /* enable loopw command         */
+#define CONFIG_MX_CYCLIC        1       /* enable mdc/mwc commands      */
+#define CONFIG_ZERO_BOOTDELAY_CHECK    /* check for keypress on bootdelay==0 */
+#define CONFIG_VERSION_VARIABLE 1      /* include version env variable */
 
 /*-----------------------------------------------------------------------
  * PCI stuff
index 4a79835..a66cdc3 100644 (file)
 
 #define        CFG_HZ          1000            /* decrementer freq: 1 ms ticks */
 
-#define CONFIG_AUTO_COMPLETE   1       /* add autocompletion support   */
+#define CONFIG_CMDLINE_EDITING 1       /* add command line history     */
 #define CONFIG_LOOPW            1       /* enable loopw command         */
+#define CONFIG_MX_CYCLIC        1       /* enable mdc/mwc commands      */
 #define CONFIG_ZERO_BOOTDELAY_CHECK    /* check for keypress on bootdelay==0 */
 #define CONFIG_VERSION_VARIABLE 1      /* include version env variable */
 
index a26af69..d8882ea 100644 (file)
 #undef CONFIG_SOFT_I2C                     /* I2C bit-banged           */
 #define CFG_I2C_SPEED          400000  /* I2C speed and slave address  */
 #define CFG_I2C_SLAVE          0x7F
-#define CFG_I2C_NOPROBES    {0x69}  /* Don't probe these addrs */
+
+#define CFG_I2C_MULTI_EEPROMS
+#define CFG_I2C_EEPROM_ADDR    (0xa8>>1)
+#define CFG_I2C_EEPROM_ADDR_LEN 1
+#define CFG_EEPROM_PAGE_WRITE_ENABLE
+#define CFG_EEPROM_PAGE_WRITE_BITS 3
+#define CFG_EEPROM_PAGE_WRITE_DELAY_MS 10
 
 #define CONFIG_PREBOOT "echo;" \
        "echo Type \"run flash_nfs\" to mount root filesystem over NFS;" \
                                CFG_CMD_DHCP    | \
                                CFG_CMD_DIAG    | \
                                CFG_CMD_ELF     | \
+                               CFG_CMD_EEPROM  | \
                                CFG_CMD_I2C     | \
                                CFG_CMD_IRQ     | \
                                CFG_CMD_MII     | \
 
 #define CFG_HZ         1000            /* decrementer freq: 1 ms ticks */
 
-#define CONFIG_AUTO_COMPLETE   1       /* add autocompletion support   */
+#define CONFIG_CMDLINE_EDITING 1       /* add command line history     */
 #define CONFIG_LOOPW            1       /* enable loopw command         */
+#define CONFIG_MX_CYCLIC        1       /* enable mdc/mwc commands      */
 #define CONFIG_ZERO_BOOTDELAY_CHECK    /* check for keypress on bootdelay==0 */
 #define CONFIG_VERSION_VARIABLE 1      /* include version env variable */
 
index 0335a00..0350e91 100644 (file)
 #define CFG_I2C_SPEED          400000  /* I2C speed and slave address  */
 #define CFG_I2C_SLAVE          0x7F
 
+#define CFG_I2C_MULTI_EEPROMS
+#define CFG_I2C_EEPROM_ADDR    (0xa8>>1)
+#define CFG_I2C_EEPROM_ADDR_LEN 1
+#define CFG_EEPROM_PAGE_WRITE_ENABLE
+#define CFG_EEPROM_PAGE_WRITE_BITS 3
+#define CFG_EEPROM_PAGE_WRITE_DELAY_MS 10
+
 #define CONFIG_PREBOOT "echo;" \
        "echo Type \"run flash_nfs\" to mount root filesystem over NFS;" \
        "echo"
                                CFG_CMD_DHCP            |       \
                                CFG_CMD_DIAG            |       \
                                CFG_CMD_ELF             |       \
+                               CFG_CMD_EEPROM          |       \
                                CFG_CMD_I2C             |       \
                                CFG_CMD_IRQ             |       \
                                CFG_CMD_MII             |       \
 
 #define CFG_HZ                 1000    /* decrementer freq: 1 ms ticks */
 
+#define CONFIG_CMDLINE_EDITING 1       /* add command line history     */
+#define CONFIG_LOOPW            1       /* enable loopw command         */
+#define CONFIG_MX_CYCLIC        1       /* enable mdc/mwc commands      */
+#define CONFIG_ZERO_BOOTDELAY_CHECK    /* check for keypress on bootdelay==0 */
+#define CONFIG_VERSION_VARIABLE 1      /* include version env variable */
+
 /*-----------------------------------------------------------------------
  * PCI stuff
  *-----------------------------------------------------------------------
index a13d6a8..89e9164 100644 (file)
 #undef CONFIG_SOFT_I2C                     /* I2C bit-banged           */
 #define CFG_I2C_SPEED          400000  /* I2C speed and slave address  */
 #define CFG_I2C_SLAVE          0x7F
-#define CFG_I2C_NOPROBES    {0x69}  /* Don't probe these addrs */
+
+#define CFG_I2C_MULTI_EEPROMS
+#define CFG_I2C_EEPROM_ADDR    (0xa8>>1)
+#define CFG_I2C_EEPROM_ADDR_LEN 1
+#define CFG_EEPROM_PAGE_WRITE_ENABLE
+#define CFG_EEPROM_PAGE_WRITE_BITS 3
+#define CFG_EEPROM_PAGE_WRITE_DELAY_MS 10
 
 #define CONFIG_PREBOOT "echo;" \
        "echo Type \"run flash_nfs\" to mount root filesystem over NFS;" \
 #define CONFIG_PHY_GIGE                1       /* Include GbE speed/duplex detection */
 #define CONFIG_PHY_RESET        1       /* reset phy upon startup         */
 #define CONFIG_PHY_RESET_DELAY 1000
+#define CFG_RX_ETH_BUFFER      32      /* Number of ethernet rx buffers & descriptors */
+
+#define CONFIG_NETCONSOLE              /* include NetConsole support   */
 
 #define CONFIG_COMMANDS               (CONFIG_CMD_DFL  | \
                                CFG_CMD_ASKENV  | \
                                CFG_CMD_DHCP    | \
                                CFG_CMD_DIAG    | \
                                CFG_CMD_ELF     | \
+                               CFG_CMD_EEPROM  | \
                                CFG_CMD_I2C     | \
                                CFG_CMD_IRQ     | \
                                CFG_CMD_MII     | \
 
 #define CFG_HZ                 1000    /* decrementer freq: 1 ms ticks */
 
-#define CONFIG_AUTO_COMPLETE   1       /* add autocompletion support   */
+#define CONFIG_CMDLINE_EDITING 1       /* add command line history     */
 #define CONFIG_LOOPW            1       /* enable loopw command         */
+#define CONFIG_MX_CYCLIC        1       /* enable mdc/mwc commands      */
 #define CONFIG_ZERO_BOOTDELAY_CHECK    /* check for keypress on bootdelay==0 */
 #define CONFIG_VERSION_VARIABLE 1      /* include version env variable */
 
-#define CFG_RX_ETH_BUFFER      32      /* Number of ethernet rx buffers & descriptors */
-
-#define CONFIG_NETCONSOLE              /* include NetConsole support   */
-
 /*-----------------------------------------------------------------------
  * PCI stuff
  *-----------------------------------------------------------------------
index 1171ee5..28abd6e 100644 (file)
 #define CONFIG_MII             1       /* MII PHY management           */
 #define CONFIG_PHY_ADDR                1       /* PHY address                  */
 
+#define CFG_RX_ETH_BUFFER      16      /* use 16 rx buffer on 405 emac */
+
+#define CONFIG_NETCONSOLE              /* include NetConsole support   */
+#define CONFIG_NET_MULTI               /* needed for NetConsole        */
+
 #define CONFIG_RTC_DS174x      1       /* use DS1743 RTC in Walnut     */
 
 #define CONFIG_COMMANDS               (CONFIG_CMD_DFL  | \
                                CFG_CMD_DATE    | \
                                CFG_CMD_DHCP    | \
                                CFG_CMD_DIAG    | \
+                               CFG_CMD_EEPROM  | \
                                CFG_CMD_ELF     | \
                                CFG_CMD_I2C     | \
                                CFG_CMD_IRQ     | \
 
 #define CFG_HZ         1000            /* decrementer freq: 1 ms ticks */
 
-#define CONFIG_AUTO_COMPLETE   1       /* add autocompletion support   */
+#define CONFIG_CMDLINE_EDITING 1       /* add command line history     */
 #define CONFIG_LOOPW           1       /* enable loopw command         */
+#define CONFIG_MX_CYCLIC        1       /* enable mdc/mwc commands      */
 #define CONFIG_ZERO_BOOTDELAY_CHECK    /* check for keypress on bootdelay==0 */
 #define CONFIG_VERSION_VARIABLE 1      /* include version env variable */
 
-#define CFG_RX_ETH_BUFFER      16      /* use 16 rx buffer on 405 emac */
-
-#define CONFIG_NETCONSOLE              /* include NetConsole support   */
-#define CONFIG_NET_MULTI               /* needed for NetConsole        */
-
 /*-----------------------------------------------------------------------
  * I2C stuff
  *-----------------------------------------------------------------------
 #define CFG_I2C_SPEED          400000  /* I2C speed and slave address  */
 #define CFG_I2C_SLAVE          0x7F
 
+#define CFG_I2C_MULTI_EEPROMS
+#define CFG_I2C_EEPROM_ADDR    (0xa8>>1)
+#define CFG_I2C_EEPROM_ADDR_LEN 1
+#define CFG_EEPROM_PAGE_WRITE_ENABLE
+#define CFG_EEPROM_PAGE_WRITE_BITS 3
+#define CFG_EEPROM_PAGE_WRITE_DELAY_MS 10
+
 /*-----------------------------------------------------------------------
  * PCI stuff
  *-----------------------------------------------------------------------
index 7d55566..cf42b66 100644 (file)
                                CFG_CMD_DHCP    | \
                                CFG_CMD_DIAG    | \
                                CFG_CMD_ELF     | \
+                               CFG_CMD_EEPROM  | \
                                CFG_CMD_I2C     | \
                                CFG_CMD_IRQ     | \
                                CFG_CMD_MII     | \
 
 #define CFG_HZ                 1000    /* decrementer freq: 1 ms ticks */
 
+#define CONFIG_CMDLINE_EDITING 1       /* add command line history     */
+#define CONFIG_LOOPW            1       /* enable loopw command         */
+#define CONFIG_MX_CYCLIC        1       /* enable mdc/mwc commands      */
+#define CONFIG_ZERO_BOOTDELAY_CHECK    /* check for keypress on bootdelay==0 */
+#define CONFIG_VERSION_VARIABLE 1      /* include version env variable */
+
 /*-----------------------------------------------------------------------
  * PCI stuff
  *-----------------------------------------------------------------------
index a81cf34..86a85b8 100644 (file)
                                CFG_CMD_DHCP    | \
                                CFG_CMD_DIAG    | \
                                CFG_CMD_ELF     | \
+                               CFG_CMD_EEPROM  | \
                                CFG_CMD_I2C     | \
                                CFG_CMD_IRQ     | \
                                CFG_CMD_MII     | \
 
 #define CFG_HZ                 1000    /* decrementer freq: 1 ms ticks */
 
+#define CONFIG_CMDLINE_EDITING 1       /* add command line history     */
+#define CONFIG_LOOPW            1       /* enable loopw command         */
+#define CONFIG_MX_CYCLIC        1       /* enable mdc/mwc commands      */
+#define CONFIG_ZERO_BOOTDELAY_CHECK    /* check for keypress on bootdelay==0 */
+#define CONFIG_VERSION_VARIABLE 1      /* include version env variable */
+
 /*-----------------------------------------------------------------------
  * PCI stuff
  *-----------------------------------------------------------------------
index 26a330e..884f85c 100644 (file)
 #define CONFIG_PHY_GIGE                1       /* Include GbE speed/duplex detection */
 #define CFG_RX_ETH_BUFFER      32      /* Number of ethernet rx buffers & descriptors */
 
+#define CONFIG_NETCONSOLE              /* include NetConsole support   */
+#define CONFIG_NET_MULTI               /* needed for NetConsole        */
+
 #undef CONFIG_WATCHDOG                 /* watchdog disabled            */
 
 /*
 
 #define CFG_HZ                 1000            /* decrementer freq: 1 ms ticks */
 
+#define CONFIG_CMDLINE_EDITING 1       /* add command line history     */
+#define CONFIG_LOOPW            1       /* enable loopw command         */
+#define CONFIG_MX_CYCLIC        1       /* enable mdc/mwc commands      */
+#define CONFIG_ZERO_BOOTDELAY_CHECK    /* check for keypress on bootdelay==0 */
+#define CONFIG_VERSION_VARIABLE 1      /* include version env variable */
+
 /*-----------------------------------------------------------------------
  * FLASH related
  *----------------------------------------------------------------------*/