Deleted Added
sdiff udiff text old ( 10438:08fa6ad59594 ) new ( 10507:f33fab6214c4 )
full compact
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

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

225 # Attach any PCI devices this platform supports
226 self.realview.attachPciDevices()
227 # default to an IDE controller rather than a CF one
228 try:
229 self.realview.ide.disks = [self.cf0]
230 except:
231 self.realview.cf_ctrl.disks = [self.cf0]
232
233 if bare_metal:
234 # EOT character on UART will end the simulation
235 self.realview.uart.end_on_eot = True
236 self.mem_ranges = [AddrRange(self.realview.mem_start_addr,
237 size = mdesc.mem())]
238 else:
239 if machine_type == "VExpress_EMM64":
240 self.kernel = binary('vmlinux-3.16-aarch64-vexpress-emm64-pcie')
241 elif machine_type == "VExpress_EMM":
242 self.kernel = binary('vmlinux-3.3-arm-vexpress-emm-pcie')
243 else:
244 self.kernel = binary('vmlinux.arm.smp.fb.2.6.38.8')
245
246 if dtb_filename:
247 self.dtb_filename = binary(dtb_filename)
248 self.machine_type = machine_type
249 # Ensure that writes to the UART actually go out early in the boot
250 boot_flags = 'earlyprintk=pl011,0x1c090000 console=ttyAMA0 ' + \
251 'lpj=19988480 norandmaps rw loglevel=8 ' + \
252 'mem=%s root=/dev/sda1' % mdesc.mem()
253
254 self.mem_ranges = []
255 size_remain = long(Addr(mdesc.mem()))
256 for region in self.realview._mem_regions:
257 if size_remain > long(region[1]):
258 self.mem_ranges.append(AddrRange(region[0], size=region[1]))
259 size_remain = size_remain - long(region[1])
260 else:
261 self.mem_ranges.append(AddrRange(region[0], size=size_remain))
262 size_remain = 0
263 break
264 warn("Memory size specified spans more than one region. Creating" \
265 " another memory controller for that range.")
266
267 if size_remain > 0:
268 fatal("The currently selected ARM platforms doesn't support" \
269 " the amount of DRAM you've selected. Please try" \
270 " another platform")
271
272
273 self.realview.setupBootLoader(self.membus, self, binary)
274 self.gic_cpu_addr = self.realview.gic.cpu_addr
275 self.flags_addr = self.realview.realview_io.pio_addr + 0x30
276
277 if mdesc.disk().lower().count('android'):
278 boot_flags += " init=/init "
279 self.boot_osflags = boot_flags
280 self.realview.attachOnChipIO(self.membus, self.bridge)

--- 294 unchanged lines hidden ---