Commit 34ee2edebb992b5d3f7c383a3d0c34f3e75880c8
1 parent
3e736bf4
One more bit of mips CPU configuration, and support for early 4KEc
which implemented only MIPS32R1. Thanks to Stefan Weil to insist he's right on that. :-) git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2533 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
1 changed file
with
23 additions
and
1 deletions
target-mips/translate_init.c
| ... | ... | @@ -65,6 +65,8 @@ struct mips_def_t { |
| 65 | 65 | int32_t CP0_Config1; |
| 66 | 66 | int32_t CP0_Config2; |
| 67 | 67 | int32_t CP0_Config3; |
| 68 | + int32_t CP0_Config6; | |
| 69 | + int32_t CP0_Config7; | |
| 68 | 70 | int32_t CP1_fcr0; |
| 69 | 71 | }; |
| 70 | 72 | |
| ... | ... | @@ -83,8 +85,26 @@ static mips_def_t mips_defs[] = |
| 83 | 85 | .CP1_fcr0 = MIPS_FCR0, |
| 84 | 86 | }, |
| 85 | 87 | { |
| 86 | - .name = "4KEc", | |
| 88 | + .name = "4KEcR1", | |
| 87 | 89 | .CP0_PRid = 0x00018400, |
| 90 | + .CP0_Config0 = MIPS_CONFIG0, | |
| 91 | + .CP0_Config1 = MIPS_CONFIG1, | |
| 92 | + .CP0_Config2 = MIPS_CONFIG2, | |
| 93 | + .CP0_Config3 = MIPS_CONFIG3, | |
| 94 | + .CP1_fcr0 = MIPS_FCR0, | |
| 95 | + }, | |
| 96 | + { | |
| 97 | + .name = "4KEc", | |
| 98 | + .CP0_PRid = 0x00019000, | |
| 99 | + .CP0_Config0 = MIPS_CONFIG0 | (0x1 << CP0C0_AR), | |
| 100 | + .CP0_Config1 = MIPS_CONFIG1, | |
| 101 | + .CP0_Config2 = MIPS_CONFIG2, | |
| 102 | + .CP0_Config3 = MIPS_CONFIG3, | |
| 103 | + .CP1_fcr0 = MIPS_FCR0, | |
| 104 | + }, | |
| 105 | + { | |
| 106 | + .name = "24Kc", | |
| 107 | + .CP0_PRid = 0x00019300, | |
| 88 | 108 | .CP0_Config0 = MIPS_CONFIG0 | (0x1 << CP0C0_AR), |
| 89 | 109 | .CP0_Config1 = MIPS_CONFIG1, |
| 90 | 110 | .CP0_Config2 = MIPS_CONFIG2, |
| ... | ... | @@ -153,6 +173,8 @@ int cpu_mips_register (CPUMIPSState *env, mips_def_t *def) |
| 153 | 173 | env->CP0_Config1 = def->CP0_Config1; |
| 154 | 174 | env->CP0_Config2 = def->CP0_Config2; |
| 155 | 175 | env->CP0_Config3 = def->CP0_Config3; |
| 176 | + env->CP0_Config6 = def->CP0_Config6; | |
| 177 | + env->CP0_Config7 = def->CP0_Config7; | |
| 156 | 178 | env->fcr0 = def->CP1_fcr0; |
| 157 | 179 | return 0; |
| 158 | 180 | } | ... | ... |