// See LICENSE.SiFive for license details. package freechips.rocketchip.system import Chisel._ import freechips.rocketchip.config.Parameters import freechips.rocketchip.subsystem._ import freechips.rocketchip.devices.tilelink._ import freechips.rocketchip.util.DontTouch /** Example Top with periphery devices and ports, and a Rocket subsystem */ class ExampleRocketSystem(implicit p: Parameters) extends RocketSubsystem with HasAsyncExtInterrupts with HasMasterAXI4MemPort with HasMasterAXI4MMIOPort with HasSlaveAXI4Port with HasPeripheryBootROM with HasSystemErrorSlave { override lazy val module = new ExampleRocketSystemModuleImp(this) } class ExampleRocketSystemModuleImp[+L <: ExampleRocketSystem](_outer: L) extends RocketSubsystemModuleImp(_outer) with HasRTCModuleImp with HasExtInterruptsModuleImp with HasMasterAXI4MemPortModuleImp with HasMasterAXI4MMIOPortModuleImp with HasSlaveAXI4PortModuleImp with HasPeripheryBootROMModuleImp with DontTouch