Manual loading of skge and sky2 driver in the 2.4.26 based system
Hi all,
About a week ago I completed the 2.4.36.7-to-2.4.26 back-porting work of these two drivers.
This week I encountered an issue of manual-loading them in my 2.4.26/x86 system. This system has four 88E8001 chips and four 88E8053 chips for the skge and sky2 drivers to handle respectively. The scenario is that I have to load the drivers twice in order to use them normally.
For example, my skge driver logging code shows that, in the first (initial) time loading, the PCI code displays the "PCI: Sharing IRQ..." messages of the IRQs 11, 12, 5, and 10. Right after pci_init_module() returns rc = 4, which is correct, the kernel code displays the "init_module: Device or resource busy" message. At the end the skge driver is not loaded.
The second time succeeded in the loading of the skge driver with no display of the Sharing IRQ..." messages. The pci_init_module() returns rc = 0. I see this return value reasonable. After that, when I enable the eth0, the lsmod command shows 1 as the skge driver's use count. This interface is able to transport traffics normally.
I compared the skge driver log against that of the old sk98lin driver in the same system. I discovered the display of the Sharing IRQ..." messages happen in the sh98lin driver loading as well in my system. This comparison indicates that the IRQ and IO sharing is not the cause of the ""init_module: Device or resource busy" issue.
I am finding out the reason why the kernel raises this issue in order to solve it. I will definitely be grateful for your comment on this issue. If you need the details of it, I will be happy to provide.
Tommy
|