ubuntu7.1下无线网卡irq冲突
Posted on 一月 7th, 2008 in linux笔记 | 2 Comments »
在安装界面中无线网卡能很好的使用。但是安装好系统后,无线网卡无法使用,在“硬件信息”中都能正确识别我的无线网卡。
发现网卡的irq中断号与acpi电源管理的irq中断号有冲突。
用dmesg命令查看:
[ 29.864000] apm: BIOS version 1.2 Flags 0×07 (Driver version 1.16ac)
[ 29.864000] apm: overridden by ACPI.
[ 31.680000] [drm] Initialized drm 1.1.0 20060810
[ 31.700000] ACPI: PCI Interrupt 0000:01:00.0[A] -> Link [LNKA] -> GSI 10 (level, low) -> IRQ 10
[ 31.704000] [drm] Initialized radeon 1.27.0 20060524 on minor 0
[ 32.136000] No dock devices found.
[ 32.992000] agpgart: Found an AGP 2.0 compliant device at 0000:00:00.0.
[ 32.992000] agpgart: Putting AGP V2 device at 0000:00:00.0 into 4x mode
[ 32.992000] agpgart: Putting AGP V2 device at 0000:01:00.0 into 4x mode
[ 33.248000] input: Power Button (FF) as /class/input/input4
[ 33.248000] ACPI: Power Button (FF) [PWRF]
[ 33.252000] [drm] Setting GART location based on new memory map
[ 33.252000] [drm] writeback test succeeded in 1 usecs
[ 33.288000] input: Power Button (CM) as /class/input/input5
[ 33.288000] ACPI: Power Button (CM) [PWRB]
[ 33.308000] input: Sleep Button (CM) as /class/input/input6
[ 33.308000] ACPI: Sleep Button (CM) [SLPB]
[ 37.988000] eth0: no IPv6 routers present
[ 64.048000] eth1: resetting device…
[ 64.048000] eth1: uploading firmware…
[ 64.144000] eth1: firmware version: 1.0.4.3
[ 64.144000] eth1: firmware upload complete
[ 65.144000] eth1: no ‘reset complete’ IRQ seen – retrying
[ 66.144000] eth1: no ‘reset complete’ IRQ seen – retrying
[ 66.144000] eth1: interface reset failure
[ 66.144000] prism54: Your card/socket may be faulty, or IRQ line too busy :(
解决方法:
sudo gedit /boot/grub/menu.lst
在启动的核心kernel那行最后加上 acpi=off noapic
acpi=off禁止了一些电源高级管理功能
noapic改变了中断方式
顺便提到:
cat /proc/interrupts 命令察看设备IRQ编号。
在光盘启动安装过程中运行得到下面结果:
CPU0
0: 108119 XT-PIC-XT timer
1: 808 XT-PIC-XT i8042
2: 0 XT-PIC-XT cascade
5: 444 XT-PIC-XT CMI8738
6: 7 XT-PIC-XT floppy
7: 0 XT-PIC-XT parport0
8: 3 XT-PIC-XT rtc
9: 1 XT-PIC-XT acpi
10: 8636 XT-PIC-XT uhci_hcd:usb2, prism54pci
11: 60133 XT-PIC-XT uhci_hcd:usb1, radeon@pci:0000:01:00.0, eth0
12: 70179 XT-PIC-XT i8042
14: 211 XT-PIC-XT libata
15: 9897 XT-PIC-XT libata
NMI: 0
LOC: 0
ERR: 0
MIS: 0
在安装后系统中运行后得到以下结果:
CPU0
0: 32808 XT-PIC-XT timer
1: 150 XT-PIC-XT i8042
2: 0 XT-PIC-XT cascade
5: 368 XT-PIC-XT CMI8738
6: 5 XT-PIC-XT floppy
7: 0 XT-PIC-XT parport0
8: 3 XT-PIC-XT rtc
9: 1 XT-PIC-XT acpi
10: 1 XT-PIC-XT uhci_hcd:usb2, eth1
11: 41718 XT-PIC-XT uhci_hcd:usb1, eth0, radeon@pci:0000:01:00.0
12: 4895 XT-PIC-XT i8042
14: 8205 XT-PIC-XT libata
15: 5326 XT-PIC-XT libata
NMI: 0
LOC: 0
ERR: 0
MIS: 0
差别在irq10的设备,前者认出了prism54pci,后者只是eth1
虽然一些事例证明这个方法能解决irq冲突的问题,但是在我的机器上并没有解决。
另外,当acpi=off noapic加入后,系统关机出现问题,不能自动断电。
(未完待续)