Hello, Sir(ervery one):

       I modified linux-2.6.20.11/drivers/net/Kconfig, just let it build driver for cs89x0, but resulted in worse outcomes.

       HoHo_Zhao


#
#    Ethernet
#

config CS89x0
    tristate "CS89x0 support"
   
    #depends on NET_PCI && (ISA || MACH_IXDP2351 || ARCH_IXDP2X01 || ARCH_PNX010X)
    depends on NET_ETHERNET
   
    ---help---
      Support for CS89x0 chipset based Ethernet cards. If you have a
      network (Ethernet) card of this type, say Y and read the
      Ethernet-HOWTO, available from
      <http://www.tldp.org/docs.html#howto> as well as
      <file:Documentation/networking/cs89x0.txt>.

      To compile this driver as a module, choose M here and read
      <file:Documentation/networking/net-modules.txt>.  The module will be
      called cs89x0.


+++++++++++++++++++++++ OUTCOMES +++++++++++++++++++++++++


Uncompressing Linux.............................................................                                                                                
..... done, booting the kernel.                               

Linux version 2.6.20.11 (HoHo@MIIX.honology.cn) (gcc version 3.4.6) #1 PREEMPT Fri May 11 19:14:39 CST 2007

CPU: ARM920T [41129200] revision 0 (ARMv4T), cr=c0007177

Machine: Motorola MX1ADS

Memory policy: ECC disabled, Data cache writeback

CPU0: D VIVT write-back cache

CPU0: I cache: 16384 bytes, associativity 64, 32 byte lines, 8 sets

CPU0: D cache: 16384 bytes, associativity 64, 32 byte lines, 8 sets

Built 1 zonelists.  Total pages: 12192                                      

Kernel command line: root=/dev/msdk mem=48M                                           

PID hash table entries: 256 (order: 8, 1024 bytes)                                                  

Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)

Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)

Memory: 48MB = 48MB total                         

Memory: 46568KB available (1820K code, 191K data, 84K init)

Mount-cache hash table entries: 512                                   

CPU: Testing write buffer coherency: ok                                       

NET: Registered protocol family 16                                  

NET: Registered protocol family 2                                 

IP route cache hash table entries: 1024 (order: 0, 4096 bytes)

TCP established hash table entries: 2048 (order: 1, 8192 bytes)

TCP bind hash table entries: 1024 (order: 0, 4096 bytes)                                                        

TCP: Hash tables configured (established 2048 bind 1024)                                                        

TCP reno registered                   

NetWinder Floating Point Emulator V0.97 (extended precision)

JFFS2 version 2.2. (NAND) (C) 2001-2006 Red H                                            

io scheduler noop registered                            

io scheduler deadline registered                                

io scheduler cfq registered (default)  

Serial: IMX driver

imx-uart.0: ttySMX0 at MMIO 0xe0006000 (irq = 30) is a IMX

imx-uart.1: ttySMX1 at MMIO 0xe0007000 (irq = 24) is a IMX

loop: loaded (max 8 devices)                            

cs89x0:cs89x0_probe(0x0)                        

Unable to handle kernel NULL pointer dereference at virtual address 0000030a

pgd = c0004000              

[0000030a] *pgd=00000000                        

Internal error: Oops: 5 [#1]                            

Modules linked in:                  

CPU: 0      

pc : [<c0136398>]    lr : [<c0015bd0>]    Not tai

sp : c028deb4  ip : c028dec4  fp : c028dec0                                           

r10: c001a2c0  r9 : 00000000  r8 : 00000300                                           

r7 : c036ac00  r6 : 00000000  r5 : c036ae60  r4 : 00000300                                                          

r3 : 00000001  r2 : c028c000  r1 : 0000000a  r0 : 00000300                                                          

Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  Segment kernel

Control: C000717F

Table: 08004000  DAC: 00000017

Process swapper (pid: 1, stack limit = 0xc028c250)                                                  

Stack: (0xc028deb4 to 0xc028e000)                                 

dea0:                                              c028df4c c028dec4 c0015bd0

dec0: c013639c c036ac03 0000000a c028df4c ffffffff 00000002 c036ac00 ffffffff

dee0: c028df30 c028def0 c01109e4 c01101cc 0000000a ffffffff ffffffff 00000002

df00: 3fc953ff 00000000 c036ac00 00000000 00000000 00000001 00000000 c001a2c0

df20: c028df3c c028df30 c001bfdc c036ac00 00000000 00000000 00000001 c001a2c0

df40: c028df6c c028df50 c0016398 c0015af4 c001bfa4 00000001 00000000 c001a7e4

df60: c028df88 c028df70 c00156e8 c0016318 00000001 00000000 c001a25c c028dfa0

df80: c028df8c c00157a4 c00156b4 00000000 c0                                           

dfa0: c001572c 00000001 c001dcc4 c0034168 00000000 00000000 c001d06c c003acd4

dfc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

dfe0: 00000000 00000000 00000000 c028dff8 c003acd4 c001d07c ebff8abd e2507000

Backtrace:          

Function entered at [<c013638c>] from [<c0015bd0>]

Function entered at [<c0015ae4>] from [<c0016398>]

Function entered at [<c0016308>] from [<c00156e8>]

 r7 = C001A7E4  r6 = 00000000  r5 = 00000001  r4 = C001BFA4

Function entered at [<c00156a4>] from [<c00157a4>]

 r6 = C001A25C  r5 = 00000000  r4 = 00000001

Function entered at [<c001571c>] from [<c001d10c>]

 r5 = C028C000  r4 = 00000000

Function entered at [<c001d06c>] from [<c003acd4>]

Code: e89daff0 e1a0c00d e92dd800 e24cb004 (e19000b1)

 <0>Kernel panic - not syncing: Attempted to kill init!