From patchwork Wed Dec 8 21:36:27 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bjorn Helgaas X-Patchwork-Id: 392212 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by demeter1.kernel.org (8.14.4/8.14.3) with ESMTP id oB8LbXKT022691 for ; Wed, 8 Dec 2010 21:37:34 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756034Ab0LHVgc (ORCPT ); Wed, 8 Dec 2010 16:36:32 -0500 Received: from g4t0016.houston.hp.com ([15.201.24.19]:24009 "EHLO g4t0016.houston.hp.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756006Ab0LHVg3 (ORCPT ); Wed, 8 Dec 2010 16:36:29 -0500 Received: from g4t0009.houston.hp.com (g4t0009.houston.hp.com [16.234.32.26]) by g4t0016.houston.hp.com (Postfix) with ESMTP id E12FA1406D; Wed, 8 Dec 2010 21:36:27 +0000 (UTC) Received: from ldl (ldl.usa.hp.com [16.125.112.222]) by g4t0009.houston.hp.com (Postfix) with ESMTP id 84728C194; Wed, 8 Dec 2010 21:36:27 +0000 (UTC) Received: from localhost (ldl.fc.hp.com [127.0.0.1]) by ldl (Postfix) with ESMTP id 73453CF002A; Wed, 8 Dec 2010 14:36:27 -0700 (MST) Received: from ldl ([127.0.0.1]) by localhost (ldl.fc.hp.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id bGgS+XoobLKu; Wed, 8 Dec 2010 14:36:27 -0700 (MST) Received: from eh.fc.hp.com (bob.lnx.usa.hp.com [16.125.112.218]) by ldl (Postfix) with ESMTP id 5AC9BCF0029; Wed, 8 Dec 2010 14:36:27 -0700 (MST) Received: from bob.kio (localhost [127.0.0.1]) by eh.fc.hp.com (Postfix) with ESMTP id 40DF726200; Wed, 8 Dec 2010 14:36:27 -0700 (MST) Subject: [PATCH 5/5] PNP: HP nx6325 fixup: reserve unreported resources To: Jesse Barnes , Len Brown From: Bjorn Helgaas Cc: linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org, "Rafael J. Wysocki" , linux-acpi@vger.kernel.org, "H. Peter Anvin" , Thomas Gleixner , Linus Torvalds , Ingo Molnar , Adam Belay Date: Wed, 08 Dec 2010 14:36:27 -0700 Message-ID: <20101208213627.13026.18854.stgit@bob.kio> In-Reply-To: <20101208213606.13026.47657.stgit@bob.kio> References: <20101208213606.13026.47657.stgit@bob.kio> User-Agent: StGit/0.15 MIME-Version: 1.0 Sender: linux-acpi-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-acpi@vger.kernel.org X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.2.3 (demeter1.kernel.org [140.211.167.41]); Wed, 08 Dec 2010 21:37:34 +0000 (UTC) diff --git a/drivers/pnp/quirks.c b/drivers/pnp/quirks.c index f18bb69..e7de402 100644 --- a/drivers/pnp/quirks.c +++ b/drivers/pnp/quirks.c @@ -343,7 +343,37 @@ static struct pnp_protocol pnp_fixup_protocol = { .name = "Plug and Play fixup", }; +static int __init hp_nx6325_fixup(const struct dmi_system_id *d) +{ + struct pnp_dev *dev; + + /* + * The BIOS apparently forgot to describe some regions in the + * address map. See https://bugzilla.kernel.org/show_bug.cgi?id=23332 + */ + + dev = pnp_alloc_dev(&pnp_fixup_protocol, 0, "LNXHAZRD"); + if (!dev) + return 0; + + dev->active = 1; + pnp_add_mem_resource(dev, 0xf8300000, 0xf83fffff, 0); + pnp_add_mem_resource(dev, 0xf8500000, 0xf85fffff, 0); + pnp_add_mem_resource(dev, 0xf9100000, 0xf91fffff, 0); + pnp_add_device(dev); + dev_info(&dev->dev, "added to work around BIOS defect\n"); + return 0; +} + static const struct dmi_system_id pnp_fixup_table[] __initconst = { + { + .callback = hp_nx6325_fixup, + .ident = "HP nx6325 laptop", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"), + DMI_MATCH(DMI_PRODUCT_NAME, "HP Compaq nx6325"), + }, + }, {} };