aboutsummaryrefslogtreecommitdiff
path: root/lib/libnativeio
diff options
context:
space:
mode:
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>2011-07-27 15:45:36 +1000
committerThomas Huth <thuth@linux.vnet.ibm.com>2011-10-12 13:20:00 +0200
commit35fc16fee354457ab171247d9e2b5387304b5eb3 (patch)
tree353b81cabc5d1d936c0bbe97e6cb3263a8bb9349 /lib/libnativeio
parent32e3430c018ceb8413cb808477449d1968c42497 (diff)
downloadSLOF-35fc16fee354457ab171247d9e2b5387304b5eb3.zip
SLOF-35fc16fee354457ab171247d9e2b5387304b5eb3.tar.gz
SLOF-35fc16fee354457ab171247d9e2b5387304b5eb3.tar.bz2
Move MMIO accessors to board-js2x and implement h-calls based ones for qemu
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'lib/libnativeio')
-rw-r--r--lib/libnativeio/nativeio.code25
-rw-r--r--lib/libnativeio/nativeio.in22
2 files changed, 47 insertions, 0 deletions
diff --git a/lib/libnativeio/nativeio.code b/lib/libnativeio/nativeio.code
new file mode 100644
index 0000000..4887b11
--- /dev/null
+++ b/lib/libnativeio/nativeio.code
@@ -0,0 +1,25 @@
+/******************************************************************************
+ * Copyright (c) 2004, 2008 IBM Corporation
+ * All rights reserved.
+ * This program and the accompanying materials
+ * are made available under the terms of the BSD License
+ * which accompanies this distribution, and is available at
+ * http://www.opensource.org/licenses/bsd-license.php
+ *
+ * Contributors:
+ * IBM Corporation - initial implementation
+ *****************************************************************************/
+
+/* There are 970 implementations. If we are ever to run native IOs
+ * on Power7 in hypervisor mode, these will have to change to use
+ * the new CI-load/store instructions
+ */
+PRIM(RB_X40) GET_CHAR1; SET_CI; GET_CHAR2; CLR_CI; GET_CHAR3; MIRP
+PRIM(RB_X21) PUT_CHAR1; SET_CI; PUT_CHAR2; CLR_CI; MIRP
+PRIM(RW_X40) GET_WORD1; SET_CI; GET_WORD2; CLR_CI; GET_WORD3; MIRP
+PRIM(RW_X21) PUT_WORD1; SET_CI; PUT_WORD2; CLR_CI; MIRP
+PRIM(RL_X40) GET_LONG1; SET_CI; GET_LONG2; CLR_CI; GET_LONG3; MIRP
+PRIM(RL_X21) PUT_LONG1; SET_CI; PUT_LONG2; CLR_CI; MIRP
+PRIM(RX_X40) GET_XONG1; SET_CI; GET_XONG2; CLR_CI; GET_XONG3; MIRP
+PRIM(RX_X21) PUT_XONG1; SET_CI; PUT_XONG2; CLR_CI; MIRP
+
diff --git a/lib/libnativeio/nativeio.in b/lib/libnativeio/nativeio.in
new file mode 100644
index 0000000..f5fb9d9
--- /dev/null
+++ b/lib/libnativeio/nativeio.in
@@ -0,0 +1,22 @@
+/******************************************************************************
+ * Copyright (c) 2004, 2008 IBM Corporation
+ * All rights reserved.
+ * This program and the accompanying materials
+ * are made available under the terms of the BSD License
+ * which accompanies this distribution, and is available at
+ * http://www.opensource.org/licenses/bsd-license.php
+ *
+ * Contributors:
+ * IBM Corporation - initial implementation
+ *****************************************************************************/
+
+// I/O accesses.
+cod(RB@)
+cod(RB!)
+cod(RW@)
+cod(RW!)
+cod(RL@)
+cod(RL!)
+cod(RX@)
+cod(RX!)
+