From 53c5f1f92f051628d91161bcc3f019c0c16a42da Mon Sep 17 00:00:00 2001 From: Kenji Kaneshige Date: Wed, 4 Oct 2006 02:15:34 -0700 Subject: [PATCH] --- yaml --- r: 38351 b: refs/heads/master c: 9bded00bf62090ebc9d6e8be640cdb69e8497db6 h: refs/heads/master i: 38349: 308f816cc36ba18e57ef7cbf396b46a83ee90de3 38347: 7e6f7ccf13a7a5cf2c28142cf654aafb280d6023 38343: 90872c4998ccac7f530b2c2ad6a1b2b0232fbd67 38335: 0a931bbf2dadc7aa4fb9b20e19030ac320cdf789 v: v3 --- [refs] | 2 +- trunk/drivers/pci/setup-bus.c | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/[refs] b/[refs] index 92a41379b614..24bc30768057 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 18e39913d41ca4d63e9e94a2ad25b5ea31caaa7f +refs/heads/master: 9bded00bf62090ebc9d6e8be640cdb69e8497db6 diff --git a/trunk/drivers/pci/setup-bus.c b/trunk/drivers/pci/setup-bus.c index 54404917be9a..8f7bcf56f149 100644 --- a/trunk/drivers/pci/setup-bus.c +++ b/trunk/drivers/pci/setup-bus.c @@ -55,16 +55,16 @@ pbus_assign_resources_sorted(struct pci_bus *bus) list_for_each_entry(dev, &bus->devices, bus_list) { u16 class = dev->class >> 8; - /* Don't touch classless devices or host bridges. */ + /* Don't touch classless devices or host bridges or ioapics. */ if (class == PCI_CLASS_NOT_DEFINED || class == PCI_CLASS_BRIDGE_HOST) continue; - /* Don't touch ioapics if it has the assigned resources. */ + /* Don't touch ioapic devices already enabled by firmware */ if (class == PCI_CLASS_SYSTEM_PIC) { - res = &dev->resource[0]; - if (res[0].start || res[1].start || res[2].start || - res[3].start || res[4].start || res[5].start) + u16 command; + pci_read_config_word(dev, PCI_COMMAND, &command); + if (command & (PCI_COMMAND_IO | PCI_COMMAND_MEMORY)) continue; }