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

--- 294 unchanged lines hidden ---