whoops microwatt already allocates SPR 720
authorLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Thu, 4 Mar 2021 18:15:40 +0000 (18:15 +0000)
committerLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Thu, 4 Mar 2021 18:15:40 +0000 (18:15 +0000)
libreriscv
src/soc/decoder/power_decoder2.py

index a89e605aae22b1f7e26ddcb9577a8271d94d009e..0863c2918838890e88ef7d9f2ace66a8476fd3f2 160000 (submodule)
@@ -1 +1 @@
-Subproject commit a89e605aae22b1f7e26ddcb9577a8271d94d009e
+Subproject commit 0863c2918838890e88ef7d9f2ace66a8476fd3f2
index 6077aa739130b891be9ec400ae82bf4ac17d1c32..6fa183a81e5cd51d923042759e399b4fc07ad5fc 100644 (file)
@@ -797,14 +797,14 @@ class PowerDecodeSubset(Elaboratable):
         comb += spr.eq(decode_spr_num(self.dec.SPR)) # from XFX
 
         # Microwatt doesn't implement the partition table
         comb += spr.eq(decode_spr_num(self.dec.SPR)) # from XFX
 
         # Microwatt doesn't implement the partition table
-        # instead has PRTBL(SVSRR0) register (SPR) to point to process table
+        # instead has PRTBL register (SPR) to point to process table
         is_spr_mv = Signal()
         is_mmu_spr = Signal()
         comb += is_spr_mv.eq((internal_op == MicrOp.OP_MTSPR) |
                              (internal_op == MicrOp.OP_MFSPR))
         comb += is_mmu_spr.eq((spr == SPR.DSISR.value) |
                               (spr == SPR.DAR.value) |
         is_spr_mv = Signal()
         is_mmu_spr = Signal()
         comb += is_spr_mv.eq((internal_op == MicrOp.OP_MTSPR) |
                              (internal_op == MicrOp.OP_MFSPR))
         comb += is_mmu_spr.eq((spr == SPR.DSISR.value) |
                               (spr == SPR.DAR.value) |
-                              (spr == SPR.SVSRR0.value) |
+                              (spr == SPR.PRTBL.value) |
                               (spr == SPR.PIDR.value))
         # MMU must receive MMU SPRs
         with m.If(is_spr_mv & (fn == Function.SPR) & is_mmu_spr):
                               (spr == SPR.PIDR.value))
         # MMU must receive MMU SPRs
         with m.If(is_spr_mv & (fn == Function.SPR) & is_mmu_spr):