MipsSystem.py revision 10249
15222Sksewell@umich.edu# -*- mode:python -*- 25222Sksewell@umich.edu 35222Sksewell@umich.edu# Copyright (c) 2007 MIPS Technologies, Inc. 45222Sksewell@umich.edu# All rights reserved. 55222Sksewell@umich.edu# 65222Sksewell@umich.edu# Redistribution and use in source and binary forms, with or without 75222Sksewell@umich.edu# modification, are permitted provided that the following conditions are 85222Sksewell@umich.edu# met: redistributions of source code must retain the above copyright 95222Sksewell@umich.edu# notice, this list of conditions and the following disclaimer; 105222Sksewell@umich.edu# redistributions in binary form must reproduce the above copyright 115222Sksewell@umich.edu# notice, this list of conditions and the following disclaimer in the 125222Sksewell@umich.edu# documentation and/or other materials provided with the distribution; 135222Sksewell@umich.edu# neither the name of the copyright holders nor the names of its 145222Sksewell@umich.edu# contributors may be used to endorse or promote products derived from 155222Sksewell@umich.edu# this software without specific prior written permission. 165222Sksewell@umich.edu# 175222Sksewell@umich.edu# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 185222Sksewell@umich.edu# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 195222Sksewell@umich.edu# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 205222Sksewell@umich.edu# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 215222Sksewell@umich.edu# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 225222Sksewell@umich.edu# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 235222Sksewell@umich.edu# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 245222Sksewell@umich.edu# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 255222Sksewell@umich.edu# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 265222Sksewell@umich.edu# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 275222Sksewell@umich.edu# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 285222Sksewell@umich.edu# 295222Sksewell@umich.edu# Authors: Jaidev Patwardhan 305222Sksewell@umich.edu 316654Snate@binkert.orgfrom m5.defines import buildEnv 325222Sksewell@umich.edufrom m5.params import * 335222Sksewell@umich.edufrom m5.proxy import * 346654Snate@binkert.org 355222Sksewell@umich.edufrom System import System 365222Sksewell@umich.edu 375222Sksewell@umich.educlass MipsSystem(System): 385222Sksewell@umich.edu type = 'MipsSystem' 399338SAndreas.Sandberg@arm.com cxx_header = 'arch/mips/system.hh' 405222Sksewell@umich.edu console = Param.String("file that contains the console code") 415222Sksewell@umich.edu bare_iron = Param.Bool(False, "Using Bare Iron Mode?") 425222Sksewell@umich.edu hex_file_name = Param.String("test.hex","hex file that contains [address,data] pairs") 435222Sksewell@umich.edu system_type = Param.UInt64("Type of system we are emulating") 445222Sksewell@umich.edu system_rev = Param.UInt64("Revision of system we are emulating") 457580SAli.Saidi@arm.com load_addr_mask = 0xffffffffff 465222Sksewell@umich.edu 478775Sgblack@eecs.umich.educlass LinuxMipsSystem(MipsSystem): 488775Sgblack@eecs.umich.edu type = 'LinuxMipsSystem' 499338SAndreas.Sandberg@arm.com cxx_header = 'arch/mips/linux/system.hh' 508775Sgblack@eecs.umich.edu system_type = 34 518775Sgblack@eecs.umich.edu system_rev = 1 << 10 525222Sksewell@umich.edu 5310249Sstephan.diestelhorst@arm.com boot_cpu_frequency = Param.Frequency(Self.cpu[0].clk_domain.clock[0] 5410249Sstephan.diestelhorst@arm.com .frequency, 558775Sgblack@eecs.umich.edu "boot processor frequency") 568773Sgblack@eecs.umich.edu 578775Sgblack@eecs.umich.educlass BareIronMipsSystem(MipsSystem): 588775Sgblack@eecs.umich.edu type = 'BareIronMipsSystem' 599338SAndreas.Sandberg@arm.com cxx_header = 'arch/mips/bare_iron/system.hh' 608775Sgblack@eecs.umich.edu bare_iron = True 618775Sgblack@eecs.umich.edu system_type = 34 628775Sgblack@eecs.umich.edu system_rev = 1 << 10 638775Sgblack@eecs.umich.edu hex_file_name = Param.String('test.hex',"hex file that contains [address,data] pairs") 645222Sksewell@umich.edu 65