Re: Invalid PnP ACPI reserved MMIO areas on Supermicro boards

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Len Brown wrote:
On Tuesday 09 October 2007 20:01, Robert Hancock wrote:
Some people with certain Supermicro boards (at least the H8DCE, it seems) have reported that the sata_nv driver fails to attach to some of the controllers due to resource conflicts:

https://bugzilla.redhat.com/show_bug.cgi?id=280641
https://bugzilla.redhat.com/show_bug.cgi?id=313491

Essentially since about 2.6.22 or so (before which we apparently didn't handle PnpACPI reserved MMIO regions?) we get:

So if you boot with "pnpacpi=off" then the board is happy?

-Len

Apparently yes - see new comments in:

https://bugzilla.redhat.com/show_bug.cgi?id=280641

A patch has also been proposed to ignore motherboard resources that overlap PCI BARs here:

https://bugzilla.redhat.com/show_bug.cgi?id=313491


pnp: 00:09: iomem range 0xdfefd000-0xdfefd3ff has been reserved
pnp: 00:09: iomem range 0xdfefe000-0xdfefe3ff has been reserved

when the CK804 SATA controllers have as their BIOS-assigned resources:

80:07.0 IDE interface: nVidia Corporation CK804 Serial ATA Controller (rev f3) (prog-if 85 [Master SecO PriO])
	Subsystem: Super Micro Computer Inc Unknown device 1011
Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR-
	Interrupt: pin A routed to IRQ 46
	Region 0: I/O ports at e400 [size=8]
	Region 1: I/O ports at e000 [size=4]
	Region 2: I/O ports at dc00 [size=8]
	Region 3: I/O ports at d800 [size=4]
	Region 4: I/O ports at d400 [size=16]
	Region 5: Memory at dfefd000 (32-bit, non-prefetchable)

and

80:08.0 IDE interface: nVidia Corporation CK804 Serial ATA Controller (rev f3) (prog-if 85 [Master SecO PriO])
	Subsystem: Super Micro Computer Inc Unknown device 1011
Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR-
	Interrupt: pin A routed to IRQ 45
	Region 0: I/O ports at f800 [size=8]
	Region 1: I/O ports at f400 [size=4]
	Region 2: I/O ports at f000 [size=8]
	Region 3: I/O ports at ec00 [size=4]
	Region 4: I/O ports at e800 [size=16]
	Region 5: Memory at dfefe000 (32-bit, non-prefetchable) [size=4K]

And so of course we get:

sata_nv 0000:80:07.0: Using ADMA mode
PCI: Unable to reserve mem region #6:1000@dfefd000 for device 0000:80:07.0
ACPI: PCI interrupt for device 0000:80:07.0 disabled
sata_nv: probe of 0000:80:07.0 failed with error -16
ACPI: PCI Interrupt Link [LT2E] enabled at IRQ 45
ACPI: PCI Interrupt 0000:80:08.0[A] -> Link [LT2E] -> GSI 45 (level, low) -> IRQ 45
sata_nv 0000:80:08.0: Using ADMA mode
PCI: Unable to reserve mem region #6:1000@dfefe000 for device 0000:80:08.0
ACPI: PCI interrupt for device 0000:80:08.0 disabled
sata_nv: probe of 0000:80:08.0 failed with error -16

So essentially the BIOS has erroneously reserved the SATA controller's BARs in the ACPI motherboard resources, preventing the driver from attaching to the device.

Any ideas on what we can do about this?

-Get Supermicro to fix the BIOS - already tried, it seems
-System-specific quirk to ignore these resource reservations?
-Try to move the PCI resources if they conflict with the ACPI resource reservations?

I wonder how Windows deals with this, if it even does on these boards?


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux