Remove MIPI; make mip.MSIP read-only
The PRCI block outside the core will provide IPIs eventually
This commit is contained in:
		| @@ -144,7 +144,7 @@ class CSRFile(implicit p: Parameters) extends CoreModule()(p) | ||||
|   val reg_mie = Reg(init=UInt(0, xLen)) | ||||
|   val reg_mideleg = Reg(init=UInt(0, xLen)) | ||||
|   val reg_medeleg = Reg(init=UInt(0, xLen)) | ||||
|   val reg_mip = Reg(init=new MIP().fromBits(0)) | ||||
|   val reg_mip = Reg(new MIP) | ||||
|   val reg_mepc = Reg(UInt(width = vaddrBitsExtended)) | ||||
|   val reg_mcause = Reg(Bits(width = xLen)) | ||||
|   val reg_mbadaddr = Reg(UInt(width = vaddrBitsExtended)) | ||||
| @@ -201,7 +201,6 @@ class CSRFile(implicit p: Parameters) extends CoreModule()(p) | ||||
|     CSRs.misa -> UInt(isa), | ||||
|     CSRs.mstatus -> read_mstatus, | ||||
|     CSRs.mtvec -> reg_mtvec, | ||||
|     CSRs.mipi -> reg_mip.msip, | ||||
|     CSRs.mip -> read_mip, | ||||
|     CSRs.mie -> reg_mie, | ||||
|     CSRs.mideleg -> reg_mideleg, | ||||
| @@ -415,10 +414,6 @@ class CSRFile(implicit p: Parameters) extends CoreModule()(p) | ||||
|         reg_mip.ssip := new_mip.ssip | ||||
|         reg_mip.stip := new_mip.stip | ||||
|       } | ||||
|       reg_mip.msip := new_mip.msip | ||||
|     } | ||||
|     when (decoded_addr(CSRs.mipi)) { | ||||
|       reg_mip.msip := wdata(0) | ||||
|     } | ||||
|     when (decoded_addr(CSRs.mie))      { reg_mie := wdata & supported_interrupts } | ||||
|     when (decoded_addr(CSRs.mepc))     { reg_mepc := ~(~wdata | (coreInstBytes-1)) } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user