devices: switch to using node-style API (#44)
This commit is contained in:
parent
e4960a4e5a
commit
90e6ea1d2d
@ -22,8 +22,8 @@ trait HasPeripheryMockAON extends HasPeripheryBus
|
||||
// are in the proper clock domain.
|
||||
val mockAONParams= p(PeripheryMockAONKey)
|
||||
val aon = LazyModule(new MockAONWrapper(pbus.beatBytes, mockAONParams))
|
||||
aon.node := pbus.toAsyncVariableWidthSlaves(sync = 3)
|
||||
ibus.fromAsync := aon.intnode
|
||||
aon.node := TLAsyncCrossingSource() := pbus.toVariableWidthSlaves
|
||||
ibus.fromSync := IntSyncCrossingSink() := aon.intnode
|
||||
}
|
||||
|
||||
trait HasPeripheryMockAONBundle {
|
||||
|
@ -44,12 +44,10 @@ class MockAONWrapper(w: Int, c: MockAONParams)(implicit p: Parameters) extends L
|
||||
val isolation = LazyModule(new TLIsolation(fOut = isoOut, fIn = isoIn))
|
||||
val crossing = LazyModule(new TLAsyncCrossingSink(depth = 1))
|
||||
|
||||
val node: TLAsyncInwardNode = isolation.node
|
||||
crossing.node := isolation.node
|
||||
aon.node := crossing.node
|
||||
val node = aon.node := crossing.node := isolation.node
|
||||
|
||||
// crossing lives outside in Periphery
|
||||
val intnode: IntOutwardNode = aon.intnode
|
||||
val intnode = IntSyncCrossingSource(alreadyRegistered = true) := aon.intnode
|
||||
|
||||
lazy val module = new LazyModuleImp(this) {
|
||||
val io = IO(new MockAONWrapperBundle {
|
||||
|
@ -41,10 +41,10 @@ trait HasPeripherySPIFlash extends HasPeripheryBus with HasInterruptBus {
|
||||
val qspis = spiFlashParams map { params =>
|
||||
val qspi = LazyModule(new TLSPIFlash(pbus.beatBytes, params))
|
||||
qspi.rnode := pbus.toVariableWidthSlaves
|
||||
qspi.fnode :=
|
||||
TLFragmenter(1, pbus.blockBytes)(
|
||||
TLBuffer(BufferParams(params.fBufferDepth), BufferParams.none)(
|
||||
pbus.toFixedWidthSlaves))
|
||||
(qspi.fnode
|
||||
:= TLFragmenter(1, pbus.blockBytes)
|
||||
:= TLBuffer(BufferParams(params.fBufferDepth), BufferParams.none)
|
||||
:= pbus.toFixedWidthSlaves)
|
||||
ibus.fromSync := qspi.intnode
|
||||
qspi
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user