On Wednesday, July 28, 2010, Hidetoshi Seto wrote: > Hi, > > (2010/07/25 8:05), Rafael J. Wysocki wrote: > > It turns out that asking ACPI BIOS, through _OSC, for control of each > > PCIe port native service individually sometimes confuses the BIOS if > > one sevice is requested while the others are not (eg. requesting > > control of the native PCIe PME without requesting control of the > > native PCIe hot-plug at the same time leads to interrupt storms on > > some systems). > > Then why not invent quirks or something for such systems? > > IMHO it sounds like a BIOS bug since it should grant PME control to > OS only when both of PME and pciehp (plus PCIe caps) are requested > at same time. > > Did you confirm that the system also confuses when pciehp is requested > without requesting PME? > e.g. assume that some BIOS might behave: > _OSC(pciehp) => OK > _OSC(PME) => NG (bugs on shared interrupt?) > _OSC(pciehp|PME) => OK > _OSC(SHPC) => OK > _OSC(pciehp|SHPC) => NG (must choose one, not both) > _OSC(AER|SHPC) => OK The problem is the PCIe capability structure that is requested by each of them (except for SHPC). After granting it, the BIOS can't legitimately write to the PCIe standard config registers, so it's reasonable to assume the kernel will configure them from its perspective. > I don't doubt that handling of _OSC needs some improvement... Good. :-) Rafael -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html