* [Qemu-devel] [PATCH 1/1] Add the CPU Identifier required for ARM 920T cpu cores
@ 2009-05-26 9:41 Vincent Sanders
0 siblings, 0 replies; only message in thread
From: Vincent Sanders @ 2009-05-26 9:41 UTC (permalink / raw)
To: qemu-devel; +Cc: Vincent Sanders
Signed-off-by: Vincent Sanders <vince@simtec.co.uk>
---
target-arm/cpu.h | 1 +
target-arm/helper.c | 15 +++++++++++++++
2 files changed, 16 insertions(+), 0 deletions(-)
diff --git a/target-arm/cpu.h b/target-arm/cpu.h
index f98655f..eafaeaf 100644
--- a/target-arm/cpu.h
+++ b/target-arm/cpu.h
@@ -370,6 +370,7 @@ void cpu_arm_set_cp_io(CPUARMState *env, int cpnum,
#define ARM_CPUID_ARM1026 0x4106a262
#define ARM_CPUID_ARM926 0x41069265
#define ARM_CPUID_ARM946 0x41059461
+#define ARM_CPUID_ARM920T 0x41129200
#define ARM_CPUID_TI915T 0x54029152
#define ARM_CPUID_TI925T 0x54029252
#define ARM_CPUID_PXA250 0x69052100
diff --git a/target-arm/helper.c b/target-arm/helper.c
index 701629a..2439267 100644
--- a/target-arm/helper.c
+++ b/target-arm/helper.c
@@ -37,6 +37,20 @@ static void cpu_reset_model_id(CPUARMState *env, uint32_t id)
{
env->cp15.c0_cpuid = id;
switch (id) {
+ case ARM_CPUID_ARM920T:
+ /* This processor is an ARMv4 and not ARMv5 which is the default
+ * emulation level. The additional v5 instructions (blx clz ldrd pld
+ * smlabb smlabt smlatt smlal smlawb smlawt smulbb smulbt smultt
+ * smulwb smulwt qadd qdadd qdsub qsub strd) will all be successfully
+ * executed instead of causing an unknown instruction fault.
+ *
+ * In practice this does not appear to be an issue and several boot
+ * loaders, Linux kernels, BSD kernels and their user space all
+ * appear to execute without problems.
+ */
+ env->cp15.c0_cachetype = 0x0d172172;
+ env->cp15.c1_sys = 0x00000078;
+ break;
case ARM_CPUID_ARM926:
set_feature(env, ARM_FEATURE_VFP);
env->vfp.xregs[ARM_VFP_FPSID] = 0x41011090;
@@ -277,6 +291,7 @@ struct arm_cpu_t {
};
static const struct arm_cpu_t arm_cpu_names[] = {
+ { ARM_CPUID_ARM920T, "arm920t"},
{ ARM_CPUID_ARM926, "arm926"},
{ ARM_CPUID_ARM946, "arm946"},
{ ARM_CPUID_ARM1026, "arm1026"},
--
1.6.0.4
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2009-05-26 9:41 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-05-26 9:41 [Qemu-devel] [PATCH 1/1] Add the CPU Identifier required for ARM 920T cpu cores Vincent Sanders
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).