[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH RFC v4 08/20] target-arm: Store cp15 c0_c1 and c
From: |
Alexey Starikovskiy |
Subject: |
Re: [Qemu-devel] [PATCH RFC v4 08/20] target-arm: Store cp15 c0_c1 and c0_c2 in ARMCPUClass |
Date: |
Thu, 15 Mar 2012 22:29:08 +0300 |
On Thu, Mar 15, 2012 at 11:20 PM, Peter Maydell
<address@hidden> wrote:
> On 15 March 2012 19:08, Paul Brook <address@hidden> wrote:
>>> For now set them in the reset function.
>>
>>> + /* TODO Move these into arm_cpu_initfn() once no longer zeroed above.*/
>>> + memcpy(env->cp15.c0_c1, klass->cp15.c0_c1, 8 * sizeof(uint32_t));
>>> + memcpy(env->cp15.c0_c2, klass->cp15.c0_c2, 8 * sizeof(uint32_t)); +
>>
>> Why bother copying them into the CPU state? These are readonly, so anything
>> that needs them should be able to use the value straight from the class
>> definitions.
>
> In my (hugely delayed) cp15 rework attempt these probably go away anyway
> in favour of having each CPU register a pile of registers along the lines of
>
> { .name = "ID_PFR0", .cp = 15, .crn = 0, .crm = 1, .opc1 = 0, .opc2 = 0,
> .access = PL1_R, .type = ARM_CP_CONST, .resetvalue = 0x00001231 },
> { .name = "ID_PFR1", .cp = 15, .crn = 0, .crm = 1, .opc1 = 0, .opc2 = 1,
> .access = PL1_R, .type = ARM_CP_CONST, .resetvalue = 0x00000011 },
> etc.
>
> I'm not sure there's any need to retain the CPUState (or equivalent) fields
> for them at that point.
>
> -- PMM
>
Peter, with the reserved bits in most registers it might make sense to
have resetvalue in two
masks -- ones and zeros, so that you can prevent changing of those bits.
Alex.
- [Qemu-devel] [PATCH RFC v4 18/20] target-arm: Add cpuid-{variant, revision} properties to CPU, (continued)
- [Qemu-devel] [PATCH RFC v4 18/20] target-arm: Add cpuid-{variant, revision} properties to CPU, Andreas Färber, 2012/03/10
- [Qemu-devel] [PATCH RFC v4 19/20] target-arm: Simplify pxa270 CPU classes, Andreas Färber, 2012/03/10
- [Qemu-devel] [PATCH RFC v4 17/20] target-arm: Kill off cpu_reset_model_id(), Andreas Färber, 2012/03/10
- [Qemu-devel] [PATCH RFC v4 15/20] target-arm: Store CLIDR in ARMCPUClass, Andreas Färber, 2012/03/10
- [Qemu-devel] [PATCH RFC v4 20/20] hw/integratorcp: Add child property for CPU, Andreas Färber, 2012/03/10
- [Qemu-devel] [PATCH RFC v4 05/20] target-arm: Overwrite reset handler for ti925t, Andreas Färber, 2012/03/10
- [Qemu-devel] [PATCH RFC v4 04/20] target-arm: Prepare model-specific class_init function, Andreas Färber, 2012/03/10
- [Qemu-devel] [PATCH RFC v4 08/20] target-arm: Store cp15 c0_c1 and c0_c2 in ARMCPUClass, Andreas Färber, 2012/03/10
[Qemu-devel] [PATCH RFC v4 02/20] target-arm: Introduce QOM ARMCPUClass, Andreas Färber, 2012/03/10
Re: [Qemu-devel] [PATCH RFC v4 02/20] target-arm: Introduce QOM ARMCPUClass, Paolo Bonzini, 2012/03/13
Re: [Qemu-devel] [PATCH RFC v4 02/20] target-arm: Introduce QOM ARMCPUClass, Peter Maydell, 2012/03/13
Re: [Qemu-devel] [PATCH RFC v4 02/20] target-arm: Introduce QOM ARMCPUClass, Igor Mitsyanko, 2012/03/14
[Qemu-devel] [PATCH RFC v4 14/20] target-arm: Store VFP MVFR0 and MVFR1 in ARMCPUClass, Andreas Färber, 2012/03/10