RealView.py (11668:380375085863) RealView.py (11841:16dec978b549)
1# Copyright (c) 2009-2015 ARM Limited
1# Copyright (c) 2009-2017 ARM Limited
2# All rights reserved.
3#
4# The license below extends only to copyright in the software and shall
5# not be construed as granting a license to any other intellectual
6# property including but not limited to intellectual property relating
7# to a hardware implementation of the functionality of the software
8# licensed hereunder. You may use the software subject to the license
9# terms below provided that you ensure that this notice is replicated

--- 42 unchanged lines hidden (view full) ---

52from Terminal import Terminal
53from Uart import Uart
54from SimpleMemory import SimpleMemory
55from Gic import *
56from EnergyCtrl import EnergyCtrl
57from ClockDomain import SrcClockDomain
58from SubSystem import SubSystem
59
2# All rights reserved.
3#
4# The license below extends only to copyright in the software and shall
5# not be construed as granting a license to any other intellectual
6# property including but not limited to intellectual property relating
7# to a hardware implementation of the functionality of the software
8# licensed hereunder. You may use the software subject to the license
9# terms below provided that you ensure that this notice is replicated

--- 42 unchanged lines hidden (view full) ---

52from Terminal import Terminal
53from Uart import Uart
54from SimpleMemory import SimpleMemory
55from Gic import *
56from EnergyCtrl import EnergyCtrl
57from ClockDomain import SrcClockDomain
58from SubSystem import SubSystem
59
60# Platforms with KVM support should generally use in-kernel GIC
61# emulation. Use a GIC model that automatically switches between
62# gem5's GIC model and KVM's GIC model if KVM is available.
63try:
64 from KvmGic import MuxingKvmGic
65 kvm_gicv2_class = MuxingKvmGic
66except ImportError:
67 # KVM support wasn't compiled into gem5. Fallback to a
68 # software-only GIC.
69 kvm_gicv2_class = Pl390
70 pass
71
60class AmbaPioDevice(BasicPioDevice):
61 type = 'AmbaPioDevice'
62 abstract = True
63 cxx_header = "dev/arm/amba_device.hh"
64 amba_id = Param.UInt32("ID of AMBA device for kernel detection")
65
66class AmbaIntDevice(AmbaPioDevice):
67 type = 'AmbaIntDevice'

--- 810 unchanged lines hidden (view full) ---

878
879 # Platform control device (off-chip)
880 realview_io = RealViewCtrl(proc_id0=0x14000000, proc_id1=0x14000000,
881 idreg=0x02250000, pio_addr=0x1c010000)
882 mcc = VExpressMCC()
883 dcc = CoreTile2A15DCC()
884
885 ### On-chip devices ###
72class AmbaPioDevice(BasicPioDevice):
73 type = 'AmbaPioDevice'
74 abstract = True
75 cxx_header = "dev/arm/amba_device.hh"
76 amba_id = Param.UInt32("ID of AMBA device for kernel detection")
77
78class AmbaIntDevice(AmbaPioDevice):
79 type = 'AmbaIntDevice'

--- 810 unchanged lines hidden (view full) ---

890
891 # Platform control device (off-chip)
892 realview_io = RealViewCtrl(proc_id0=0x14000000, proc_id1=0x14000000,
893 idreg=0x02250000, pio_addr=0x1c010000)
894 mcc = VExpressMCC()
895 dcc = CoreTile2A15DCC()
896
897 ### On-chip devices ###
886 gic = Pl390(dist_addr=0x2c001000, cpu_addr=0x2c002000, it_lines=512)
898 gic = kvm_gicv2_class(dist_addr=0x2c001000, cpu_addr=0x2c002000,
899 it_lines=512)
887 vgic = VGic(vcpu_addr=0x2c006000, hv_addr=0x2c004000, ppint=25)
888 gicv2m = Gicv2m()
889 gicv2m.frames = [
890 Gicv2mFrame(spi_base=256, spi_len=64, addr=0x2c1c0000),
891 ]
892
893 generic_timer = GenericTimer(int_phys=29, int_virt=27)
894

--- 49 unchanged lines hidden ---
900 vgic = VGic(vcpu_addr=0x2c006000, hv_addr=0x2c004000, ppint=25)
901 gicv2m = Gicv2m()
902 gicv2m.frames = [
903 Gicv2mFrame(spi_base=256, spi_len=64, addr=0x2c1c0000),
904 ]
905
906 generic_timer = GenericTimer(int_phys=29, int_virt=27)
907

--- 49 unchanged lines hidden ---