HomeFreeBSD

hwpmc: Move DMC-620 and CMN-600 events to allow for full Armv8.0 space

Description

hwpmc: Move DMC-620 and CMN-600 events to allow for full Armv8.0 space

The documented encoding space for Armv8 was only 8 bits, but v8.0 has
always had a 10-bit encoding space for its events, and downstream in
CheriBSD we relied on this full space. This worked until the DMC-620 and
CMN-600 events were added, trampling on what should have been reserved
for Armv8.0 right from the start. Thus, renumber the DMC-620 and CMN-600
events to not do this before they make it into a stable release,
allowing for the full Armv8.0 encoding space to be used without having
to split it across two different regions.

Note that Armv8.1 grows the encoding space to 16 bits, which doesn't fit
well with our current approach. No attempt is made to allow for these
events in this change, only the ones that have always been valid (according to
the hardware) from the first commit of Armv8 support to hwpmc.

Reviewed by: arichardson, tsoome
Differential Revision: https://reviews.freebsd.org/D36925

Details