public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Greg KH <greg@kroah.com>
To: linux-kernel@vger.kernel.org
Subject: Re: [PATCH] PCI fixes for 2.6.10-rc1
Date: Fri, 12 Nov 2004 15:21:57 -0800	[thread overview]
Message-ID: <11003017172508@kroah.com> (raw)
In-Reply-To: <11003017173174@kroah.com>

ChangeSet 1.2026.66.18, 2004/11/10 16:43:46-08:00, tlnguyen@snoqualmie.dp.intel.com

[PATCH] PCI: pci-mmconfig fix

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: Sundarapandian Durairaj <sundarapandian.duraijai@intel.com>
Signed-off-by: T. Long Nguyen <tom.l.nguyen@intel.com>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>


 arch/i386/pci/mmconfig.c   |    5 +----
 arch/x86_64/pci/mmconfig.c |    3 ---
 2 files changed, 1 insertion(+), 7 deletions(-)


diff -Nru a/arch/i386/pci/mmconfig.c b/arch/i386/pci/mmconfig.c
--- a/arch/i386/pci/mmconfig.c	2004-11-12 15:12:43 -08:00
+++ b/arch/i386/pci/mmconfig.c	2004-11-12 15:12:43 -08:00
@@ -30,7 +30,7 @@
 	u32 dev_base = pci_mmcfg_base_addr | (bus << 20) | (devfn << 12);
 	if (dev_base != mmcfg_last_accessed_device) {
 		mmcfg_last_accessed_device = dev_base;
-		set_fixmap(FIX_PCIE_MCFG, dev_base);
+		set_fixmap_nocache(FIX_PCIE_MCFG, dev_base);
 	}
 }
 
@@ -84,9 +84,6 @@
 		writel(value, mmcfg_virt_addr + reg);
 		break;
 	}
-
-	/* Dummy read to flush PCI write */
-	readl(mmcfg_virt_addr);
 
 	spin_unlock_irqrestore(&pci_config_lock, flags);
 
diff -Nru a/arch/x86_64/pci/mmconfig.c b/arch/x86_64/pci/mmconfig.c
--- a/arch/x86_64/pci/mmconfig.c	2004-11-12 15:12:43 -08:00
+++ b/arch/x86_64/pci/mmconfig.c	2004-11-12 15:12:43 -08:00
@@ -63,9 +63,6 @@
 		break;
 	}
 
-	/* Dummy read to flush PCI write */
-	readl(addr);
-
 	return 0;
 }
 


  reply	other threads:[~2004-11-13  2:33 UTC|newest]

Thread overview: 53+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-11-12 23:20 [BK PATCH] PCI fixes for 2.6.10-rc1 Greg KH
2004-11-12 23:21 ` [PATCH] " Greg KH
2004-11-12 23:21   ` Greg KH
2004-11-12 23:21     ` Greg KH
2004-11-12 23:21       ` Greg KH
2004-11-12 23:21         ` Greg KH
2004-11-12 23:21           ` Greg KH
2004-11-12 23:21             ` Greg KH
2004-11-12 23:21               ` Greg KH
2004-11-12 23:21                 ` Greg KH
2004-11-12 23:21                   ` Greg KH
2004-11-12 23:21                     ` Greg KH
2004-11-12 23:21                       ` Greg KH
2004-11-12 23:21                         ` Greg KH
2004-11-12 23:21                           ` Greg KH
2004-11-12 23:21                             ` Greg KH
2004-11-12 23:21                               ` Greg KH [this message]
2004-11-12 23:21                                 ` Greg KH
2004-11-12 23:21                                   ` Greg KH
2004-11-12 23:21                                     ` Greg KH
2004-11-12 23:21                                       ` Greg KH
2004-11-12 23:21                                         ` Greg KH
2004-11-12 23:21                                           ` Greg KH
2004-11-12 23:21                                             ` Greg KH
2004-11-12 23:21                                               ` Greg KH
2004-11-12 23:21                                                 ` Greg KH
2004-11-12 23:21                                                   ` Greg KH
2004-11-12 23:21                                                     ` Greg KH
2004-11-12 23:21                                                       ` Greg KH
2004-11-12 23:21                                                         ` Greg KH
2004-11-12 23:21                                                           ` Greg KH
2004-11-12 23:21                                                             ` Greg KH
2004-11-12 23:21                                                               ` Greg KH
2004-11-12 23:21                                                                 ` Greg KH
2004-11-12 23:21                                                                   ` Greg KH
2004-11-12 23:21                                                                     ` Greg KH
2004-11-12 23:22                                                                       ` Greg KH
2004-11-12 23:22                                                                         ` Greg KH
2004-11-12 23:22                                                                           ` Greg KH
2004-11-12 23:22                                                                             ` Greg KH
2004-11-12 23:22                                                                               ` Greg KH
2004-11-12 23:22                                                                                 ` Greg KH
2004-11-12 23:22                                                                                   ` Greg KH
2004-11-12 23:22                                                                                     ` Greg KH
2004-11-12 23:22                                                                                       ` Greg KH
2004-11-12 23:22                                                                                         ` Greg KH
2004-11-13  9:12                                             ` Russell King
2004-11-13 10:03                                               ` Jan Dittmer
2004-11-13 10:22                                                 ` Russell King
2004-11-13 10:45                                                   ` Jan Dittmer
2004-11-13 10:48                                                     ` Russell King
2004-11-13 10:58                                                       ` Jan Dittmer
  -- strict thread matches above, loose matches on Subject: below --
2004-11-13  7:33 James Tabor

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=11003017172508@kroah.com \
    --to=greg@kroah.com \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox