[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 16/27] target/ppc: cpu_init: Move e300 SPR registration into a
From: |
Fabiano Rosas |
Subject: |
[PATCH v2 16/27] target/ppc: cpu_init: Move e300 SPR registration into a function |
Date: |
Wed, 16 Feb 2022 13:24:15 -0300 |
This is done to improve init_proc readability and to make subsequent
patches that touch this code a bit cleaner.
Signed-off-by: Fabiano Rosas <farosas@linux.ibm.com>
Reviewed-by: David Gibson <david@gibson.dropbear.id.au>
---
target/ppc/cpu_init.c | 64 +++++++++++++++++++++++--------------------
1 file changed, 35 insertions(+), 29 deletions(-)
diff --git a/target/ppc/cpu_init.c b/target/ppc/cpu_init.c
index d6e19e9cf0..63ca83ee7d 100644
--- a/target/ppc/cpu_init.c
+++ b/target/ppc/cpu_init.c
@@ -768,6 +768,40 @@ static void register_603_sprs(CPUPPCState *env)
0x00000000);
}
+static void register_e300_sprs(CPUPPCState *env)
+{
+ /* hardware implementation registers */
+ spr_register(env, SPR_HID2, "HID2",
+ SPR_NOACCESS, SPR_NOACCESS,
+ &spr_read_generic, &spr_write_generic,
+ 0x00000000);
+ /* Breakpoints */
+ spr_register(env, SPR_DABR, "DABR",
+ SPR_NOACCESS, SPR_NOACCESS,
+ &spr_read_generic, &spr_write_generic,
+ 0x00000000);
+
+ spr_register(env, SPR_DABR2, "DABR2",
+ SPR_NOACCESS, SPR_NOACCESS,
+ &spr_read_generic, &spr_write_generic,
+ 0x00000000);
+
+ spr_register(env, SPR_IABR2, "IABR2",
+ SPR_NOACCESS, SPR_NOACCESS,
+ &spr_read_generic, &spr_write_generic,
+ 0x00000000);
+
+ spr_register(env, SPR_IBCR, "IBCR",
+ SPR_NOACCESS, SPR_NOACCESS,
+ &spr_read_generic, &spr_write_generic,
+ 0x00000000);
+
+ spr_register(env, SPR_DBCR, "DBCR",
+ SPR_NOACCESS, SPR_NOACCESS,
+ &spr_read_generic, &spr_write_generic,
+ 0x00000000);
+}
+
/* SPR specific to PowerPC G2 implementation */
static void register_G2_sprs(CPUPPCState *env)
{
@@ -3217,36 +3251,8 @@ static void init_proc_e300(CPUPPCState *env)
register_ne_601_sprs(env);
register_sdr1_sprs(env);
register_603_sprs(env);
- /* hardware implementation registers */
- spr_register(env, SPR_HID2, "HID2",
- SPR_NOACCESS, SPR_NOACCESS,
- &spr_read_generic, &spr_write_generic,
- 0x00000000);
- /* Breakpoints */
- spr_register(env, SPR_DABR, "DABR",
- SPR_NOACCESS, SPR_NOACCESS,
- &spr_read_generic, &spr_write_generic,
- 0x00000000);
+ register_e300_sprs(env);
- spr_register(env, SPR_DABR2, "DABR2",
- SPR_NOACCESS, SPR_NOACCESS,
- &spr_read_generic, &spr_write_generic,
- 0x00000000);
-
- spr_register(env, SPR_IABR2, "IABR2",
- SPR_NOACCESS, SPR_NOACCESS,
- &spr_read_generic, &spr_write_generic,
- 0x00000000);
-
- spr_register(env, SPR_IBCR, "IBCR",
- SPR_NOACCESS, SPR_NOACCESS,
- &spr_read_generic, &spr_write_generic,
- 0x00000000);
-
- spr_register(env, SPR_DBCR, "DBCR",
- SPR_NOACCESS, SPR_NOACCESS,
- &spr_read_generic, &spr_write_generic,
- 0x00000000);
/* Memory management */
register_low_BATs(env);
register_high_BATs(env);
--
2.34.1
- [PATCH v2 06/27] target/ppc: cpu_init: Move 405 SPRs into register_405_sprs, (continued)
- [PATCH v2 06/27] target/ppc: cpu_init: Move 405 SPRs into register_405_sprs, Fabiano Rosas, 2022/02/16
- [PATCH v2 11/27] target/ppc: cpu_init: Deduplicate 603 SPR registration, Fabiano Rosas, 2022/02/16
- [PATCH v2 15/27] target/ppc: cpu_init: Move 755 L2 cache SPRs into a function, Fabiano Rosas, 2022/02/16
- [PATCH v2 12/27] target/ppc: cpu_init: Deduplicate 604 SPR registration, Fabiano Rosas, 2022/02/16
- [PATCH v2 13/27] target/ppc: cpu_init: Deduplicate 745/755 SPR registration, Fabiano Rosas, 2022/02/16
- [PATCH v2 19/27] target/ppc: cpu_init: Reuse init_proc_604 for the 604e, Fabiano Rosas, 2022/02/16
- [PATCH v2 22/27] target/ppc: cpu_init: Remove register_usprg3_sprs, Fabiano Rosas, 2022/02/16
- [PATCH v2 23/27] target/ppc: Rename spr_tcg.h to spr_common.h, Fabiano Rosas, 2022/02/16
- [PATCH v2 17/27] target/ppc: cpu_init: Move 604e SPR registration into a function, Fabiano Rosas, 2022/02/16
- [PATCH v2 16/27] target/ppc: cpu_init: Move e300 SPR registration into a function,
Fabiano Rosas <=
- [PATCH v2 18/27] target/ppc: cpu_init: Reuse init_proc_603 for the e300, Fabiano Rosas, 2022/02/16
- [PATCH v2 14/27] target/ppc: cpu_init: Deduplicate 7xx SPR registration, Fabiano Rosas, 2022/02/16
- [PATCH v2 26/27] target/ppc: cpu_init: Move check_pow and QOM macros to a header, Fabiano Rosas, 2022/02/16
- [PATCH v2 20/27] target/ppc: cpu_init: Reuse init_proc_745 for the 755, Fabiano Rosas, 2022/02/16
- [PATCH v2 21/27] target/ppc: cpu_init: Rename register_ne_601_sprs, Fabiano Rosas, 2022/02/16
- [PATCH v2 25/27] target/ppc: cpu_init: Move SPR registration macros to a header, Fabiano Rosas, 2022/02/16
- [PATCH v2 27/27] target/ppc: Move common SPR functions out of cpu_init, Fabiano Rosas, 2022/02/16
- [PATCH v2 24/27] target/ppc: cpu_init: Expose some SPR registration helpers, Fabiano Rosas, 2022/02/16
- Re: [PATCH v2 00/27] target/ppc: SPR registration cleanups, Cédric Le Goater, 2022/02/18