Bump Chisel and FIRRTL for annotations refactor (#1261)
Also brings in an autoclonetype enhancement and some bug fixes
This commit is contained in:
		@@ -938,7 +938,7 @@ class TLDebugModuleInner(device: Device, getNComponents: () => Int, beatBytes: I
 | 
			
		||||
    //------------------------
 | 
			
		||||
    // DMI Register Control and Status
 | 
			
		||||
 | 
			
		||||
    abstractCommandBusy := (ctrlStateReg != CtrlState(Waiting))
 | 
			
		||||
    abstractCommandBusy := (ctrlStateReg =/= CtrlState(Waiting))
 | 
			
		||||
 | 
			
		||||
    ABSTRACTCSWrEnLegal   := (ctrlStateReg === CtrlState(Waiting))
 | 
			
		||||
    COMMANDWrEnLegal      := (ctrlStateReg === CtrlState(Waiting))
 | 
			
		||||
 
 | 
			
		||||
@@ -10,8 +10,7 @@ import freechips.rocketchip.system.{TestGeneration, DefaultTestSuites}
 | 
			
		||||
import freechips.rocketchip.config._
 | 
			
		||||
import freechips.rocketchip.diplomacy.LazyModule
 | 
			
		||||
import java.io.{File, FileWriter}
 | 
			
		||||
import net.jcazevedo.moultingyaml._
 | 
			
		||||
import firrtl.annotations.AnnotationYamlProtocol._
 | 
			
		||||
import firrtl.annotations.JsonProtocol
 | 
			
		||||
 | 
			
		||||
/** Representation of the information this Generator needs to collect from external sources. */
 | 
			
		||||
case class ParsedInputNames(
 | 
			
		||||
@@ -99,9 +98,9 @@ trait GeneratorApp extends App with HasGeneratorUtilities {
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  def generateAnno {
 | 
			
		||||
    val annotationFile = new File(td, s"$longName.anno")
 | 
			
		||||
    val annotationFile = new File(td, s"$longName.anno.json")
 | 
			
		||||
    val af = new FileWriter(annotationFile)
 | 
			
		||||
    af.write(circuit.annotations.toArray.toYaml.prettyPrint)
 | 
			
		||||
    af.write(JsonProtocol.serialize(circuit.annotations.map(_.toFirrtl)))
 | 
			
		||||
    af.close()
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -4,7 +4,7 @@
 | 
			
		||||
package freechips.rocketchip.util
 | 
			
		||||
 | 
			
		||||
import Chisel._
 | 
			
		||||
import chisel3.experimental.{ChiselAnnotation, RawModule}
 | 
			
		||||
import chisel3.experimental.{dontTouch, RawModule}
 | 
			
		||||
import freechips.rocketchip.config.Parameters
 | 
			
		||||
import scala.math._
 | 
			
		||||
 | 
			
		||||
@@ -14,13 +14,6 @@ class ParameterizedBundle(implicit p: Parameters) extends Bundle
 | 
			
		||||
trait DontTouch {
 | 
			
		||||
  self: RawModule =>
 | 
			
		||||
 | 
			
		||||
  def dontTouch(data: Data): Unit = data match {
 | 
			
		||||
    case agg: Aggregate =>
 | 
			
		||||
      agg.getElements.foreach(dontTouch)
 | 
			
		||||
    case elt: Element =>
 | 
			
		||||
      annotate(ChiselAnnotation(elt, classOf[firrtl.Transform], "DONTtouch!"))
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  /** Marks every port as don't touch
 | 
			
		||||
    *
 | 
			
		||||
    * @note This method can only be called after the Module has been fully constructed
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user