[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-arm] [PATCH v4 00/21] More fully implement ARM PMUv3
From: |
Peter Maydell |
Subject: |
Re: [Qemu-arm] [PATCH v4 00/21] More fully implement ARM PMUv3 |
Date: |
Fri, 20 Apr 2018 11:55:14 +0100 |
On 17 April 2018 at 21:37, Aaron Lindsay <address@hidden> wrote:
> The ARM PMU implementation currently contains a basic cycle counter, but it is
> often useful to gather counts of other events and filter them based on
> execution mode. These patches flesh out the implementations of various PMU
> registers including PM[X]EVCNTR and PM[X]EVTYPER, add a struct definition to
> represent arbitrary counter types, implement mode filtering, send interrupts
> on
> counter overflow, and add instruction, cycle, and software increment events.
>
> Notable changes since v3:
>
> * Detect counter overflow and send interrupts accordingly (adds a 'shadow'
> copy
> of both PMCCNTR and general-purpose counters, possibly/probably Doing It
> Wrong)
> * Update counter filtering code to more closely resemble the ARM documentation
> in form and functionality
> * Don't mix EL change hooks and KVM
> * Don't call gen_io_start/end if not actually using icount
> * Reorganized a few of the patches to more logically group changes
> * Clarify and otherwise improve a few comments
> * There are also a number of less significant changes scattered around
In the interests of cutting down the size of this patchset for
future rounds, I'm going to apply these patches to target-arm.next:
> 1 target/arm: Check PMCNTEN for whether PMCCNTR is enabled
> 2 target/arm: Treat PMCCNTR as alias of PMCCNTR_EL0
> 4 target/arm: Mask PMU register writes based on PMCR_EL0.N
> 5 target/arm: Fetch GICv3 state directly from CPUARMState
> 6 target/arm: Support multiple EL change hooks
> 7 target/arm: Add pre-EL change hooks
> 8 target/arm: Allow EL change hooks to do IO
> 9 target/arm: Fix bitmask for PMCCFILTR writes
> 12 target/arm: Make PMOVSCLR and PMUSERENR 64 bits wide
thanks
-- PMM
- [Qemu-arm] [PATCH v4 14/21] target/arm: Implement PMOVSSET, (continued)
- [Qemu-arm] [PATCH v4 14/21] target/arm: Implement PMOVSSET, Aaron Lindsay, 2018/04/17
- [Qemu-arm] [PATCH v4 18/21] target/arm: PMU: Set PMCR.N to 4, Aaron Lindsay, 2018/04/17
- [Qemu-arm] [PATCH v4 13/21] target/arm: Add ARM_FEATURE_V7VE for v7 Virtualization Extensions, Aaron Lindsay, 2018/04/17
- [Qemu-arm] [PATCH v4 17/21] target/arm: PMU: Add instruction and cycle events, Aaron Lindsay, 2018/04/17
- [Qemu-arm] [PATCH v4 15/21] target/arm: Add array for supported PMU events, generate PMCEID[01], Aaron Lindsay, 2018/04/17
- [Qemu-arm] [PATCH v4 16/21] target/arm: Finish implementation of PM[X]EVCNTR and PM[X]EVTYPER, Aaron Lindsay, 2018/04/17
- [Qemu-arm] [PATCH v4 19/21] target/arm: Implement PMSWINC, Aaron Lindsay, 2018/04/17
- [Qemu-arm] [PATCH v4 20/21] target/arm: Mark PMINTENSET accesses as possibly doing IO, Aaron Lindsay, 2018/04/17
- [Qemu-arm] [PATCH v4 21/21] target/arm: Send interrupts on PMU counter overflow, Aaron Lindsay, 2018/04/17
- Re: [Qemu-arm] [PATCH v4 00/21] More fully implement ARM PMUv3,
Peter Maydell <=