tree 964db43d4fe45cb810170b80aad068928572a6b4
parent 144a50ea5e1487b8b8e722289b4177713354448a
author Rajesh Shah <[EMAIL PROTECTED]> Wed, 17 Aug 2005 07:32:04 -0700
committer Greg Kroah-Hartman <[EMAIL PROTECTED]> Sat, 10 Sep 2005 03:58:18 -0700

[PATCH] PCI: Fix PCI bus mastering enable problem in pciehp

Martin Franc reported that the pciehp driver was not enabling bus
master capability on his hot-plugged card. pciehprm_enable_card()
was updating the PCI command register only if _HPP indicated a
value for SERR or PERR that was different from the current setting.
I don't have hardware that reproduces this problem, but Martin
reports that this patch fixes the problem for him.

Signed-off-by: Rajesh Shah <[EMAIL PROTECTED]>
Signed-off-by: Greg Kroah-Hartman <[EMAIL PROTECTED]>
>From [EMAIL PROTECTED] Tue Sep  6 18:29:50 2005
Date: Tue, 6 Sep 2005 13:39:32 -0700 (PDT)
From: Rumen Ivanov Zarev <[EMAIL PROTECTED]>
Message-Id: <[EMAIL PROTECTED]>
To: [EMAIL PROTECTED]
Subject: PCI: Unhide SMBus on Compaq Evo N620c
Cc: linux-kernel@vger.kernel.org

Trivial patch against 2.6.13 to unhide SMBus on Compaq Evo N620c laptop using
Intel 82855PM chipset.

Signed-off-by: Rumen Zarev <[EMAIL PROTECTED]>
Signed-off-by: Greg Kroah-Hartman <[EMAIL PROTECTED]>

---
 drivers/pci/quirks.c |    6 ++++++
 1 file changed, 6 insertions(+)

--- gregkh-2.6.orig/drivers/pci/quirks.c        2005-09-09 10:28:55.000000000 
-0700
+++ gregkh-2.6/drivers/pci/quirks.c     2005-09-09 13:51:44.000000000 -0700
@@ -876,6 +876,12 @@ static void __init asus_hides_smbus_host
                        case 0xC00C: /* Samsung P35 notebook */
                                asus_hides_smbus = 1;
                        }
+       } else if (unlikely(dev->subsystem_vendor == PCI_VENDOR_ID_COMPAQ)) {
+               if (dev->device == PCI_DEVICE_ID_INTEL_82855PM_HB)
+                       switch(dev->subsystem_device) {
+                       case 0x0058: /* Compaq Evo N620c */
+                               asus_hides_smbus = 1;
+                       }
        }
 }
 DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL,  PCI_DEVICE_ID_INTEL_82845_HB,   
asus_hides_smbus_hostbridge );

 drivers/pci/hotplug/pciehprm_acpi.c |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/pci/hotplug/pciehprm_acpi.c 
b/drivers/pci/hotplug/pciehprm_acpi.c
--- a/drivers/pci/hotplug/pciehprm_acpi.c
+++ b/drivers/pci/hotplug/pciehprm_acpi.c
@@ -1696,15 +1696,15 @@ void pciehprm_enable_card(
        pci_bus->number = func->bus;
        devfn = PCI_DEVFN(func->device, func->function);
 
-       rc = pci_bus_read_config_word(pci_bus, devfn, PCI_COMMAND, &command);
+       rc = pci_bus_read_config_word(pci_bus, devfn, PCI_COMMAND, &cmd);
 
        if (card_type == PCI_HEADER_TYPE_BRIDGE) {
-               rc = pci_bus_read_config_word(pci_bus, devfn, 
PCI_BRIDGE_CONTROL, &bcommand);
+               rc = pci_bus_read_config_word(pci_bus, devfn, 
PCI_BRIDGE_CONTROL, &bcmd);
        }
 
-       cmd = command  = command | PCI_COMMAND_MASTER | PCI_COMMAND_INVALIDATE
+       command  = cmd | PCI_COMMAND_MASTER | PCI_COMMAND_INVALIDATE
                | PCI_COMMAND_IO | PCI_COMMAND_MEMORY;
-       bcmd = bcommand  = bcommand | PCI_BRIDGE_CTL_NO_ISA;
+       bcommand  = bcmd | PCI_BRIDGE_CTL_NO_ISA;
 
        ab = find_acpi_bridge_by_bus(acpi_bridges_head, ctrl->seg, ctrl->bus);
        if (ab) {
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to