test_mode_reset: use a cleaner interface with bundles and options instead of individual signals
This commit is contained in:
@ -1029,11 +1029,11 @@ class TLDebugModuleInnerAsync(device: Device, getNComponents: () => Int)(implici
|
||||
val innerCtrl = new AsyncBundle(1, new DebugInternalBundle()).flip
|
||||
// This comes from tlClk domain.
|
||||
val debugUnavail = Vec(getNComponents(), Bool()).asInput
|
||||
val psd = new PSDTestModeIO()
|
||||
val psd = new PSDTestMode().asInput
|
||||
}
|
||||
|
||||
dmInner.module.io.innerCtrl := FromAsyncBundle(io.innerCtrl)
|
||||
dmInner.module.io.dmactive := ~ResetCatchAndSync(clock, ~io.dmactive, "dmactiveSync", io.psd.test_mode, io.psd.test_mode_reset)
|
||||
dmInner.module.io.dmactive := ~ResetCatchAndSync(clock, ~io.dmactive, "dmactiveSync", io.psd)
|
||||
dmInner.module.io.debugUnavail := io.debugUnavail
|
||||
}
|
||||
}
|
||||
@ -1067,7 +1067,7 @@ class TLDebugModule(implicit p: Parameters) extends LazyModule {
|
||||
val dmi = new ClockedDMIIO().flip
|
||||
val in = node.bundleIn
|
||||
val debugInterrupts = intnode.bundleOut
|
||||
val psd = new PSDTestModeIO()
|
||||
val psd = new PSDTestMode()
|
||||
}
|
||||
|
||||
dmOuter.module.io.dmi <> io.dmi.dmi
|
||||
|
@ -57,7 +57,7 @@ trait HasPeripheryDebugModuleImp extends LazyMultiIOModuleImp with HasPeripheryD
|
||||
|
||||
val dtm = debug.systemjtag.map { sj =>
|
||||
|
||||
val psd = debug.psd.getOrElse(Wire(init = new PSDTestModeIO().fromBits(0.U)))
|
||||
val psd = debug.psd.getOrElse(Wire(init = new PSDTestMode().fromBits(0.U)))
|
||||
|
||||
val dtm = Module(new DebugTransportModuleJTAG(p(DebugModuleParams).nDMIAddrSize, p(JtagDTMKey)))
|
||||
dtm.io.jtag <> sj.jtag
|
||||
@ -71,7 +71,7 @@ trait HasPeripheryDebugModuleImp extends LazyMultiIOModuleImp with HasPeripheryD
|
||||
outer.debug.module.io.dmi.dmiClock := sj.jtag.TCK
|
||||
|
||||
psd <> outer.debug.module.io.psd
|
||||
outer.debug.module.io.dmi.dmiReset := ResetCatchAndSync(sj.jtag.TCK, sj.reset, "dmiResetCatch", psd.test_mode, psd.test_mode_reset)
|
||||
outer.debug.module.io.dmi.dmiReset := ResetCatchAndSync(sj.jtag.TCK, sj.reset, "dmiResetCatch", psd)
|
||||
dtm
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user