summaryrefslogtreecommitdiffstats
path: root/drivers/net/designware.h
diff options
context:
space:
mode:
authorStefan Roese <sr@denx.de>2012-05-07 12:04:25 +0200
committerAlbert ARIBAUD <albert.u.boot@aribaud.net>2012-07-07 14:07:42 +0200
commitef76025a99247cdb8f927a2c9f15400678dfb599 (patch)
tree6c1acdff394e51528b6f8456d94b7b9abede5d08 /drivers/net/designware.h
parent9b382b43a1db000a78822ad9e1814577dd2e1a19 (diff)
downloadtalos-obmc-uboot-ef76025a99247cdb8f927a2c9f15400678dfb599.tar.gz
talos-obmc-uboot-ef76025a99247cdb8f927a2c9f15400678dfb599.zip
net: Multiple updates/enhancements to designware.c
This patch adds the following changes to designware ethernet driver found on the ST SPEAr SoC: - Don't init MAC & PHY upon startup. This causes a delay, waiting for the auto negotiation to complete. And we don't want this delay to always happen. Especially not on platforms where ethernet is not used at all (e.g. booting via flash). Instead postpone the MAC / PHY configuration to the stage, where ethernet is first used. - Add possibility for board specific PHY init code. This is needed for example on the X600 board, where the Vitesse PHY needs to be configured for GMII mode. This board specific PHY init is done via the function designware_board_phy_init(). And this driver now adds a weak default which can be overridden by board code. - Use common functions miiphy_speed() & miiphy_duplex() to read link status from PHY. - Print status and progress of auto negotiation. - Print link status (speed, dupex) upon first usage. Signed-off-by: Stefan Roese <sr@denx.de> Cc: Amit Virdi <amit.virdi@st.com> Cc: Vipin Kumar <vipin.kumar@st.com> Cc: Joe Hershberger <joe.hershberger@gmail.com> Acked-by: Joe Hershberger <joe.hershberger@gmail.com>
Diffstat (limited to 'drivers/net/designware.h')
-rw-r--r--drivers/net/designware.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/designware.h b/drivers/net/designware.h
index 40020bf26b..d668f8fbf0 100644
--- a/drivers/net/designware.h
+++ b/drivers/net/designware.h
@@ -240,6 +240,7 @@ struct dw_eth_dev {
u32 tx_currdescnum;
u32 rx_currdescnum;
u32 phy_configured;
+ int link_printed;
u32 padding;
struct dmamacdescr tx_mac_descrtable[CONFIG_TX_DESCR_NUM];
OpenPOWER on IntegriCloud