diff options
author | Michael Roth <mdroth@linux.vnet.ibm.com> | 2019-12-04 13:08:33 +1100 |
---|---|---|
committer | Alexey Kardashevskiy <aik@ozlabs.ru> | 2019-12-05 14:41:07 +1100 |
commit | 48b86c575ff730f6d8ca5071fffdf7c0f4706695 (patch) | |
tree | 82a8f1697beb5eaf6a0fb82889b06e2bdafd8941 | |
parent | 1aeb125770c4c161394b851b0eff982292702c23 (diff) | |
download | SLOF-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/Makefile | 1 | ||||
-rw-r--r-- | board-qemu/slof/OF.fs | 3 | ||||
-rw-r--r-- | slof/fs/dma-instance-function.fs | 28 |
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 +; |