Bump testchipip | Add custom boot pin
This commit is contained in:
@@ -13,6 +13,8 @@ import freechips.rocketchip.devices.tilelink._
|
|||||||
|
|
||||||
// DOC include start: DigitalTop
|
// DOC include start: DigitalTop
|
||||||
class DigitalTop(implicit p: Parameters) extends ChipyardSystem
|
class DigitalTop(implicit p: Parameters) extends ChipyardSystem
|
||||||
|
with testchipip.CanHavePeripheryCustomBootPin // Enables optional custom boot pin
|
||||||
|
with testchipip.HasPeripheryBootAddrReg // Use programmable boot address register
|
||||||
with testchipip.CanHaveTraceIO // Enables optionally adding trace IO
|
with testchipip.CanHaveTraceIO // Enables optionally adding trace IO
|
||||||
with testchipip.CanHaveBackingScratchpad // Enables optionally adding a backing scratchpad
|
with testchipip.CanHaveBackingScratchpad // Enables optionally adding a backing scratchpad
|
||||||
with testchipip.CanHavePeripheryBlockDevice // Enables optionally adding the block device
|
with testchipip.CanHavePeripheryBlockDevice // Enables optionally adding the block device
|
||||||
|
|||||||
@@ -321,3 +321,9 @@ class WithSimDromajoBridge extends ComposeHarnessBinder({
|
|||||||
ports.map { p => p.traces.map(tileTrace => SimDromajoBridge(tileTrace)(system.p)) }
|
ports.map { p => p.traces.map(tileTrace => SimDromajoBridge(tileTrace)(system.p)) }
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
class WithTieOffCustomBootPin extends OverrideHarnessBinder({
|
||||||
|
(system: CanHavePeripheryCustomBootPin, th: HasHarnessSignalReferences, ports: Seq[Bool]) => {
|
||||||
|
ports.foreach(_ := false.B)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|||||||
@@ -372,6 +372,13 @@ class WithTraceIOPunchthrough extends OverrideIOBinder({
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
class WithCustomBootPin extends OverrideIOBinder({
|
||||||
|
(system: CanHavePeripheryCustomBootPin) => system.custom_boot_pin.map({ p =>
|
||||||
|
val sys = system.asInstanceOf[BaseSubsystem]
|
||||||
|
val (port, cells) = IOCell.generateIOFromSignal(p.getWrappedValue, "custom_boot", sys.p(IOCellKey), abstractResetAsAsync = true)
|
||||||
|
(Seq(port), cells)
|
||||||
|
}).getOrElse((Nil, Nil))
|
||||||
|
})
|
||||||
|
|
||||||
class WithDontTouchPorts extends OverrideIOBinder({
|
class WithDontTouchPorts extends OverrideIOBinder({
|
||||||
(system: DontTouch) => system.dontTouchPorts(); (Nil, Nil)
|
(system: DontTouch) => system.dontTouchPorts(); (Nil, Nil)
|
||||||
|
|||||||
@@ -21,6 +21,7 @@ class AbstractConfig extends Config(
|
|||||||
new chipyard.harness.WithSimAXIMMIO ++ // add SimAXIMem for axi4 mmio port, if enabled
|
new chipyard.harness.WithSimAXIMMIO ++ // add SimAXIMem for axi4 mmio port, if enabled
|
||||||
new chipyard.harness.WithTieOffInterrupts ++ // tie-off interrupt ports, if present
|
new chipyard.harness.WithTieOffInterrupts ++ // tie-off interrupt ports, if present
|
||||||
new chipyard.harness.WithTieOffL2FBusAXI ++ // tie-off external AXI4 master, if present
|
new chipyard.harness.WithTieOffL2FBusAXI ++ // tie-off external AXI4 master, if present
|
||||||
|
new chipyard.harness.WithTieOffCustomBootPin ++
|
||||||
|
|
||||||
// The IOBinders instantiate ChipTop IOs to match desired digital IOs
|
// The IOBinders instantiate ChipTop IOs to match desired digital IOs
|
||||||
// IOCells are generated for "Chip-like" IOs, while simulation-only IOs are directly punched through
|
// IOCells are generated for "Chip-like" IOs, while simulation-only IOs are directly punched through
|
||||||
@@ -37,6 +38,7 @@ class AbstractConfig extends Config(
|
|||||||
new chipyard.iobinders.WithSPIIOCells ++
|
new chipyard.iobinders.WithSPIIOCells ++
|
||||||
new chipyard.iobinders.WithTraceIOPunchthrough ++
|
new chipyard.iobinders.WithTraceIOPunchthrough ++
|
||||||
new chipyard.iobinders.WithExtInterruptIOCells ++
|
new chipyard.iobinders.WithExtInterruptIOCells ++
|
||||||
|
new chipyard.iobinders.WithCustomBootPin ++
|
||||||
|
|
||||||
new testchipip.WithDefaultSerialTL ++ // use serialized tilelink port to external serialadapter/harnessRAM
|
new testchipip.WithDefaultSerialTL ++ // use serialized tilelink port to external serialadapter/harnessRAM
|
||||||
new chipyard.config.WithBootROM ++ // use default bootrom
|
new chipyard.config.WithBootROM ++ // use default bootrom
|
||||||
|
|||||||
Submodule generators/testchipip updated: fd7760e286...a973fdd67f
Reference in New Issue
Block a user