天嵌 ARM开发社区

 找回密码
 注册
查看: 6595|回复: 5

网卡驱动问题

[复制链接]
ztm521314 发表于 2010-11-22 20:39:45 | 显示全部楼层 |阅读模式
本帖最后由 ztm521314 于 2010-11-22 20:42 编辑

我的环境是RedHat9。内核2.6.31.14,网卡dm9000。网卡驱动出现出错情况是
Starting application at 0x30008000 ...
Uncompressing Linux.............................................................
............................................................ done, booting the k
ernel.
Linux version 2.6.31 (root@ztm) (gcc version 3.4.5) #6 Sun Nov 14 22:15:22 CST 2
010
CPU: ARM920T [41129200] revision 0 (ARMv4T), cr=c0007177
CPU: VIVT data cache, VIVT instruction cache
Machine: SMDK2440
Warning: bad configuration page, trying to continue
Memory policy: ECC disabled, Data cache writeback
CPU S3C2440A (id 0x32440001)
S3C24XX Clocks, (c) 2004 Simtec Electronics
S3C244X: core 405.600 MHz, memory 101.400 MHz, peripheral 50.700 MHz
CLOCK: Slow mode (1.500 MHz), fast, MPLL on, UPLL on
Built 1 zonelists in Zone order, mobility grouping off.  Total pages: 4064
Kernel command line: root=/dev/nfs rw nfsroot=192.168.1.31:/home/sun/nfs noinitr
d init=linuxrc console=ttySAC0 ip=192.168.1.1
PID hash table entries: 64 (order: 6, 256 bytes)
Dentry cache hash table entries: 2048 (order: 1, 8192 bytes)
Inode-cache hash table entries: 1024 (order: 0, 4096 bytes)
Memory: 16MB = 16MB total
Memory: 12256KB available (3468K code, 318K data, 140K init, 0K highmem)
NR_IRQS:85
irq: clearing pending ext status 00080000
irq: clearing subpending status 00000003
irq: clearing subpending status 00000002
Console: colour dummy device 80x30
console [ttySAC0] enabled
Calibrating delay loop... 202.34 BogoMIPS (lpj=505856)
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
NET: Registered protocol family 16
S3C Power Management, Copyright 2004 Simtec Electronics
S3C2440: Initialising architecture
S3C2440: IRQ Support
S3C24XX DMA Driver, (c) 2003-2004,2006 Simtec Electronics
DMA channel 0 at c1808000, irq 33
DMA channel 1 at c1808040, irq 34
DMA channel 2 at c1808080, irq 35
DMA channel 3 at c18080c0, irq 36
S3C244X: Clock Support, DVS off
bio: create slab <bio-0> at 0
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
s3c-i2c s3c2440-i2c: slave address 0x10
s3c-i2c s3c2440-i2c: bus frequency set to 99 KHz
s3c-i2c s3c2440-i2c: i2c-0: S3C I2C adapter
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 512 (order: 0, 4096 bytes)
TCP bind hash table entries: 512 (order: -1, 2048 bytes)
TCP: Hash tables configured (established 512 bind 512)
TCP reno registered
NET: Registered protocol family 1
NetWinder Floating Point Emulator V0.97 (extended precision)
JFFS2 version 2.2. (NAND) (SUMMARY)  漏 2001-2006 Red Hat, Inc.
ROMFS MTD (C) 2007 Red Hat, Inc.
msgmni has been set to 23
io scheduler noop registered
io scheduler anticipatory registered (default)
io scheduler deadline registered
io scheduler cfq registered
Console: switching to colour frame buffer device 30x40
fb0: s3c2410fb frame buffer device
lp: driver loaded but no devices found
ppdev: user-space parallel port driver
Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
s3c2440-uart.0: s3c2410_serial0 at MMIO 0x50000000 (irq = 70) is a S3C2440
s3c2440-uart.1: s3c2410_serial1 at MMIO 0x50004000 (irq = 73) is a S3C2440
s3c2440-uart.2: s3c2410_serial2 at MMIO 0x50008000 (irq = 76) is a S3C2440
brd: module loaded
loop: module loaded
Uniform Multi-Platform E-IDE driver
ide-gd driver 1.18
ide-cd driver 5.00
dm9000 Ethernet Driver, V1.31
Now use the default MAC address: 10:23:45:67:89:ab
eth0: dm9000e at c186e000,c1872004 IRQ 51 MAC: 10:23:45:67:89:ab (ztm)
S3C24XX NAND Driver, (c) 2004 Simtec Electronics
s3c24xx-nand s3c2440-nand: Tacls=3, 29ns Twrph0=7 69ns, Twrph1=3 29ns
s3c24xx-nand s3c2440-nand: NAND soft ECC
NAND device: Manufacturer ID: 0xec, Chip ID: 0xda (Samsung NAND 256MiB 3,3V 8-bi
t)
Scanning device for bad blocks
Creating 3 MTD partitions on "NAND 256MiB 3,3V 8-bit":
0x000000040000-0x000010000000 : "ztm_uboot"
0x000000200000-0x000000500000 : "ztm_kernel"
0x000000500000-0x000010000000 : "ztm_rootfs"
usbmon: debugfs is not available
ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
s3c2410-ohci s3c2410-ohci: S3C24XX OHCI
s3c2410-ohci s3c2410-ohci: new USB bus registered, assigned bus number 1
s3c2410-ohci s3c2410-ohci: irq 42, io mem 0x49000000
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 2 ports detected
usbcore: registered new interface driver libusual
usbcore: registered new interface driver usbserial
USB Serial support registered for generic
usbcore: registered new interface driver usbserial_generic
usbserial: USB Serial Driver core
USB Serial support registered for FTDI USB Serial Device
usbcore: registered new interface driver ftdi_sio
ftdi_sio: v1.5.0:USB FTDI Serial Converters Driver
USB Serial support registered for pl2303
usbcore: registered new interface driver pl2303
pl2303: Prolific PL2303 USB to serial adaptor driver
mice: PS/2 mouse device common for all mice
S3C24XX RTC, (c) 2004,2006 Simtec Electronics
S3C2410 Watchdog Timer, (c) 2004 Simtec Electronics
s3c2410-wdt s3c2410-wdt: watchdog inactive, reset disabled, irq enabled
Advanced Linux Sound Architecture Driver Version 1.0.20.
ALSA device list:
  No soundcards found.
TCP cubic registered
NET: Registered protocol family 17
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
dm9000 dm9000.0: WARNING: no IRQ resource flags set.
eth0: link up, 100Mbps, full-duplex, lpa 0xC5E1
IP-Config: Guessing netmask 255.255.255.0
IP-Config: Complete:
     device=eth0, addr=192.168.1.1, mask=255.255.255.0, gw=255.255.255.255,
     host=192.168.1.1, domain=, nis-domain=(none),
     bootserver=255.255.255.255, rootserver=192.168.1.31, rootpath=
Looking up port of RPC 100003/2 on 192.168.1.31
------------[ cut here ]------------
WARNING: at net/sched/sch_generic.c:246 dev_watchdog+0x19c/0x28c()
NETDEV WATCHDOG: eth0 (dm9000): transmit queue 0 timed out

Modules linked in:
Backtrace:
[<c002f90c>] (dump_backtrace+0x0/0x104) from [<c002fa28>] (dump_stack+0x18/0x1c)

r7:c038fe30 r6:c0257708 r5:c036e470 r4:000000f6
[<c002fa10>] (dump_stack+0x0/0x1c) from [<c004bc60>] (warn_slowpath_common+0x4c/
0x64)
[<c004bc14>] (warn_slowpath_common+0x0/0x64) from [<c004bcc4>] (warn_slowpath_fm
t+0x30/0x38)
r7:00000000 r6:00000001 r5:00000001 r4:c0d26800
[<c004bc94>] (warn_slowpath_fmt+0x0/0x38) from [<c0257708>] (dev_watchdog+0x19c/
0x28c)
r3:c0d26800 r2:c036e434
[<c025756c>] (dev_watchdog+0x0/0x28c) from [<c00552c8>] (run_timer_softirq+0x168
/0x1d4)
r8:c038fec0 r7:c025756c r6:00000100 r5:c03c1e40 r4:c038e000
[<c0055160>] (run_timer_softirq+0x0/0x1d4) from [<c0050520>] (__do_softirq+0x8c/
0x140)
[<c0050494>] (__do_softirq+0x0/0x140) from [<c0050800>] (irq_exit+0x44/0x4c)
[<c00507bc>] (irq_exit+0x0/0x4c) from [<c002b070>] (_text+0x70/0x84)
[<c002b000>] (_text+0x0/0x84) from [<c002ba04>] (__irq_svc+0x24/0xa0)
Exception stack(0xc038ff58 to 0xc038ffa0)
ff40:                                                       c0336888 ffffffff
ff60: f410000c 80000013 c038e000 c03b0ccc c0025e0c c0391b60 30023ed0 41129200
ff80: 30023e68 c038ffac c038ffa0 c038ffa0 c002ca40 c002ca4c 80000013 ffffffff
r6:00004000 r5:f4000000 r4:ffffffff
[<c002ca00>] (default_idle+0x0/0x54) from [<c002cab8>] (cpu_idle+0x64/0x9c)
[<c002ca54>] (cpu_idle+0x0/0x9c) from [<c02bfa0c>] (rest_init+0x58/0x6c)
r4:c03c4658
[<c02bf9b4>] (rest_init+0x0/0x6c) from [<c0008ae4>] (start_kernel+0x27c/0x2e4)
[<c0008868>] (start_kernel+0x0/0x2e4) from [<30008040>] (0x30008040)
r6:c0025e08 r5:c03b0d38 r4:c0007175
---[ end trace 7a5c32f74e8e9eb1 ]---
rpcbind: server 192.168.1.31 not responding, timed out
Root-NFS: Unable to get nfsd port number from server, using default
Looking up port of RPC 100005/1 on 192.168.1.31
看红色部分
请高手给看下

评分

参与人数 1 +15 收起 理由
embedsky_lxt + 15

查看全部评分

 楼主| ztm521314 发表于 2010-11-23 11:33:35 | 显示全部楼层
经过查找,小弟终于找到了问题dm9000 dm9000.0: WARNING: no IRQ resource flags set.
原因原来是没设中断
回去查看把arch/armmach-s3c2440/mach-smdk2440.c文件中的
[2] = {  
             .start = IRQ_EINT7,   
             .end = IRQ_EINT7,  
             .flags = IORESOURCE_IRQ,  
      }  
修改为
[2] = {
.start = IRQ_EINT7, /* 中断号*/
.end = IRQ_EINT7,
.flags = IORESOURCE_IRQ | IRQF_TRIGGER_RISING
}
machoe 发表于 2010-11-23 14:53:53 | 显示全部楼层
好帖啊~~~~~~~~~~~~
天嵌_support1 发表于 2010-11-23 15:14:52 | 显示全部楼层
2# ztm521314


有始有终。好网友呀。
有个别网友抛出问题后,找到就解决方案就再也不结贴......
 楼主| ztm521314 发表于 2010-11-23 16:33:17 | 显示全部楼层
4# embedsky_lxt
 楼主| ztm521314 发表于 2010-11-23 16:35:25 | 显示全部楼层
4# embedsky_lxt


谢谢embedsky_lxt。。。小弟向您多学习。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

i.MX8系列ARM cortex A53 M4 工控板上一条 /1 下一条

Archiver|手机版|小黑屋|天嵌 嵌入式开发社区 ( 粤ICP备11094220号 )

GMT+8, 2024-5-18 13:12 , Processed in 1.062500 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表