RX problem in ibm_newemac driver

Previous thread: Re: net_device_ops support in bridging and fec_mpc52xx.c by David Miller on Tuesday, March 10, 2009 - 10:19 am. (2 messages)

Next thread: [PATCH] wimax: fix i2400m printk formats by Inaky Perez-Gonzalez on Tuesday, March 10, 2009 - 11:48 am. (2 messages)
From: Felix Radensky
Date: Tuesday, March 10, 2009 - 12:50 pm

Hi,

I'm experiencing RX problem on custom board based on AMCC
405EXr processor. Channel 0 of EMAC is connected to 10/100
Micrel KSZ8041NL PHY in MII mode. Ethernet works fine in
u-boot (version 2009.01). In Linux (2.6.27) Ethernet works fine
as well if EMAC was initialized in u-boot. It is enough to send
ping from u-boot (even to non-existing host) to make things work
in linux. But if u-boot takes kernel and ramdisk images from flash
and does not initialize EMAC only TX side works in linux.

I can see that TX counters are incremented when pinging from
EMAC side, but RX counters remain zero.  RX error counter
in PHY is zero as well.  I've enabled debugging in EMAC
driver and verified that RX EOB interrupt is not triggered.
FER register in RGMII bridge is properly configured for MII
mode on channel 0.  I've tried to dump EMAC registers using
ethtool and got machine check exception.

I don't know what else could be done to identify the source of
the problem. Any tips would be greatly appreciated.

Thanks.

Felix.
--

From: Benjamin Herrenschmidt
Date: Tuesday, March 10, 2009 - 1:50 pm

You should CC linuxppc-dev where you are more likely to find people to

I don't have a 405EXr here, but it smells like the old reset problem
when the link is down. Maybe we are missing code to force clocks on
405EXr when there's no link ?

Ben.


--

From: Felix Radensky
Date: Tuesday, March 10, 2009 - 3:14 pm

I've sent a message to linuxppc-dev yesterday, but didn't get any reply 

Yes, seems logical. U-boot has code to enable and disable loopback clock
for 440SPE, 440EPX,440GRX,405EX, 460EX and 460GT.

I can test patches on my board. Alternatively, I can try something myself
if you can provide some guidance. I guess you are referring to the code 
using
EMAC_FTR_440GX_PHY_CLK_FIX and EMAC_FTR_440EP_PHY_CLK_FIX.

Thanks.

Felix.

--

From: Benjamin Herrenschmidt
Date: Tuesday, March 10, 2009 - 3:57 pm

It would be nice if you could try something as I don't have anything to
test here.

And yes, it's probably one of those 2 fixes that need to be extended.

I'll have a look later today if I can find the 405EXr user manual and
give you more precise guidance.

Cheers,
Ben.


--

Previous thread: Re: net_device_ops support in bridging and fec_mpc52xx.c by David Miller on Tuesday, March 10, 2009 - 10:19 am. (2 messages)

Next thread: [PATCH] wimax: fix i2400m printk formats by Inaky Perez-Gonzalez on Tuesday, March 10, 2009 - 11:48 am. (2 messages)