Merge pull request #925 from freechipsproject/fix-lazy-raw-modules
diplomacy: provide default clock/reset for LazyRawModuleImp
This commit is contained in:
		@@ -3,7 +3,7 @@
 | 
				
			|||||||
package freechips.rocketchip.diplomacy
 | 
					package freechips.rocketchip.diplomacy
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import Chisel._
 | 
					import Chisel._
 | 
				
			||||||
import chisel3.experimental.{BaseModule, RawModule, MultiIOModule}
 | 
					import chisel3.experimental.{BaseModule, RawModule, MultiIOModule, withClockAndReset}
 | 
				
			||||||
import chisel3.internal.sourceinfo.{SourceInfo, SourceLine, UnlocatableSourceInfo}
 | 
					import chisel3.internal.sourceinfo.{SourceInfo, SourceLine, UnlocatableSourceInfo}
 | 
				
			||||||
import freechips.rocketchip.config.Parameters
 | 
					import freechips.rocketchip.config.Parameters
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -151,13 +151,19 @@ trait LazyModuleImpLike extends BaseModule
 | 
				
			|||||||
  override def desiredName = wrapper.moduleName
 | 
					  override def desiredName = wrapper.moduleName
 | 
				
			||||||
  suggestName(wrapper.instanceName)
 | 
					  suggestName(wrapper.instanceName)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  wrapper.instantiate()
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  implicit val p = wrapper.p
 | 
					  implicit val p = wrapper.p
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
abstract class LazyModuleImp(val wrapper: LazyModule) extends Module with LazyModuleImpLike
 | 
					abstract class LazyModuleImp(val wrapper: LazyModule) extends Module with LazyModuleImpLike {
 | 
				
			||||||
 | 
					  wrapper.instantiate()
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
abstract class LazyMultiIOModuleImp(val wrapper: LazyModule) extends MultiIOModule with LazyModuleImpLike
 | 
					abstract class LazyMultiIOModuleImp(val wrapper: LazyModule) extends MultiIOModule with LazyModuleImpLike {
 | 
				
			||||||
 | 
					  wrapper.instantiate()
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
abstract class LazyRawModuleImp(val wrapper: LazyModule) extends RawModule with LazyModuleImpLike
 | 
					abstract class LazyRawModuleImp(val wrapper: LazyModule) extends RawModule with LazyModuleImpLike {
 | 
				
			||||||
 | 
					  withClockAndReset(Bool(false).asClock, Bool(true)) {
 | 
				
			||||||
 | 
					    wrapper.instantiate()
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user