VirtIOMMIO.py (12740:beed0805c651) | VirtIOMMIO.py (13665:9c7fe3811b88) |
---|---|
1# -*- mode:python -*- 2 3# Copyright (c) 2014, 2016-2018 ARM Limited 4# All rights reserved. 5# 6# The license below extends only to copyright in the software and shall 7# not be construed as granting a license to any other intellectual 8# property including but not limited to intellectual property relating --- 27 unchanged lines hidden (view full) --- 36# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 37# 38# Authors: Andreas Sandberg 39 40from m5.SimObject import SimObject 41from m5.params import * 42from m5.proxy import * 43 | 1# -*- mode:python -*- 2 3# Copyright (c) 2014, 2016-2018 ARM Limited 4# All rights reserved. 5# 6# The license below extends only to copyright in the software and shall 7# not be construed as granting a license to any other intellectual 8# property including but not limited to intellectual property relating --- 27 unchanged lines hidden (view full) --- 36# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 37# 38# Authors: Andreas Sandberg 39 40from m5.SimObject import SimObject 41from m5.params import * 42from m5.proxy import * 43 |
44from Device import BasicPioDevice 45from Gic import ArmInterruptPin 46from VirtIO import VirtIODeviceBase, VirtIODummyDevice | 44from m5.objects.Device import BasicPioDevice 45from m5.objects.Gic import ArmInterruptPin 46from m5.objects.VirtIO import VirtIODeviceBase, VirtIODummyDevice |
47 48class MmioVirtIO(BasicPioDevice): 49 type = 'MmioVirtIO' 50 cxx_header = 'dev/arm/vio_mmio.hh' 51 52 pio_size = Param.Addr(4096, "IO range") 53 interrupt = Param.ArmInterruptPin("Interrupt to use for this device") 54 55 vio = Param.VirtIODeviceBase(VirtIODummyDevice(), "VirtIO device") 56 57 def generateDeviceTree(self, state): 58 node = self.generateBasicPioDeviceNode(state, 'virtio', self.pio_addr, 59 int(self.pio_size), [ 60 int(self.interrupt.num), 61 ]) 62 node.appendCompatible(["virtio,mmio"]) 63 yield node | 47 48class MmioVirtIO(BasicPioDevice): 49 type = 'MmioVirtIO' 50 cxx_header = 'dev/arm/vio_mmio.hh' 51 52 pio_size = Param.Addr(4096, "IO range") 53 interrupt = Param.ArmInterruptPin("Interrupt to use for this device") 54 55 vio = Param.VirtIODeviceBase(VirtIODummyDevice(), "VirtIO device") 56 57 def generateDeviceTree(self, state): 58 node = self.generateBasicPioDeviceNode(state, 'virtio', self.pio_addr, 59 int(self.pio_size), [ 60 int(self.interrupt.num), 61 ]) 62 node.appendCompatible(["virtio,mmio"]) 63 yield node |