JTAG: make TRSTn optional for all helpers as well to match the IO.
This commit is contained in:
parent
2c47cc4abd
commit
faeb14dc5a
@ -13,28 +13,28 @@ import Chisel._
|
|||||||
import config._
|
import config._
|
||||||
import jtag.{JTAGIO}
|
import jtag.{JTAGIO}
|
||||||
|
|
||||||
class JTAGPinsIO extends Bundle {
|
class JTAGPinsIO(hasTRSTn: Boolean = true) extends Bundle {
|
||||||
|
|
||||||
val TCK = new GPIOPin()
|
val TCK = new GPIOPin()
|
||||||
val TMS = new GPIOPin()
|
val TMS = new GPIOPin()
|
||||||
val TDI = new GPIOPin()
|
val TDI = new GPIOPin()
|
||||||
val TDO = new GPIOPin()
|
val TDO = new GPIOPin()
|
||||||
val TRSTn = new GPIOPin()
|
val TRSTn = if (hasTRSTn) Option(new GPIOPin()) else None
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
class JTAGGPIOPort()(implicit p: Parameters) extends Module {
|
class JTAGGPIOPort(hasTRSTn: Boolean = true)(implicit p: Parameters) extends Module {
|
||||||
|
|
||||||
val io = new Bundle {
|
val io = new Bundle {
|
||||||
// TODO: make this not hard-coded true.
|
// TODO: make this not hard-coded true.
|
||||||
val jtag = new JTAGIO(hasTRSTn = true)
|
val jtag = new JTAGIO(hasTRSTn)
|
||||||
val pins = new JTAGPinsIO()
|
val pins = new JTAGPinsIO(hasTRSTn)
|
||||||
}
|
}
|
||||||
|
|
||||||
io.jtag.TCK := GPIOInputPinCtrl(io.pins.TCK, pue = Bool(true)).asClock
|
io.jtag.TCK := GPIOInputPinCtrl(io.pins.TCK, pue = Bool(true)).asClock
|
||||||
io.jtag.TMS := GPIOInputPinCtrl(io.pins.TMS, pue = Bool(true))
|
io.jtag.TMS := GPIOInputPinCtrl(io.pins.TMS, pue = Bool(true))
|
||||||
io.jtag.TDI := GPIOInputPinCtrl(io.pins.TDI, pue = Bool(true))
|
io.jtag.TDI := GPIOInputPinCtrl(io.pins.TDI, pue = Bool(true))
|
||||||
io.jtag.TRSTn.get := GPIOInputPinCtrl(io.pins.TRSTn, pue = Bool(true))
|
io.jtag.TRSTn.foreach{t => t := GPIOInputPinCtrl(io.pins.TRSTn.get, pue = Bool(true))}
|
||||||
|
|
||||||
GPIOOutputPinCtrl(io.pins.TDO, io.jtag.TDO.data)
|
GPIOOutputPinCtrl(io.pins.TDO, io.jtag.TDO.data)
|
||||||
io.pins.TDO.o.oe := io.jtag.TDO.driven
|
io.pins.TDO.o.oe := io.jtag.TDO.driven
|
||||||
|
Loading…
Reference in New Issue
Block a user