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