Thanks for the help from Spence. I applied patch, it's partially
working. Actually I set REDUCED flag on interface, so the real problem
should phy register 20. I originally I set it to 0x0ce2, the mac's
speed is wrong. Thank you very much!<br>
<br>
But it's only partially working now. I can ping out from my customized
board to another PC NIC, but cannot ping from PC to my board. I noticed
tsec_halt is call after calling ping, so maccfg1 is retored back to
disable tx/rx, and phy is shutdown. Could this be the reason? I tried
to remove tsec_halt, things become worse. Beside I can only ping one
way, now it's only pingable from my board for the first time. Anyone
has solution for this?<br>
<br>
Regards,<br>
<br>
- Reeve<br><br><div><span class="gmail_quote">On 10/27/06, <b class="gmail_sendername">Spence Nick-rxtd10</b> &lt;<a href="mailto:Nick.Spence@freescale.com">Nick.Spence@freescale.com</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br>Try the following that was submitted as a patch for u-boot but has not<br>yet been integrated:<br><br>[DNX#2006102042000014] Add Marvell Phy and RGMII support to eTSEC setup<br><br>This sets up the eTSEC and the Marvel Phy to support 10M,
<br>100M and 1000M rates when configured in RGMII mode.<br>---<br> drivers/tsec.c |&nbsp;&nbsp;&nbsp;&nbsp;8 ++++----<br> 1 files changed, 4 insertions(+), 4 deletions(-)<br><br>diff --git a/drivers/tsec.c b/drivers/tsec.c index<br>7ec565c..6cc6444 100644
<br>--- a/drivers/tsec.c<br>+++ b/drivers/tsec.c<br>@@ -583,11 +583,10 @@ static void adjust_link(struct eth_devic<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;regs-&gt;maccfg2
=<br>((regs-&gt;maccfg2&amp;~(MACCFG2_IF))<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|
MACCFG2_MII);<br><br>-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
/* If We're in reduced mode, we need<br>-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*
to say whether we're 10 or 100 MB.<br>+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
/* Set R100 bit in all modes although<br>+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*
it is only used in RGMII mode<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
*/<br>-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
if ((priv-&gt;speed == 100)<br>-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&amp;&amp; (priv-&gt;flags &amp; TSEC_REDUCED))<br>+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
if (priv-&gt;speed == 100)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;regs-&gt;ecntrl
|= ECNTRL_R100;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;regs-&gt;ecntrl
&amp;= ~(ECNTRL_R100);<br>@@ -785,6 +784,7 @@ struct phy_info phy_info_M88E1111S = {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{0x1d, 0x5, NULL},<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{0x1e, 0x0, NULL},<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{0x1e, 0x100, NULL},<br>+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
{0x14, 0x0cd2, NULL}, /* Add delay to RGMII TX and RX */<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{MIIM_GBIT_CONTROL,
MIIM_GBIT_CONTROL_INIT, NULL},<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{MIIM_ANAR,
MIIM_ANAR_INIT, NULL},<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{MIIM_CONTROL,
MIIM_CONTROL_RESET, NULL},<br>--<br><a href="http://1.4.2.3">1.4.2.3</a><br><br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; From: <a href="mailto:u-boot-users-bounces@lists.sourceforge.net">u-boot-users-bounces@lists.sourceforge.net</a><br>[mailto:<a href="mailto:u-boot-users-bounces@lists.sourceforge.net">
u-boot-users-bounces@lists.sourceforge.net</a>] On Behalf Of Reeve<br>Yang<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sent: Thursday, October 26, 2006 7:31 PM<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; To: <a href="mailto:u-boot-users@lists.sourceforge.net">u-boot-users@lists.sourceforge.net
</a><br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Subject: [U-Boot-Users] tsec help<br>&gt;<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Hello,<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; My cpu is MPC8343E with dual tsec, phy is marvell 88E1111S. Now<br>the physical link is up, but I just cannot ping. I printed some debug
<br>message about maccfg1/2 registers:<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =&gt; ping <a href="http://192.168.1.1">192.168.1.1</a><br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; tsec_halt<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Trying TSEC0<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; tsec_halt<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Speed: 100, full duplex
<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TSEC0: maccfg2 = 0x7205<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TSEC0: maccfg1 = 0xf<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Using TSEC0 device<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; tsec_halt<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ping failed; host <a href="http://192.168.1.1">192.168.1.1</a> is not alive<br>
&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; I checked the MAC transmi counter register there are packets<br>sending out, but no packet on the wire. The PHY is hard wired into RGMII<br>to copper mode. Could anyone who has done similiar work point to where
<br>the problem is? Where to look at?<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Regards,<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - Reeve<br><br><br></blockquote></div><br>