I have a problem with my network card. I have reported the bug here (id 127367) but the developer of sky2 driver thinks that this is a ACPI/BIOS issue. This is his comment: The problem is that many devices are sharing the same interrupt, and the interrupt is getting programmed to edge triggered. You might investigate BIOS settings or it could be an ACPI bug. The relevant lines are in /proc/interrupts: 11: 27 XT-PIC uhci_hcd:usb3, uhci_hcd:usb4, uhci_hcd:usb5, yenta, sdhci:slot0, sdhci:slot1, sdhci:slot2, ohci1394, sky2 In dmesg output: ACPI: setting ELCR to 0200 (from 0c20) The ELCR register is the edge versus level triggered control register. For some reason, ACPI is deciding to set it 0200 which means only IRQ 9 is level triggered. Network devices using NAPI won't work with edge triggered interrupts and shared IRQ's won't work properly with edge triggered interrupts. ---
Stephen's words of wisdom: It is absolutely needed by sky2 and most network devices using NAPI that the IRQ be level triggered. This is usually set in the BIOS, but you may have some control by choosing to build the kernel to use IO-APIC even on single CPU. Often the problem can happen from ACPI bugs because if ACPI doesn't parse the BIOS information correctly, it will misconfigure interrupt routing as well. To tell if you have level triggered look at /proc/interrupts. For the IO-APIC case it tells you directly. For the XT-PIC case it is worse, you have to go looking for a "ELCR" line in the boot log. ELCR is the Edge-Level triggered Control Register. Each bit corresponds to one irq.
Created attachment 85498 [details, diff] 2.6.17-rc2 dmesg taken from other bug
Created attachment 85499 [details] /proc/interrupts from other bug
I'm going to ignore the fact that your XT-PIC interrupts are edge-triggered for now, and see if we can get APIC working. Your dmesg shows: Local APIC disabled by BIOS -- you can enable it with "lapic" Firstly, is a BIOS update available? Which laptop/motherboard is this? To force enable APIC, you can add "lapic" to your kernel boot parameters (found in your bootloader config). Can I see a dmesg dump and /proc/interrupts where you have used this option?
Created attachment 85540 [details] dmesg lapic
Created attachment 85541 [details] /proc/interrupts log with lapic
I already check and my bios is up to date.. my dsdt table compiled without errors. I have a Toshiba M40-298 Laptop. I hope this helps.
Ok, enabling the APIC didn't really do much. Can you please attach your .config?
Created attachment 85564 [details] .config
Ok - it looks like your APIC is either non-existant or totally broken, so we'll have to go back to debugging ACPI's interrupt handling. Please enable CONFIG_ACPI_DEBUG and then post new dmesg logs.
Created attachment 85619 [details] dmesg_debug_acpi
I know this list of requests is getting a little excessive, apologies for that. At least we are making progress. Please test vanilla-sources-2.6.17_rc3, which includes some possible patches for getting sky2 operational with edge triggered interrupts. Please obtain a complete ACPI dump using "acpidump" found in http://ftp.kernel.org/pub/linux/kernel/people/lenb/acpi/utils/pmtools-20051111.tar.gz and attach it to this bug.
Created attachment 85654 [details] ACPI dump with 2.6.16 kernel
Created attachment 85685 [details] ACPI dump with 2.6.17-rc3 kernel Now the driver is worst .. it just hang up as usual but now... it is very very very slow.. it's like a 14k modem or worst.. No problem about the requests Daniel. I just want my NIC to work.. :(
I got the impression from the other bug that with recent kernels (2.6.16 and 2.6.17-rc) the driver was almost entirely useless, i.e. you couldn't even establish a single connection or resolve a hostname. Are you saying that the driver in 2.6.17-rc3 works better, albeit very very slowly overall?
The sky2 works on 2.6.16 but crashs if I try to serve ftp,samba, http..... anything. But with 2.6.16-rX and 2.6.17-RCX I cant even resolve a hostame.. Now with 2.6.17-rc3 it works like 2.6.16 but very slow..
Hi Daniel.. No more news about related to this bug? Thanks
sky2 should be working in 2.6.17-rc4 and next gentoo-sources release, still need to chase up on the edge triggered interrupt stuff...
I am testing now sky2 1.4 and the driver now is more stable .. (equal to 0.15(kernel 2.6.16)) i think But it hang's up as always on heavy upload traffic...
http://thread.gmane.org/gmane.linux.acpi.devel/17830/focus=17830
Response at http://marc.theaimsgroup.com/?l=linux-acpi&m=114953304620856&w=2 shows that the interrupts are actually level triggered, so thats ok. If you still experience problems with sky2 on the latest kernel (2.6.16-r9), please open a new bug.