summaryrefslogtreecommitdiffstats
path: root/target-tricore/cpu.c
diff options
context:
space:
mode:
authorBastian Koppelmann <kbastian@mail.uni-paderborn.de>2015-05-06 20:18:41 +0200
committerBastian Koppelmann <kbastian@mail.uni-paderborn.de>2015-05-22 17:02:33 +0200
commit6d2afc8a5edc042e4e7c2ceb49f7cabe02aae793 (patch)
treeaf72b53fecab78391693722f355498dd6de59e3f /target-tricore/cpu.c
parentfd5ecf31d4c48651de97c1aaf8771762753de9a7 (diff)
downloadhqemu-6d2afc8a5edc042e4e7c2ceb49f7cabe02aae793.zip
hqemu-6d2afc8a5edc042e4e7c2ceb49f7cabe02aae793.tar.gz
target-tricore: introduce ISA v1.6.1 feature
The aurix platform contains of several different cpu models and uses the 1.6.1 ISA. This patch changes the generic aurix model to the more specific tc27x cpu model and sets specific features. Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de> Reviewed-by: Richard Henderson <rth@twiddle.net>
Diffstat (limited to 'target-tricore/cpu.c')
-rw-r--r--target-tricore/cpu.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/target-tricore/cpu.c b/target-tricore/cpu.c
index 9fe0b97..b3e5512 100644
--- a/target-tricore/cpu.c
+++ b/target-tricore/cpu.c
@@ -68,6 +68,10 @@ static void tricore_cpu_realizefn(DeviceState *dev, Error **errp)
CPUTriCoreState *env = &cpu->env;
/* Some features automatically imply others */
+ if (tricore_feature(env, TRICORE_FEATURE_161)) {
+ set_feature(env, TRICORE_FEATURE_16);
+ }
+
if (tricore_feature(env, TRICORE_FEATURE_16)) {
set_feature(env, TRICORE_FEATURE_131);
}
@@ -128,11 +132,11 @@ static void tc1797_initfn(Object *obj)
set_feature(&cpu->env, TRICORE_FEATURE_131);
}
-static void aurix_initfn(Object *obj)
+static void tc27x_initfn(Object *obj)
{
TriCoreCPU *cpu = TRICORE_CPU(obj);
- set_feature(&cpu->env, TRICORE_FEATURE_16);
+ set_feature(&cpu->env, TRICORE_FEATURE_161);
}
typedef struct TriCoreCPUInfo {
@@ -144,7 +148,7 @@ typedef struct TriCoreCPUInfo {
static const TriCoreCPUInfo tricore_cpus[] = {
{ .name = "tc1796", .initfn = tc1796_initfn },
{ .name = "tc1797", .initfn = tc1797_initfn },
- { .name = "aurix", .initfn = aurix_initfn },
+ { .name = "tc27x", .initfn = tc27x_initfn },
{ .name = NULL }
};
OpenPOWER on IntegriCloud