changeset: 9959:2f6619a3cc8e10718e71c3e99ab4423fbeabeb2e
tag: tip
user: jimix@xxxxxxxxxxxxxxxxxxxxx
date: Fri Apr 28 17:47:06 2006 -0400
files: xen/arch/ppc/Makefile xen/arch/ppc/dart_u3.c
xen/arch/ppc/iommu_u3.c
description:
[ppc] rename iommu_u3.c to dart_u3.c
diff -r 786d4a84bdad6467f780967e7725581f44678d9a -r
2f6619a3cc8e10718e71c3e99ab4423fbeabeb2e xen/arch/ppc/Makefile
--- a/xen/arch/ppc/Makefile Fri Apr 28 17:44:52 2006 -0400
+++ b/xen/arch/ppc/Makefile Fri Apr 28 17:47:06 2006 -0400
@@ -9,6 +9,7 @@ obj-y += bitops.o
obj-y += bitops.o
obj-y += boot_of.o
obj-y += dart.o
+obj-y += dart_u3.o
obj-y += dart_u4.o
obj-y += delay.o
obj-y += dom0_ops.o
@@ -21,7 +22,6 @@ obj-y += htab.o
obj-y += htab.o
obj-y += io.o
obj-y += iommu.o
-obj-y += iommu_u3.o
obj-y += irq.o
obj-y += mambo.o
obj-y += mm.o
diff -r 786d4a84bdad6467f780967e7725581f44678d9a -r
2f6619a3cc8e10718e71c3e99ab4423fbeabeb2e xen/arch/ppc/dart_u3.c
--- /dev/null Thu Jan 1 00:00:00 1970 +0000
+++ b/xen/arch/ppc/dart_u3.c Fri Apr 28 17:47:06 2006 -0400
@@ -0,0 +1,106 @@
+/*
+ * Copyright (C) 2005 Jimi Xenidis <jimix@xxxxxxxxxxxxxx>, IBM Corporation
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#undef DEBUG
+
+#include <xen/config.h>
+#include <xen/types.h>
+#include <xen/sched.h>
+#include <xen/mm.h>
+#include <public/xen.h>
+#include <asm/io.h>
+#include <asm/current.h>
+#include "tce.h"
+#include "iommu.h"
+#include "dart.h"
+
+union dart_ctl {
+ u32 dc_word;
+ struct {
+ u32 dc_base:20;
+ u32 dc_stop_access:1;
+ u32 dc_invtlb:1;
+ u32 dc_enable:1;
+ u32 dc_size:9;
+ } reg;
+};
+
+static u32 volatile *dart_ctl_reg;
+
+static void u3_inv_all(void)
+{
+ union dart_ctl dc;
+ ulong r = 0;
+ int l = 0;
+
+ for (;;) {
+ dc.dc_word = in_32(dart_ctl_reg);
+ dc.reg.dc_invtlb = 1;
+ out_32(dart_ctl_reg, dc.dc_word);
+
+ do {
+ dc.dc_word = in_32(dart_ctl_reg);
+ r++;
+ } while ((dc.reg.dc_invtlb == 1) && (r < (1 << l)));
+
+ if (r == (1 << l)) {
+ if (l < 4) {
+ l++;
+ dc.dc_word = in_32(dart_ctl_reg);
+ dc.reg.dc_invtlb = 0;
+ out_32(dart_ctl_reg, dc.dc_word);
+ continue;
+ } else {
+ panic(" broken U3???\n");
+ }
+ }
+ return;
+ }
+}
+
+static void u3_inv_entry(ulong pg)
+{
+ /* sadly single entry invalidation has been reported not to work */
+ u3_inv_all();
+}
+
+static struct dart_ops u3_ops = {
+ .do_inv_all = u3_inv_all,
+ .do_inv_entry = u3_inv_entry,
+};
+
+struct dart_ops *u3_init(ulong base, ulong table, ulong tpgs)
+{
+ union dart_ctl dc;
+
+ dart_ctl_reg = (u32 *)base;
+
+ dc.dc_word = 0;
+
+ dc.reg.dc_base = table >> PAGE_SHIFT;
+ dc.reg.dc_size = 1 << tpgs;
+ dc.reg.dc_enable = 1;
+
+
+ printk("Initializing DART Model U3: reg: %p word: %x\n",
+ dart_ctl_reg, dc.dc_word);
+
+ out_32(dart_ctl_reg, dc.dc_word);
+
+ return &u3_ops;
+}
diff -r 786d4a84bdad6467f780967e7725581f44678d9a -r
2f6619a3cc8e10718e71c3e99ab4423fbeabeb2e xen/arch/ppc/iommu_u3.c
--- a/xen/arch/ppc/iommu_u3.c Fri Apr 28 17:44:52 2006 -0400
+++ /dev/null Thu Jan 1 00:00:00 1970 +0000
@@ -1,106 +0,0 @@
-/*
- * Copyright (C) 2005 Jimi Xenidis <jimix@xxxxxxxxxxxxxx>, IBM Corporation
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-#undef DEBUG
-
-#include <xen/config.h>
-#include <xen/types.h>
-#include <xen/sched.h>
-#include <xen/mm.h>
-#include <public/xen.h>
-#include <asm/io.h>
-#include <asm/current.h>
-#include "tce.h"
-#include "iommu.h"
-#include "dart.h"
-
-union dart_ctl {
- u32 dc_word;
- struct {
- u32 dc_base:20;
- u32 dc_stop_access:1;
- u32 dc_invtlb:1;
- u32 dc_enable:1;
- u32 dc_size:9;
- } reg;
-};
-
-static u32 volatile *dart_ctl_reg;
-
-static void u3_inv_all(void)
-{
- union dart_ctl dc;
- ulong r = 0;
- int l = 0;
-
- for (;;) {
- dc.dc_word = in_32(dart_ctl_reg);
- dc.reg.dc_invtlb = 1;
- out_32(dart_ctl_reg, dc.dc_word);
-
- do {
- dc.dc_word = in_32(dart_ctl_reg);
- r++;
- } while ((dc.reg.dc_invtlb == 1) && (r < (1 << l)));
-
- if (r == (1 << l)) {
- if (l < 4) {
- l++;
- dc.dc_word = in_32(dart_ctl_reg);
- dc.reg.dc_invtlb = 0;
- out_32(dart_ctl_reg, dc.dc_word);
- continue;
- } else {
- panic(" broken U3???\n");
- }
- }
- return;
- }
-}
-
-static void u3_inv_entry(ulong pg)
-{
- /* sadly single entry invalidation has been reported not to work */
- u3_inv_all();
-}
-
-static struct dart_ops u3_ops = {
- .do_inv_all = u3_inv_all,
- .do_inv_entry = u3_inv_entry,
-};
-
-struct dart_ops *u3_init(ulong base, ulong table, ulong tpgs)
-{
- union dart_ctl dc;
-
- dart_ctl_reg = (u32 *)base;
-
- dc.dc_word = 0;
-
- dc.reg.dc_base = table >> PAGE_SHIFT;
- dc.reg.dc_size = 1 << tpgs;
- dc.reg.dc_enable = 1;
-
-
- printk("Initializing DART Model U3: reg: %p word: %x\n",
- dart_ctl_reg, dc.dc_word);
-
- out_32(dart_ctl_reg, dc.dc_word);
-
- return &u3_ops;
-}
_______________________________________________
Xen-ppc-devel mailing list
Xen-ppc-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ppc-devel
|