arch-arm, configs: Treat the bootloader rom as cacheable memory
Prior to this changeset the bootloader rom (instantiated as a SimpleMemory) in ruby Arm systems was treated as an IO device and it was fronted by a DMA controller. This changeset moves the bootloader rom and adds it to the system as another memory with a dedicated directory controller. Change-Id: I094fed031cdef7f77a939d94f948d967b349b7e0 Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com> Reviewed-on: https://gem5-review.googlesource.com/8741 Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Maintainer: Jason Lowe-Power <jason@lowepower.com>
This commit is contained in:
@@ -42,7 +42,8 @@ class L1Cache(RubyCache): pass
|
||||
def define_options(parser):
|
||||
return
|
||||
|
||||
def create_system(options, full_system, system, dma_ports, ruby_system):
|
||||
def create_system(options, full_system, system, dma_ports, bootmem,
|
||||
ruby_system):
|
||||
|
||||
if buildEnv['PROTOCOL'] != 'MI_example':
|
||||
panic("This script requires the MI_example protocol to be built.")
|
||||
@@ -125,8 +126,11 @@ def create_system(options, full_system, system, dma_ports, ruby_system):
|
||||
clk_domain=ruby_system.clk_domain,
|
||||
clk_divider=3)
|
||||
|
||||
dir_cntrl_nodes = create_directories(options, system.mem_ranges,
|
||||
ruby_system)
|
||||
mem_dir_cntrl_nodes, rom_dir_cntrl_node = create_directories(
|
||||
options, system.mem_ranges, bootmem, ruby_system, system)
|
||||
dir_cntrl_nodes = mem_dir_cntrl_nodes[:]
|
||||
if rom_dir_cntrl_node is not None:
|
||||
dir_cntrl_nodes.append(rom_dir_cntrl_node)
|
||||
for dir_cntrl in dir_cntrl_nodes:
|
||||
# Connect the directory controllers and the network
|
||||
dir_cntrl.requestToDir = MessageBuffer(ordered = True)
|
||||
@@ -188,4 +192,4 @@ def create_system(options, full_system, system, dma_ports, ruby_system):
|
||||
|
||||
ruby_system.network.number_of_virtual_networks = 5
|
||||
topology = create_topology(all_cntrls, options)
|
||||
return (cpu_sequencers, dir_cntrl_nodes, topology)
|
||||
return (cpu_sequencers, mem_dir_cntrl_nodes, topology)
|
||||
|
||||
Reference in New Issue
Block a user