Deleted Added
sdiff udiff text old ( 12598:b80b2d9a251b ) new ( 12659:3b44e9f66aac )
full compact
1# Copyright (c) 2009-2018 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

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

57from SimpleMemory import SimpleMemory
58from Gic import *
59from EnergyCtrl import EnergyCtrl
60from ClockedObject import ClockedObject
61from ClockDomain import SrcClockDomain
62from SubSystem import SubSystem
63from Graphics import ImageFormat
64from ClockedObject import ClockedObject
65
66# Platforms with KVM support should generally use in-kernel GIC
67# emulation. Use a GIC model that automatically switches between
68# gem5's GIC model and KVM's GIC model if KVM is available.
69try:
70 from KvmGic import MuxingKvmGic
71 kvm_gicv2_class = MuxingKvmGic
72except ImportError:

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

460 clock = state.phandle(self.clk_domain.unproxy(self))
461 node.append(FdtPropertyWords("clocks", clock))
462
463 yield node
464
465class Pl050(AmbaIntDevice):
466 type = 'Pl050'
467 cxx_header = "dev/arm/kmi.hh"
468 vnc = Param.VncInput(Parent.any, "Vnc server for remote frame buffer display")
469 is_mouse = Param.Bool(False, "Is this interface a mouse, if not a keyboard")
470 int_delay = '1us'
471 amba_id = 0x00141050
472
473 def generateDeviceTree(self, state):
474 node = self.generateBasicPioDeviceNode(state, 'kmi', self.pio_addr,
475 0x1000, [int(self.int_num)])
476
477 node.appendCompatible(["arm,pl050", "arm,primecell"])
478 clock = state.phandle(self.clk_domain.unproxy(self))
479 node.append(FdtPropertyWords("clocks", clock))
480

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

619 conf_base=0x30000000, conf_size='256MB', conf_device_bits=16,
620 pci_pio_base=0)
621 timer0 = Sp804(int_num0=36, int_num1=36, pio_addr=0x10011000)
622 timer1 = Sp804(int_num0=37, int_num1=37, pio_addr=0x10012000)
623 global_timer = A9GlobalTimer(int_num=27, pio_addr=0x1f000200)
624 local_cpu_timer = CpuLocalTimer(int_num_timer=29, int_num_watchdog=30,
625 pio_addr=0x1f000600)
626 clcd = Pl111(pio_addr=0x10020000, int_num=55)
627 kmi0 = Pl050(pio_addr=0x10006000, int_num=52)
628 kmi1 = Pl050(pio_addr=0x10007000, int_num=53, is_mouse=True)
629 a9scu = A9SCU(pio_addr=0x1f000000)
630 cf_ctrl = IdeController(disks=[], pci_func=0, pci_dev=7, pci_bus=2,
631 io_shift = 1, ctrl_offset = 2, Command = 0x1,
632 BAR0 = 0x18000000, BAR0Size = '16B',
633 BAR1 = 0x18000100, BAR1Size = '1B',
634 BAR0LegacyIO = True, BAR1LegacyIO = True)
635
636

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

748 uart = Pl011(pio_addr=0x10009000, int_num=44)
749 realview_io = RealViewCtrl(pio_addr=0x10000000, idreg=0x01400500)
750 mcc = VExpressMCC()
751 dcc = CoreTile2A15DCC()
752 gic = Pl390(dist_addr=0x10041000, cpu_addr=0x10040000)
753 timer0 = Sp804(int_num0=36, int_num1=36, pio_addr=0x10011000)
754 timer1 = Sp804(int_num0=37, int_num1=37, pio_addr=0x10012000)
755 clcd = Pl111(pio_addr=0x10020000, int_num=23)
756 kmi0 = Pl050(pio_addr=0x10006000, int_num=20)
757 kmi1 = Pl050(pio_addr=0x10007000, int_num=21, is_mouse=True)
758
759 l2x0_fake = IsaFake(pio_addr=0x1f002000, pio_size=0xfff, warn_access="1")
760 flash_fake = IsaFake(pio_addr=0x40000000, pio_size=0x20000000-1,
761 fake_mem=True)
762 dmac_fake = AmbaFake(pio_addr=0x10030000)
763 uart1_fake = AmbaFake(pio_addr=0x1000a000)
764 uart2_fake = AmbaFake(pio_addr=0x1000b000)
765 uart3_fake = AmbaFake(pio_addr=0x1000c000)

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

899 pci_host = GenericPciHost(
900 conf_base=0x30000000, conf_size='256MB', conf_device_bits=16,
901 pci_pio_base=0)
902
903 generic_timer = GenericTimer(int_phys=29, int_virt=27)
904 timer0 = Sp804(int_num0=34, int_num1=34, pio_addr=0x1C110000, clock0='1MHz', clock1='1MHz')
905 timer1 = Sp804(int_num0=35, int_num1=35, pio_addr=0x1C120000, clock0='1MHz', clock1='1MHz')
906 clcd = Pl111(pio_addr=0x1c1f0000, int_num=46)
907 kmi0 = Pl050(pio_addr=0x1c060000, int_num=44)
908 kmi1 = Pl050(pio_addr=0x1c070000, int_num=45, is_mouse=True)
909 cf_ctrl = IdeController(disks=[], pci_func=0, pci_dev=0, pci_bus=2,
910 io_shift = 2, ctrl_offset = 2, Command = 0x1,
911 BAR0 = 0x1C1A0000, BAR0Size = '256B',
912 BAR1 = 0x1C1A0100, BAR1Size = '4096B',
913 BAR0LegacyIO = True, BAR1LegacyIO = True)
914
915 vram = SimpleMemory(range = AddrRange(0x18000000, size='32MB'),
916 conf_table_reported = False)

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

1131 ]
1132
1133 ### Off-chip devices ###
1134 clock24MHz = SrcClockDomain(clock="24MHz",
1135 voltage_domain=VoltageDomain(voltage="3.3V"))
1136
1137 uart0 = Pl011(pio_addr=0x1c090000, int_num=37)
1138
1139 kmi0 = Pl050(pio_addr=0x1c060000, int_num=44)
1140 kmi1 = Pl050(pio_addr=0x1c070000, int_num=45, is_mouse=True)
1141
1142 rtc = PL031(pio_addr=0x1c170000, int_num=36)
1143
1144 ### gem5-specific off-chip devices ###
1145 pci_host = GenericArmPciHost(
1146 conf_base=0x30000000, conf_size='256MB', conf_device_bits=12,
1147 pci_pio_base=0x2f000000,
1148 int_policy="ARM_PCI_INT_DEV", int_base=100, int_count=4)

--- 48 unchanged lines hidden ---