summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/sparc/shared/include
diff options
context:
space:
mode:
authorDaniel Hellstrom <daniel@gaisler.com>2013-03-13 16:40:05 +0100
committerDaniel Hellstrom <daniel@gaisler.com>2015-04-17 01:10:19 +0200
commit107c5aea262b0e2e849638e56fd34e41efb5f2c4 (patch)
tree54b8efcf3ca0899924ca64aac20b62bda70c77c0 /c/src/lib/libbsp/sparc/shared/include
parentGRETH: forcing autonegotiation during PHY initialization (diff)
downloadrtems-107c5aea262b0e2e849638e56fd34e41efb5f2c4.tar.bz2
GRETH: changed the PHY initialization sequence
1. read_mii() now returns 0xffff on failure. It is more robust when it comes to reading the reset bit in the control register, that is the first access. 2. write_mii() now has error printout like read_mii(). 3. Additional (optional) PHY access debugging is now available by enabling GRETH_DEBUG_MII. Even successful accesses are printed. 4. Let PHY do power-down (not only reset) to get in a good state, this is just in case the PHY input pin settings are sampled only on PHY power-up on some PHYs. 5. PHY GBit advertisement is disabled if Gbit is not supported by MAC. Or forced if supported. 6. Auto-nego is started if supported by PHY, before it was started only if default set by PHY. 7. Reset Sequence updated: * one must wait until reset bit is self-cleared. * the DD (Disable Duplex Detection) bit is set, only affects EDCL capable devices. This lets RTEMS handle PHY initialization
Diffstat (limited to 'c/src/lib/libbsp/sparc/shared/include')
-rw-r--r--c/src/lib/libbsp/sparc/shared/include/greth.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/c/src/lib/libbsp/sparc/shared/include/greth.h b/c/src/lib/libbsp/sparc/shared/include/greth.h
index c0c3b9a28b..8c88172b94 100644
--- a/c/src/lib/libbsp/sparc/shared/include/greth.h
+++ b/c/src/lib/libbsp/sparc/shared/include/greth.h
@@ -81,6 +81,7 @@ typedef struct _greth_regs {
#define GRETH_CTRL_FULLD 0x00000010 /* Full Duplex */
#define GRETH_CTRL_PRO 0x00000020 /* Promiscuous (receive all) */
#define GRETH_CTRL_RST 0x00000040 /* Reset MAC */
+#define GRETH_CTRL_DD 0x00001000 /* Disable EDCL Duplex Detection */
/* Status Register */
#define GRETH_STATUS_RXERR 0x00000001 /* Receive Error */