• Tom L. Nguyen's avatar
    [PATCH] PCI: pci-mmconfig fix · 2d292690
    Tom L. Nguyen authored
    Here I have attached pci mmconfig fix for 2.6.9 kernel.
    
    This will fix the flush error in pci_mmcfg_write.
    
    When pci_mmcfg_write is used to program the PMCSR in the Power
    Management Capability structure of PCI config space in the PCI Express
    device to a different power state, the dummy readl to flush the previous
    write violates the transition delay specified in the PCI power
    management spec. Please see PCI Power Management Spec. 1.2 Table 5-6.
    For example, while changing the power state of the device through PMCSR
    register, a transition delay of 10msec is required before any access can
    be made to the device.
    
    Since the configuration write access for PCI Express is non posted,
    flushing is not necessary and  it will be safe to remove the dummy
    readl.
    
    This patch will remove dummy readl function implemented in
    "pci_mmcfg_write" and use set_fixmap_nocahe instead of set_fixmap.
    Signed-off-by: default avatarSundarapandian Durairaj <sundarapandian.duraijai@intel.com>
    Signed-off-by: default avatarT. Long Nguyen <tom.l.nguyen@intel.com>
    Signed-off-by: default avatarGreg Kroah-Hartman <greg@kroah.com>
    2d292690
mmconfig.c 2.36 KB