RealView.py (13532:b1cacf73cd4e) RealView.py (13636:3b55e4bae1d8)
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

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

488 node.append(FdtPropertyStrings("status", ["disabled"]))
489
490 yield node
491
492class RealView(Platform):
493 type = 'RealView'
494 cxx_header = "dev/arm/realview.hh"
495 system = Param.System(Parent.any, "system")
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

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

488 node.append(FdtPropertyStrings("status", ["disabled"]))
489
490 yield node
491
492class RealView(Platform):
493 type = 'RealView'
494 cxx_header = "dev/arm/realview.hh"
495 system = Param.System(Parent.any, "system")
496 _mem_regions = [(Addr(0), Addr('256MB'))]
496 _mem_regions = [ AddrRange(0, size='256MB') ]
497
498 def _on_chip_devices(self):
499 return []
500
501 def _off_chip_devices(self):
502 return []
503
504 _off_chip_ranges = []

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

698 self.sci_fake.clk_domain = clkdomain
699 self.aaci_fake.clk_domain = clkdomain
700 self.mmc_fake.clk_domain = clkdomain
701 self.rtc.clk_domain = clkdomain
702 self.flash_fake.clk_domain = clkdomain
703 self.energy_ctrl.clk_domain = clkdomain
704
705class VExpress_EMM(RealView):
497
498 def _on_chip_devices(self):
499 return []
500
501 def _off_chip_devices(self):
502 return []
503
504 _off_chip_ranges = []

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

698 self.sci_fake.clk_domain = clkdomain
699 self.aaci_fake.clk_domain = clkdomain
700 self.mmc_fake.clk_domain = clkdomain
701 self.rtc.clk_domain = clkdomain
702 self.flash_fake.clk_domain = clkdomain
703 self.energy_ctrl.clk_domain = clkdomain
704
705class VExpress_EMM(RealView):
706 _mem_regions = [(Addr('2GB'), Addr('2GB'))]
706 _mem_regions = [ AddrRange('2GB', size='2GB') ]
707
708 # Ranges based on excluding what is part of on-chip I/O (gic,
709 # a9scu)
710 _off_chip_ranges = [AddrRange(0x2F000000, size='16MB'),
711 AddrRange(0x30000000, size='256MB'),
712 AddrRange(0x40000000, size='512MB'),
713 AddrRange(0x18000000, size='64MB'),
714 AddrRange(0x1C000000, size='64MB')]

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

832 cur_sys.bootmem.port = mem_bus.master
833 if not cur_sys.boot_loader:
834 cur_sys.boot_loader = loc('boot_emm.arm')
835 cur_sys.atags_addr = 0x8000000
836 cur_sys.load_offset = 0x80000000
837
838class VExpress_EMM64(VExpress_EMM):
839 # Three memory regions are specified totalling 512GB
707
708 # Ranges based on excluding what is part of on-chip I/O (gic,
709 # a9scu)
710 _off_chip_ranges = [AddrRange(0x2F000000, size='16MB'),
711 AddrRange(0x30000000, size='256MB'),
712 AddrRange(0x40000000, size='512MB'),
713 AddrRange(0x18000000, size='64MB'),
714 AddrRange(0x1C000000, size='64MB')]

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

832 cur_sys.bootmem.port = mem_bus.master
833 if not cur_sys.boot_loader:
834 cur_sys.boot_loader = loc('boot_emm.arm')
835 cur_sys.atags_addr = 0x8000000
836 cur_sys.load_offset = 0x80000000
837
838class VExpress_EMM64(VExpress_EMM):
839 # Three memory regions are specified totalling 512GB
840 _mem_regions = [(Addr('2GB'), Addr('2GB')), (Addr('34GB'), Addr('30GB')),
841 (Addr('512GB'), Addr('480GB'))]
840 _mem_regions = [ AddrRange('2GB', size='2GB'),
841 AddrRange('34GB', size='30GB'),
842 AddrRange('512GB', size='480GB') ]
842 pci_host = GenericPciHost(
843 conf_base=0x30000000, conf_size='256MB', conf_device_bits=12,
844 pci_pio_base=0x2f000000)
845
846 def setupBootLoader(self, mem_bus, cur_sys, loc):
847 cur_sys.bootmem = SimpleMemory(range=AddrRange(0, size='64MB'),
848 conf_table_reported=False)
849 if mem_bus is not None:

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

946 96- 98: GPU (reserved)
947 100-103: PCI
948 256-319: MSI frame 0 (gem5-specific, SPIs)
949 320-511: Unused
950
951 """
952
953 # Everything above 2GiB is memory
843 pci_host = GenericPciHost(
844 conf_base=0x30000000, conf_size='256MB', conf_device_bits=12,
845 pci_pio_base=0x2f000000)
846
847 def setupBootLoader(self, mem_bus, cur_sys, loc):
848 cur_sys.bootmem = SimpleMemory(range=AddrRange(0, size='64MB'),
849 conf_table_reported=False)
850 if mem_bus is not None:

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

947 96- 98: GPU (reserved)
948 100-103: PCI
949 256-319: MSI frame 0 (gem5-specific, SPIs)
950 320-511: Unused
951
952 """
953
954 # Everything above 2GiB is memory
954 _mem_regions = [(Addr('2GB'), Addr('510GB'))]
955 _mem_regions = [ AddrRange('2GB', size='510GB') ]
955
956 _off_chip_ranges = [
957 # CS1-CS5
958 AddrRange(0x0c000000, 0x1fffffff),
959 # External AXI interface (PCI)
960 AddrRange(0x2f000000, 0x7fffffff),
961 ]
962

--- 136 unchanged lines hidden ---
956
957 _off_chip_ranges = [
958 # CS1-CS5
959 AddrRange(0x0c000000, 0x1fffffff),
960 # External AXI interface (PCI)
961 AddrRange(0x2f000000, 0x7fffffff),
962 ]
963

--- 136 unchanged lines hidden ---