[Top] [All Lists]

Re: tx49 Ether problems

To: Geoff Levand <>
Subject: Re: tx49 Ether problems
From: Sergei Shtylyov <>
Date: Sun, 16 Apr 2006 00:52:39 +0400
Cc: Atsushi Nemoto <>,,
In-reply-to: <>
Organization: MontaVista Software Inc.
Original-recipient: rfc822;
References: <> <>
User-agent: Mozilla/5.0 (X11; U; Linux i686; rv:1.7.2) Gecko/20040803

Geoff Levand wrote:

On Fri, 14 Apr 2006 08:38:00 -0700, Geoff Levand
<> wrote:

I seem to get a lot of problems with an nfs root fs
on tx4937 board.  I haven't looked at it closely yet,
but I guess its some problem with the ne2000 driver.
I wanted to know if you know anything about this.

Please look at:

With a quick glance of ne.c, it seems ei_status.stop_page should be
changed to 0x60 on the board.  Please confirm its value.

Yes, this seems to fix the problem.

---      2006-04-14 15:54:41.000000000 -0700
+++   2006-04-14 16:27:51.000000000 -0700
@@ -140,7 +140,8 @@
 #define NE1SM_START_PG 0x20    /* First page of TX buffer */
 #define NE1SM_STOP_PG  0x40    /* Last page +1 of RX ring */
 #define NESM_START_PG  0x40    /* First page of TX buffer */
-#define NESM_STOP_PG   0x80    /* Last page +1 of RX ring */
+#define NESM_8_STOP_PG 0x60    /* Last page +1 of RX ring, RTL8019 8 bit mode 
+#define NESM_STOP_PG   0x80    /* Last page +1 of RX ring */

 #if defined(CONFIG_PLAT_MAPPI)
 #  define DCR_VAL 0x4b
@@ -516,6 +517,7 @@
        ei_status.tx_start_page = start_page;
        ei_status.stop_page = stop_page;
 #if defined(CONFIG_TOSHIBA_RBTX4927) || defined(CONFIG_TOSHIBA_RBTX4938)
+       ei_status.stop_page = NESM_8_STOP_PG;
        wordlength = 1;

This is really strange place for that #ifdef -- 'wordlength' is determined much earlier in this function (and stop_page is set to 0x40 for 8-bit case), shouldn't #ifdef be moved instead?

WBR, Sergei

<Prev in Thread] Current Thread [Next in Thread>