Micah Gorrell wrote:
> Because of the problems we where having we are no longer using the machine
> with 3 nics. We are now using a machine with just one and it is going live
> next week. We do need kernel 2.4 because of the process limits in 2.2.
> Does the 'Enable Power Management (EXPERIMENTAL)' option fix the no
> resources problems?
Does the attached patch, against 2.4.1-pre10, help matters any?
pci_enable_device() must to be called before any accesses to the
pci_dev->irq and pci_dev->resource[] members. Plug-n-play may fill in
those values. I didn't see your original report, but "no resources"
sounds to me like pci_enable_device() needs to be called earlier in the
speedo_init_one function. The attached patch does just that.
Jeff
> -----Original Message-----
> From: "Tom Sightler" <[EMAIL PROTECTED]>
> To: "Micah Gorrell" <[EMAIL PROTECTED]>;
> <[EMAIL PROTECTED]>
> Date: Thursday, January 25, 2001 1:48 PM
> Subject: Re: eepro100 problems in 2.4.0
[...]
> >I had a similar problem with a server that had dual embedded eepro100
> >adapters however selecting the 'Enable Power Management (EXPERIMENTAL)'
> >option for the eepro100 seemed to make the problem go away. I don't really
> >know why but it might be worth trying if it wasn't already selected.
--
Jeff Garzik | "You see, in this world there's two kinds of
Building 1024 | people, my friend: Those with loaded guns
MandrakeSoft | and those who dig. You dig." --Blondie
Index: drivers/net/eepro100.c
===================================================================
RCS file: /cvsroot/gkernel/linux_2_4/drivers/net/eepro100.c,v
retrieving revision 1.1.1.9.42.2
diff -u -r1.1.1.9.42.2 eepro100.c
--- drivers/net/eepro100.c 2001/01/24 15:56:16 1.1.1.9.42.2
+++ drivers/net/eepro100.c 2001/01/25 21:00:48
@@ -560,6 +560,9 @@
if (speedo_debug > 0 && did_version++ == 0)
printk(version);
+ if (pci_enable_device(pdev))
+ return -EIO;
+
if (!request_region(pci_resource_start(pdev, 1),
pci_resource_len(pdev, 1), "eepro100")) {
printk (KERN_ERR "eepro100: cannot reserve I/O ports\n");
@@ -597,9 +600,6 @@
pci_read_config_word(pdev, pm + PCI_PM_CTRL, &pwr_command);
acpi_idle_state = pwr_command & PCI_PM_CTRL_STATE_MASK;
}
-
- if (pci_enable_device(pdev))
- goto err_out_free_mmio_region;
pci_set_master(pdev);