WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-changelog

[Xen-changelog] [linux-2.6.18-xen] [IA64] Dom0 kernel - sn2 use ioremap

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [linux-2.6.18-xen] [IA64] Dom0 kernel - sn2 use ioremap for PCI registers
From: "Xen patchbot-linux-2.6.18-xen" <patchbot-linux-2.6.18-xen@xxxxxxxxxxxxxxxxxxx>
Date: Fri, 27 Jul 2007 02:21:34 -0700
Delivery-date: Fri, 27 Jul 2007 02:19:35 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User Alex Williamson <alex.williamson@xxxxxx>
# Date 1182196767 21600
# Node ID 3df04f34c4aa7679bf30a7fe6b46d8ccc0a004da
# Parent  a413dd61e7e5e1bba11bab447184cf5e6b43513a
[IA64] Dom0 kernel - sn2 use ioremap for PCI registers

Use ioremap() on SN2 specific PIC and TIO registers rather than
manually setting the __IA64_UNCACHED_OFFSET bits in the address we get
from the PROM.

Same patch pushed to upstream Linux

Signed-off-by: Jes Sorensen <jes@xxxxxxx>
---
 arch/ia64/sn/pci/pcibr/pcibr_provider.c |    7 ++++---
 arch/ia64/sn/pci/tioca_provider.c       |    4 +++-
 arch/ia64/sn/pci/tioce_provider.c       |    4 +++-
 3 files changed, 10 insertions(+), 5 deletions(-)

diff -r a413dd61e7e5 -r 3df04f34c4aa arch/ia64/sn/pci/pcibr/pcibr_provider.c
--- a/arch/ia64/sn/pci/pcibr/pcibr_provider.c   Fri Jun 15 13:33:47 2007 -0600
+++ b/arch/ia64/sn/pci/pcibr/pcibr_provider.c   Mon Jun 18 13:59:27 2007 -0600
@@ -15,6 +15,7 @@
 #include <asm/sn/pcibus_provider_defs.h>
 #include <asm/sn/pcidev.h>
 #include <asm/sn/sn_sal.h>
+#include <asm/sn/pic.h>
 #include <asm/sn/sn2/sn_hwperf.h>
 #include "xtalk/xwidgetdev.h"
 #include "xtalk/hubdev.h"
@@ -129,9 +130,9 @@ pcibr_bus_fixup(struct pcibus_bussoft *p
        }
 
        memcpy(soft, prom_bussoft, sizeof(struct pcibus_info));
-       soft->pbi_buscommon.bs_base =
-           (((u64) soft->pbi_buscommon.
-             bs_base << 4) >> 4) | __IA64_UNCACHED_OFFSET;
+       soft->pbi_buscommon.bs_base = (unsigned long)
+               ioremap(REGION_OFFSET(soft->pbi_buscommon.bs_base),
+                       sizeof(struct pic));
 
        spin_lock_init(&soft->pbi_lock);
 
diff -r a413dd61e7e5 -r 3df04f34c4aa arch/ia64/sn/pci/tioca_provider.c
--- a/arch/ia64/sn/pci/tioca_provider.c Fri Jun 15 13:33:47 2007 -0600
+++ b/arch/ia64/sn/pci/tioca_provider.c Mon Jun 18 13:59:27 2007 -0600
@@ -611,7 +611,9 @@ tioca_bus_fixup(struct pcibus_bussoft *p
                return NULL;
 
        memcpy(tioca_common, prom_bussoft, sizeof(struct tioca_common));
-       tioca_common->ca_common.bs_base |= __IA64_UNCACHED_OFFSET;
+       tioca_common->ca_common.bs_base = (unsigned long)
+               ioremap(REGION_OFFSET(tioca_common->ca_common.bs_base),
+                       sizeof(struct tioca_common));
 
        /* init kernel-private area */
 
diff -r a413dd61e7e5 -r 3df04f34c4aa arch/ia64/sn/pci/tioce_provider.c
--- a/arch/ia64/sn/pci/tioce_provider.c Fri Jun 15 13:33:47 2007 -0600
+++ b/arch/ia64/sn/pci/tioce_provider.c Mon Jun 18 13:59:27 2007 -0600
@@ -1006,7 +1006,9 @@ tioce_bus_fixup(struct pcibus_bussoft *p
                return NULL;
 
        memcpy(tioce_common, prom_bussoft, sizeof(struct tioce_common));
-       tioce_common->ce_pcibus.bs_base |= __IA64_UNCACHED_OFFSET;
+       tioce_common->ce_pcibus.bs_base = (unsigned long)
+               ioremap(REGION_OFFSET(tioce_common->ce_pcibus.bs_base),
+                       sizeof(struct tioce_common));
 
        tioce_kern = tioce_kern_init(tioce_common);
        if (tioce_kern == NULL) {

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [linux-2.6.18-xen] [IA64] Dom0 kernel - sn2 use ioremap for PCI registers, Xen patchbot-linux-2.6.18-xen <=