[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-arm] [PATCH v2 06/13] hw/misc/tz-mpc.c: Implement registers
From: |
Auger Eric |
Subject: |
Re: [Qemu-arm] [PATCH v2 06/13] hw/misc/tz-mpc.c: Implement registers |
Date: |
Fri, 15 Jun 2018 15:24:56 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.4.0 |
Hi Peter,
On 06/15/2018 11:04 AM, Peter Maydell wrote:
> On 14 June 2018 at 21:36, Auger Eric <address@hidden> wrote:
>> Hi Peter,
>>
>> On 06/04/2018 05:29 PM, Peter Maydell wrote:
>>> Implement the missing registers for the TZ MPC.
>>>
>>> Signed-off-by: Peter Maydell <address@hidden>
>
>>> + case A_INT_CLEAR:
>>> + if (value & R_INT_CLEAR_IRQ_MASK) {
>>> + s->int_stat = 0;
>>> + tz_mpc_irq_update(s);
>> don't you need to clear the info regs. spec says:
>> the [info] register retains its value until mpc_irq is cleared.
>
> The full sentence is "Subsequent security violating transfers
> remain blocked, that is, not captured in this register
> and the register retains its value until mpc_irq is cleared."
> I interpret "until mpc_irq is cleared" as applying to the
> entire thing, ie mpc_irq being cleared is what allows a
> subsequent transfer to be captured in this register.
> (Hardware actively clearing itself to zero is unlikely,
> because that costs extra gates which designers don't tend
> to do unless there's a reason for it.)
>
> From a guest point of view (which is kind of the pov the
> docs are written from), the guest can't rely on the register
> value once mpc_irq is cleared (because another transaction
> might come along and cause the value to be overwritten).
OK
Thanks
Eric
>
> thanks
> -- PMM
>
[Qemu-arm] [PATCH v2 09/13] hw/core/or-irq: Support more than 16 inputs to an OR gate, Peter Maydell, 2018/06/04
[Qemu-arm] [PATCH v2 13/13] hw/arm/mps2-tz.c: Instantiate MPCs, Peter Maydell, 2018/06/04