1# Copyright (c) 2010-2012 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 --- 168 unchanged lines hidden (view full) --- 177 self.nvram_bin = binary('nvram1') 178 self.hypervisor_desc_bin = binary('1up-hv.bin') 179 self.partition_desc_bin = binary('1up-md.bin') 180 181 self.system_port = self.membus.slave 182 183 return self 184 |
185def makeArmSystem(mem_mode, machine_type, num_cpus = 1, mdesc = None, |
186 dtb_filename = None, bare_metal=False): 187 assert machine_type 188 189 if bare_metal: 190 self = ArmSystem() 191 else: 192 self = LinuxArmSystem() 193 --- 10 unchanged lines hidden (view full) --- 204 self.bridge.slave = self.membus.master 205 206 self.mem_mode = mem_mode 207 208 if machine_type == "RealView_PBX": 209 self.realview = RealViewPBX() 210 elif machine_type == "RealView_EB": 211 self.realview = RealViewEB() |
212 elif machine_type == "VExpress_EMM": 213 self.realview = VExpress_EMM() |
214 if not dtb_filename: 215 dtb_filename = 'vexpress.aarch32.ll_20131205.0-gem5.%dcpu.dtb' % num_cpus |
216 elif machine_type == "VExpress_EMM64": 217 self.realview = VExpress_EMM64() |
218 if os.path.split(mdesc.disk())[-1] == 'linux-aarch32-ael.img': 219 print "Selected 64-bit ARM architecture, updating default disk image..." 220 mdesc.diskname = 'linaro-minimal-aarch64.img' 221 if not dtb_filename: 222 dtb_filename = 'vexpress.aarch64.20140821.dtb' |
223 else: 224 print "Unknown Machine Type" 225 sys.exit(1) 226 227 self.cf0 = CowIdeDisk(driveID='master') 228 self.cf0.childImage(mdesc.disk()) 229 230 # Attach any PCI devices this platform supports --- 22 unchanged lines hidden (view full) --- 253 " the amount of DRAM you've selected. Please try" \ 254 " another platform") 255 256 if bare_metal: 257 # EOT character on UART will end the simulation 258 self.realview.uart.end_on_eot = True 259 else: 260 if machine_type == "VExpress_EMM64": |
261 self.kernel = binary('vmlinux.aarch64.20140821') |
262 elif machine_type == "VExpress_EMM": |
263 self.kernel = binary('vmlinux.aarch32.ll_20131205.0-gem5') |
264 else: 265 self.kernel = binary('vmlinux.arm.smp.fb.2.6.38.8') 266 267 if dtb_filename: 268 self.dtb_filename = binary(dtb_filename) 269 self.machine_type = machine_type 270 # Ensure that writes to the UART actually go out early in the boot 271 boot_flags = 'earlyprintk=pl011,0x1c090000 console=ttyAMA0 ' + \ --- 305 unchanged lines hidden --- |