cpu.c (3f2a357b95845ea0bf7463eff6661e43b97d1afc) | cpu.c (750245ed7ce2a426a4eaf026f1af3a21fbdc19dc) |
---|---|
1/* 2 * QEMU ARM CPU 3 * 4 * Copyright (c) 2012 SUSE LINUX Products GmbH 5 * 6 * This program is free software; you can redistribute it and/or 7 * modify it under the terms of the GNU General Public License 8 * as published by the Free Software Foundation; either version 2 --- 1293 unchanged lines hidden (view full) --- 1302 } 1303 qemu_fprintf(f, "FPSCR: %08x\n", vfp_get_fpscr(env)); 1304 if (cpu_isar_feature(aa32_mve, cpu)) { 1305 qemu_fprintf(f, "VPR: %08x\n", env->v7m.vpr); 1306 } 1307 } 1308} 1309 | 1/* 2 * QEMU ARM CPU 3 * 4 * Copyright (c) 2012 SUSE LINUX Products GmbH 5 * 6 * This program is free software; you can redistribute it and/or 7 * modify it under the terms of the GNU General Public License 8 * as published by the Free Software Foundation; either version 2 --- 1293 unchanged lines hidden (view full) --- 1302 } 1303 qemu_fprintf(f, "FPSCR: %08x\n", vfp_get_fpscr(env)); 1304 if (cpu_isar_feature(aa32_mve, cpu)) { 1305 qemu_fprintf(f, "VPR: %08x\n", env->v7m.vpr); 1306 } 1307 } 1308} 1309 |
1310uint64_t arm_cpu_mp_affinity(int idx, uint8_t clustersz) | 1310uint64_t arm_build_mp_affinity(int idx, uint8_t clustersz) |
1311{ 1312 uint32_t Aff1 = idx / clustersz; 1313 uint32_t Aff0 = idx % clustersz; 1314 return (Aff1 << ARM_AFF1_SHIFT) | Aff0; 1315} 1316 1317static void arm_cpu_initfn(Object *obj) 1318{ --- 789 unchanged lines hidden (view full) --- 2108 } 2109 2110 /* This cpu-id-to-MPIDR affinity is used only for TCG; KVM will override it. 2111 * We don't support setting cluster ID ([16..23]) (known as Aff2 2112 * in later ARM ARM versions), or any of the higher affinity level fields, 2113 * so these bits always RAZ. 2114 */ 2115 if (cpu->mp_affinity == ARM64_AFFINITY_INVALID) { | 1311{ 1312 uint32_t Aff1 = idx / clustersz; 1313 uint32_t Aff0 = idx % clustersz; 1314 return (Aff1 << ARM_AFF1_SHIFT) | Aff0; 1315} 1316 1317static void arm_cpu_initfn(Object *obj) 1318{ --- 789 unchanged lines hidden (view full) --- 2108 } 2109 2110 /* This cpu-id-to-MPIDR affinity is used only for TCG; KVM will override it. 2111 * We don't support setting cluster ID ([16..23]) (known as Aff2 2112 * in later ARM ARM versions), or any of the higher affinity level fields, 2113 * so these bits always RAZ. 2114 */ 2115 if (cpu->mp_affinity == ARM64_AFFINITY_INVALID) { |
2116 cpu->mp_affinity = arm_cpu_mp_affinity(cs->cpu_index, 2117 ARM_DEFAULT_CPUS_PER_CLUSTER); | 2116 cpu->mp_affinity = arm_build_mp_affinity(cs->cpu_index, 2117 ARM_DEFAULT_CPUS_PER_CLUSTER); |
2118 } 2119 2120 if (cpu->reset_hivecs) { 2121 cpu->reset_sctlr |= (1 << 13); 2122 } 2123 2124 if (cpu->cfgend) { 2125 if (arm_feature(&cpu->env, ARM_FEATURE_V7)) { --- 435 unchanged lines hidden --- | 2118 } 2119 2120 if (cpu->reset_hivecs) { 2121 cpu->reset_sctlr |= (1 << 13); 2122 } 2123 2124 if (cpu->cfgend) { 2125 if (arm_feature(&cpu->env, ARM_FEATURE_V7)) { --- 435 unchanged lines hidden --- |