From 76e2c7d81c9c08618cc2836da0232c77b5d4e91b Mon Sep 17 00:00:00 2001 From: Benjamin Herrenschmidt Date: Thu, 18 Jun 2020 19:41:00 +1000 Subject: [PATCH] ex1: Add SPR_TBU support It's used by the boot wrapper in Linux and possibly some userspace programs. Signed-off-by: Benjamin Herrenschmidt --- common.vhdl | 1 + execute1.vhdl | 3 +++ 2 files changed, 4 insertions(+) diff --git a/common.vhdl b/common.vhdl index f80593b..d376ac3 100644 --- a/common.vhdl +++ b/common.vhdl @@ -27,6 +27,7 @@ package common is constant SPR_DSISR : spr_num_t := 18; constant SPR_DAR : spr_num_t := 19; constant SPR_TB : spr_num_t := 268; + constant SPR_TBU : spr_num_t := 269; constant SPR_DEC : spr_num_t := 22; constant SPR_SRR0 : spr_num_t := 26; constant SPR_SRR1 : spr_num_t := 27; diff --git a/execute1.vhdl b/execute1.vhdl index 902af70..c585f78 100644 --- a/execute1.vhdl +++ b/execute1.vhdl @@ -752,6 +752,9 @@ begin case decode_spr_num(e_in.insn) is when SPR_TB => spr_val := ctrl.tb; + when SPR_TBU => + spr_val(63 downto 32) := (others => '0'); + spr_val(31 downto 0) := ctrl.tb(63 downto 32); when SPR_DEC => spr_val := ctrl.dec; when 724 => -- LOG_ADDR SPR