diff options
author | Sudhanshu Jha <sudhanshu.jha@arm.com> | 2017-02-27 10:29:56 +0000 |
---|---|---|
committer | Andreas Sandberg <andreas.sandberg@arm.com> | 2017-03-07 11:14:28 +0000 |
commit | 82a8230aa761e193a91ade0fa3c109a5c0f08aed (patch) | |
tree | 58ae4c67710fecafd02eb449e622d7f3beb202ba /src/dev/dma_device.hh | |
parent | 746e2f3c27ad83c36b7bc3b8bd3c92004fcf995b (diff) | |
download | gem5-82a8230aa761e193a91ade0fa3c109a5c0f08aed.tar.xz |
dev, kvm: Add a fast KVM-aware mode in DmaReadFifo
Use a fast, functional, read operations keep the DMA FIFO full when
running in KVM mode.
Change-Id: I5b378c2fb6a1d3e687cef15e807e63a0a53a60e2
Signed-off-by: Andreas Sandberg <andreas.sandberg@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/2226
Reviewed-by: Rahul Thakur <rjthakur@google.com>
Reviewed-by: Jason Lowe-Power <jason@lowepower.com>
Maintainer: Jason Lowe-Power <jason@lowepower.com>
Diffstat (limited to 'src/dev/dma_device.hh')
-rw-r--r-- | src/dev/dma_device.hh | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/dev/dma_device.hh b/src/dev/dma_device.hh index 4e66b3456..4a1946af5 100644 --- a/src/dev/dma_device.hh +++ b/src/dev/dma_device.hh @@ -1,5 +1,5 @@ /* - * Copyright (c) 2012-2013, 2015 ARM Limited + * Copyright (c) 2012-2013, 2015, 2017 ARM Limited * All rights reserved. * * The license below extends only to copyright in the software and shall @@ -494,9 +494,15 @@ class DmaReadFifo : public Drainable, public Serializable /** Handle pending requests that have been flagged as done. */ void handlePending(); - /** Try to issue new DMA requests */ + /** Try to issue new DMA requests or bypass DMA requests*/ void resumeFill(); + /** Try to issue new DMA requests during normal execution*/ + void resumeFillTiming(); + + /** Try to bypass DMA requests in KVM execution mode */ + void resumeFillFunctional(); + private: // Internal state Fifo<uint8_t> buffer; |