From: Khalid Aziz Date: Tue, 3 May 2016 14:13:08 +0000 (-0600) Subject: Revert "PCI: kill wrong quirk about M7101" X-Git-Tag: v4.1.12-102.0.20170529_2200~86 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=f2632457b40b5a07a4962558a47d9c1e5ba89116;p=users%2Fjedix%2Flinux-maple.git Revert "PCI: kill wrong quirk about M7101" This reverts commit 2bd1643612ce5560c80856f369ae81fc80e0331e. This commit causes hotplug to break as documented in Orabug 22855133. Orabug: 22855133 Signed-off-by: Khalid Aziz (cherry picked from commit de113e58a8cc67f7daa128c33ac49a33935dc767) Signed-off-by: Allen Pais --- diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c index 07871bd6eaeca..b3c6486ab1943 100644 --- a/drivers/pci/quirks.c +++ b/drivers/pci/quirks.c @@ -432,6 +432,24 @@ static void quirk_amd_nl_class(struct pci_dev *pdev) DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_NL_USB, quirk_amd_nl_class); +/* + * Let's make the southbridge information explicit instead + * of having to worry about people probing the ACPI areas, + * for example.. (Yes, it happens, and if you read the wrong + * ACPI register it will put the machine to sleep with no + * way of waking it up again. Bummer). + * + * ALI M7101: Two IO regions pointed to by words at + * 0xE0 (64 bytes of ACPI registers) + * 0xE2 (32 bytes of SMB registers) + */ +static void quirk_ali7101_acpi(struct pci_dev *dev) +{ + quirk_io_region(dev, 0xE0, 64, PCI_BRIDGE_RESOURCES, "ali7101 ACPI"); + quirk_io_region(dev, 0xE2, 32, PCI_BRIDGE_RESOURCES+1, "ali7101 SMB"); +} +DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_AL, PCI_DEVICE_ID_AL_M7101, quirk_ali7101_acpi); + static void piix4_io_quirk(struct pci_dev *dev, const char *name, unsigned int port, unsigned int enable) { u32 devres;