[SLOF] [PATCH slof v4 4/5] dma: Define default dma methods for using by client/package instances

Alexey Kardashevskiy aik at ozlabs.ru
Wed Dec 4 14:21:37 AEDT 2019


They call parent node (which is a device) methods.

Signed-off-by: Michael Roth <mdroth at linux.vnet.ibm.com>
Signed-off-by: Alexey Kardashevskiy <aik at ozlabs.ru>
---
 board-qemu/slof/Makefile         |  1 +
 board-qemu/slof/OF.fs            |  3 +++
 slof/fs/dma-instance-function.fs | 28 ++++++++++++++++++++++++++++
 3 files changed, 32 insertions(+)
 create mode 100644 slof/fs/dma-instance-function.fs

diff --git a/board-qemu/slof/Makefile b/board-qemu/slof/Makefile
index 2263e751bde9..d7ed2d7a6f18 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 a85f6c558e67..3e117ad03e09 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 000000000000..6b8f8a06fcba
--- /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
+;
-- 
2.17.1



More information about the SLOF mailing list