qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v1 1/1] hw/intc/ibex_plic: Clear the claim register when read


From: Philippe Mathieu-Daudé
Subject: Re: [PATCH v1 1/1] hw/intc/ibex_plic: Clear the claim register when read
Date: Fri, 6 Nov 2020 15:20:29 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.3.1

On 11/6/20 3:32 AM, Alistair Francis wrote:
> After claiming the interrupt by reading the claim register we want to
> clear the register to make sure the interrupt doesn't appear at the next
> read.
> 
> This matches the documentation for the claim register as it clears the
> pending bit (which we already do): 
> https://docs.opentitan.org/hw/ip/rv_plic/doc/index.html

"When an interrupt is claimed by a target the relevant bit of IP is
cleared." Correct.

Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>

> 
> This also matches the current hardware.
> 
> Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
> ---
>  hw/intc/ibex_plic.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/hw/intc/ibex_plic.c b/hw/intc/ibex_plic.c
> index f49fa67c91..235e6b88ff 100644
> --- a/hw/intc/ibex_plic.c
> +++ b/hw/intc/ibex_plic.c
> @@ -139,6 +139,9 @@ static uint64_t ibex_plic_read(void *opaque, hwaddr addr,
>          /* Return the current claimed interrupt */
>          ret = s->claim;
>  
> +        /* Clear the claimed interrupt */
> +        s->claim = 0x00000000;
> +
>          /* Update the interrupt status after the claim */
>          ibex_plic_update(s);
>      }
> 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]