Hi, On Thu, Jan 09, 2025 at 11:51:27AM +0300, Sergey Bugaev wrote: > > "Implementer", "architecture", "variant", "part", "revision" come from > midr/revidr [0], and "features" are hwcap names. These are privileged > registers that only EL1 can read, but on AArch64 gnumach, their values > are obtainable from userland using the aarch64_get_hwcaps RPC (see > gnumach:aarch64/include/mach/aarch64/mach_aarch64.defs and > gnumach:aarch64/include/mach/aarch64/mach_aarch64_types.h).
Looking at the types.h header, I see there are HWCAP2_* definitions for bits above 32. Since hwcaps_t is an uint32_t and the defs file claims to return two values (I assume the first for HWCAP_* and the second for HWCAP2_*), I don't see how to get the higher bits of HWCAP2_*. How does that work?