* Patches by Travis Sawyer, 12 Mar 2004:
  - Fix Gigabit Ethernet support for 440GX
  - Add Gigabit Ethernet Support to MII PHY utilities

* Patch by Brad Kemp, 12 Mar 2004:
  Fixes for drivers/cfi_flash.c:
  - Better support for x8/x16 implementations
  - Added failure for AMD chips attempting to use CFG_FLASH_USE_BUFFER_WRITE
  - Added defines for AMD command and address constants

* Patch by Leon Kukovec, 12 Mar 2004:
  Fix get_dentfromdir() to correctly handle deleted dentries

* Patch by George G. Davis, 11 Mar 2004:
  Remove hard coded network settings in TI OMAP1610 H2
  default board config

* Patch by George G. Davis, 11 Mar 2004:
  add support for ADS GraphicsClient+ board.
diff --git a/common/miiphyutil.c b/common/miiphyutil.c
index 03964da..b45ab06 100644
--- a/common/miiphyutil.c
+++ b/common/miiphyutil.c
@@ -135,11 +135,20 @@
 {
 	unsigned short reg;
 
+	if (miiphy_read (addr, PHY_1000BTSR, &reg)) {
+		printf ("PHY 1000BT Status read failed\n");
+	} else {
+		if (reg != 0xFFFF) {
+			if ((reg & (PHY_1000BTSR_1000FD | PHY_1000BTSR_1000HD)) !=0) {
+				return (_1000BASET);
+			}
+		}
+	}
+
 	if (miiphy_read (addr, PHY_ANLPAR, &reg)) {
 		printf ("PHY speed1 read failed, assuming 10bT\n");
 		return (_10BASET);
 	}
-
 	if ((reg & PHY_ANLPAR_100) != 0) {
 		return (_100BASET);
 	} else {
@@ -156,6 +165,20 @@
 {
 	unsigned short reg;
 
+
+	if (miiphy_read (addr, PHY_1000BTSR, &reg)) {
+		printf ("PHY 1000BT Status read failed\n");
+	} else {
+		if ( (reg != 0xFFFF) &&
+		     (reg & (PHY_1000BTSR_1000FD | PHY_1000BTSR_1000HD)) ) {
+			if ((reg & PHY_1000BTSR_1000FD) !=0) {
+				return (FULL);
+			} else {
+				return (HALF);
+			}
+		}
+	}
+
 	if (miiphy_read (addr, PHY_ANLPAR, &reg)) {
 		printf ("PHY duplex read failed, assuming half duplex\n");
 		return (HALF);