* [U-Boot] [PATCH] tsec: Force TBI PHY to 1000Mbps full duplex in SGMII mode
@ 2009-11-03 23:52 Peter Tyser
2009-11-04 17:17 ` Peter Tyser
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Peter Tyser @ 2009-11-03 23:52 UTC (permalink / raw)
To: u-boot
In SGMII mode the link between a processor's internal TBI PHY and an
external PHY should always be 1000Mbps, full duplex. Also, the SGMII
interface between an internal TBI PHY and external PHY does not
support in-band auto-negotation.
Previously, when configured for SGMII mode a TBI PHY would attempt to
restart auto-negotation during initializtion. This auto-negotation
between a TBI PHY and external PHY would fail and result in unusable
ethernet operation.
Forcing the TBI PHY and and external PHY to link at 1000Mbps full duplex
in SGMII mode resolves this issue of auto-negotation failing.
Note that 10Mbps and 100Mbps operation is still possible on the external
side of the external PHY even when SGMII is operating at 1000Mbps.
The SGMII interface still operates at 1000Mbps, but each byte of data
is repeated 100 or 10 times for 10/100Mbps and the external PHY handles
converting this data stream into proper 10/100Mbps signalling.
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
---
In-band SGMII auto-negotiation doesn't work according to a lengthy
discussion with a Freescale FAE and the AN3869 SGMII appnote. XES's
MPC8572 and MPC8640 boards need this patch in order to use ethernet. These
boards generally use SGMII to connect to an BCM5482S PHY which has
an external gigabit-capable copper or fiber interface.
Some of Freescale's reference platforms have an SGMII riser card - any
idea how those function when using auto-negotiation? Do they function?
Are the really using SGMII, or are they using 1000 Base-X?
Some of the info in the manuals is misleading/confusing so any comments
are more than welcome from Freescalers:)
Thanks,
Peter
drivers/net/tsec.c | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/drivers/net/tsec.c b/drivers/net/tsec.c
index 3f74118..cff5d38 100644
--- a/drivers/net/tsec.c
+++ b/drivers/net/tsec.c
@@ -276,12 +276,13 @@ uint tsec_local_mdio_read(volatile tsec_t *phyregs, uint phyid, uint regnum)
| TBIANA_FULL_DUPLEX \
)
+/* Force the TBI PHY into 1000Mbps full duplex when in SGMII mode */
#define TBICR_SETTINGS ( \
TBICR_PHY_RESET \
- | TBICR_ANEG_ENABLE \
| TBICR_FULL_DUPLEX \
| TBICR_SPEED1_SET \
)
+
/* Configure the TBI for SGMII operation */
static void tsec_configure_serdes(struct tsec_private *priv)
{
--
1.6.2.1
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [U-Boot] [PATCH] tsec: Force TBI PHY to 1000Mbps full duplex in SGMII mode
2009-11-03 23:52 [U-Boot] [PATCH] tsec: Force TBI PHY to 1000Mbps full duplex in SGMII mode Peter Tyser
@ 2009-11-04 17:17 ` Peter Tyser
2009-12-16 15:48 ` Peter Tyser
2010-01-27 7:59 ` Ben Warren
2 siblings, 0 replies; 4+ messages in thread
From: Peter Tyser @ 2009-11-04 17:17 UTC (permalink / raw)
To: u-boot
On Tue, 2009-11-03 at 17:52 -0600, Peter Tyser wrote:
> In SGMII mode the link between a processor's internal TBI PHY and an
> external PHY should always be 1000Mbps, full duplex. Also, the SGMII
> interface between an internal TBI PHY and external PHY does not
> support in-band auto-negotation.
>
> Previously, when configured for SGMII mode a TBI PHY would attempt to
> restart auto-negotation during initializtion. This auto-negotation
> between a TBI PHY and external PHY would fail and result in unusable
> ethernet operation.
>
> Forcing the TBI PHY and and external PHY to link at 1000Mbps full duplex
> in SGMII mode resolves this issue of auto-negotation failing.
>
> Note that 10Mbps and 100Mbps operation is still possible on the external
> side of the external PHY even when SGMII is operating at 1000Mbps.
> The SGMII interface still operates at 1000Mbps, but each byte of data
> is repeated 100 or 10 times for 10/100Mbps and the external PHY handles
> converting this data stream into proper 10/100Mbps signalling.
>
> Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
> ---
> In-band SGMII auto-negotiation doesn't work according to a lengthy
> discussion with a Freescale FAE and the AN3869 SGMII appnote. XES's
> MPC8572 and MPC8640 boards need this patch in order to use ethernet. These
> boards generally use SGMII to connect to an BCM5482S PHY which has
> an external gigabit-capable copper or fiber interface.
I meant to say "XES's MPC8572 boards need this patch in order to use
ethernet, and I assume our future 4080-based boards will too." This
change shouldn't have any impact on 8640-based boards.
Peter
^ permalink raw reply [flat|nested] 4+ messages in thread
* [U-Boot] [PATCH] tsec: Force TBI PHY to 1000Mbps full duplex in SGMII mode
2009-11-03 23:52 [U-Boot] [PATCH] tsec: Force TBI PHY to 1000Mbps full duplex in SGMII mode Peter Tyser
2009-11-04 17:17 ` Peter Tyser
@ 2009-12-16 15:48 ` Peter Tyser
2010-01-27 7:59 ` Ben Warren
2 siblings, 0 replies; 4+ messages in thread
From: Peter Tyser @ 2009-12-16 15:48 UTC (permalink / raw)
To: u-boot
On Tue, 2009-11-03 at 17:52 -0600, Peter Tyser wrote:
> In SGMII mode the link between a processor's internal TBI PHY and an
> external PHY should always be 1000Mbps, full duplex. Also, the SGMII
> interface between an internal TBI PHY and external PHY does not
> support in-band auto-negotation.
>
> Previously, when configured for SGMII mode a TBI PHY would attempt to
> restart auto-negotation during initializtion. This auto-negotation
> between a TBI PHY and external PHY would fail and result in unusable
> ethernet operation.
>
> Forcing the TBI PHY and and external PHY to link at 1000Mbps full duplex
> in SGMII mode resolves this issue of auto-negotation failing.
>
> Note that 10Mbps and 100Mbps operation is still possible on the external
> side of the external PHY even when SGMII is operating at 1000Mbps.
> The SGMII interface still operates at 1000Mbps, but each byte of data
> is repeated 100 or 10 times for 10/100Mbps and the external PHY handles
> converting this data stream into proper 10/100Mbps signalling.
>
> Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
> ---
> In-band SGMII auto-negotiation doesn't work according to a lengthy
> discussion with a Freescale FAE and the AN3869 SGMII appnote. XES's
> MPC8572 and MPC8640 boards need this patch in order to use ethernet. These
> boards generally use SGMII to connect to an BCM5482S PHY which has
> an external gigabit-capable copper or fiber interface.
>
> Some of Freescale's reference platforms have an SGMII riser card - any
> idea how those function when using auto-negotiation? Do they function?
> Are the really using SGMII, or are they using 1000 Base-X?
>
> Some of the info in the manuals is misleading/confusing so any comments
> are more than welcome from Freescalers:)
Ping...
^ permalink raw reply [flat|nested] 4+ messages in thread
* [U-Boot] [PATCH] tsec: Force TBI PHY to 1000Mbps full duplex in SGMII mode
2009-11-03 23:52 [U-Boot] [PATCH] tsec: Force TBI PHY to 1000Mbps full duplex in SGMII mode Peter Tyser
2009-11-04 17:17 ` Peter Tyser
2009-12-16 15:48 ` Peter Tyser
@ 2010-01-27 7:59 ` Ben Warren
2 siblings, 0 replies; 4+ messages in thread
From: Ben Warren @ 2010-01-27 7:59 UTC (permalink / raw)
To: u-boot
Hi Peter,
Peter Tyser wrote:
> In SGMII mode the link between a processor's internal TBI PHY and an
> external PHY should always be 1000Mbps, full duplex. Also, the SGMII
> interface between an internal TBI PHY and external PHY does not
> support in-band auto-negotation.
>
> Previously, when configured for SGMII mode a TBI PHY would attempt to
> restart auto-negotation during initializtion. This auto-negotation
> between a TBI PHY and external PHY would fail and result in unusable
> ethernet operation.
>
> Forcing the TBI PHY and and external PHY to link at 1000Mbps full duplex
> in SGMII mode resolves this issue of auto-negotation failing.
>
> Note that 10Mbps and 100Mbps operation is still possible on the external
> side of the external PHY even when SGMII is operating at 1000Mbps.
> The SGMII interface still operates at 1000Mbps, but each byte of data
> is repeated 100 or 10 times for 10/100Mbps and the external PHY handles
> converting this data stream into proper 10/100Mbps signalling.
>
> Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
> ---
Applied to net repo.
thanks,
Ben
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2010-01-27 7:59 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-11-03 23:52 [U-Boot] [PATCH] tsec: Force TBI PHY to 1000Mbps full duplex in SGMII mode Peter Tyser
2009-11-04 17:17 ` Peter Tyser
2009-12-16 15:48 ` Peter Tyser
2010-01-27 7:59 ` Ben Warren
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox