[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [microblaze-uclinux] OPB Ethernet Lite sleeping until internal ping



Hi Giulio and others,

We've found the cause of this problem - it arises because the device receives packets before Linux brings up the interface. When the driver the enables interrupts it doesn't check to see if any had already come. The solution is simple - please try the following patch to

linux-2.6.x/drivers/net/xilinx_emaclite/xemaclite_intr.c

Regards,

John

Index: linux-2.6.x-petalogix/drivers/net/xilinx_emaclite/xemaclite_intr.c
===================================================================
--- linux-2.6.x-petalogix/drivers/net/xilinx_emaclite/xemaclite_intr.c (revision 4067) +++ linux-2.6.x-petalogix/drivers/net/xilinx_emaclite/xemaclite_intr.c (revision 4092)
@@ -106,6 +106,6 @@
               XEL_BUFFER_OFFSET, Register);

-    Register = XIo_In32(InstancePtr->BaseAddress + XEL_RSR_OFFSET);
-    Register |= XEL_RSR_RECV_IE_MASK;
+/*    Register = XIo_In32(InstancePtr->BaseAddress + XEL_RSR_OFFSET); */
+    Register = XEL_RSR_RECV_IE_MASK;
     XIo_Out32(InstancePtr->BaseAddress + XEL_RSR_OFFSET, Register);
     XIo_Out32(InstancePtr->BaseAddress + XEL_RSR_OFFSET +


Giulio Mazzoleni wrote:
Hi John,
glad to see I'm not the only one facing this problem.
I've seen this too, and we're looking at a fix. The driver looks correct, and checking the hardware status registers after boot shows interrupts enabled as they should be. It's almost as though the core itself needs an outbound packet before it wakes up. I hope this is not the case. If so, a nasty hack might be for the driver initialisation to send a bogus packet just to wake things up.
Many thanks for your interest and good luck for the fixing!
Sorry for not being of any help to you.

Cheers,
Giulio
___________________________
microblaze-uclinux mailing list
microblaze-uclinux@xxxxxxxxxxxxxx
Project Home Page : http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux
Mailing List Archive : http://www.itee.uq.edu.au/~listarch/microblaze-uclinux/


___________________________
microblaze-uclinux mailing list
microblaze-uclinux@xxxxxxxxxxxxxx
Project Home Page : http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux
Mailing List Archive : http://www.itee.uq.edu.au/~listarch/microblaze-uclinux/