aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Roth <mdroth@linux.vnet.ibm.com>2019-12-04 13:08:33 +1100
committerAlexey Kardashevskiy <aik@ozlabs.ru>2019-12-05 14:41:07 +1100
commit48b86c575ff730f6d8ca5071fffdf7c0f4706695 (patch)
tree82a8f1697beb5eaf6a0fb82889b06e2bdafd8941
parent1aeb125770c4c161394b851b0eff982292702c23 (diff)
downloadSLOF-48b86c575ff730f6d8ca5071fffdf7c0f4706695.zip
SLOF-48b86c575ff730f6d8ca5071fffdf7c0f4706695.tar.gz
SLOF-48b86c575ff730f6d8ca5071fffdf7c0f4706695.tar.bz2
dma: Define default dma methods for using by client/package instances
They call parent node (which is a device) methods. Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com> Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
-rw-r--r--board-qemu/slof/Makefile1
-rw-r--r--board-qemu/slof/OF.fs3
-rw-r--r--slof/fs/dma-instance-function.fs28
3 files changed, 32 insertions, 0 deletions
diff --git a/board-qemu/slof/Makefile b/board-qemu/slof/Makefile
index 2263e75..d7ed2d7 100644
--- a/board-qemu/slof/Makefile
+++ b/board-qemu/slof/Makefile
@@ -99,6 +99,7 @@ OF_FFS_FILES = \
$(SLOFCMNDIR)/fs/graphics.fs \
$(SLOFCMNDIR)/fs/generic-disk.fs \
$(SLOFCMNDIR)/fs/dma-function.fs \
+ $(SLOFCMNDIR)/fs/dma-instance-function.fs \
$(SLOFCMNDIR)/fs/pci-device.fs \
$(SLOFCMNDIR)/fs/pci-bridge.fs \
$(SLOFCMNDIR)/fs/pci-properties.fs \
diff --git a/board-qemu/slof/OF.fs b/board-qemu/slof/OF.fs
index a85f6c5..3e117ad 100644
--- a/board-qemu/slof/OF.fs
+++ b/board-qemu/slof/OF.fs
@@ -143,6 +143,9 @@ check-for-nvramrc
8a0 cp
+\ For DMA functions used by client/package instances.
+#include "dma-instance-function.fs"
+
\ The client interface.
#include "client.fs"
\ ELF binary file format.
diff --git a/slof/fs/dma-instance-function.fs b/slof/fs/dma-instance-function.fs
new file mode 100644
index 0000000..6b8f8a0
--- /dev/null
+++ b/slof/fs/dma-instance-function.fs
@@ -0,0 +1,28 @@
+\ ****************************************************************************/
+\ * Copyright (c) 2019 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
+\ ****************************************************************************/
+
+\ DMA memory allocation functions
+: dma-alloc ( size -- virt )
+ s" dma-alloc" $call-parent
+;
+
+: dma-free ( virt size -- )
+ s" dma-free" $call-parent
+;
+
+: dma-map-in ( virt size cacheable? -- devaddr )
+ s" dma-map-in" $call-parent
+;
+
+: dma-map-out ( virt devaddr size -- )
+ s" dma-map-out" $call-parent
+;