On Mon, 8 Jun 2020 at 13:02, Leif Lindholm <l...@nuviainc.com> wrote: > On Thu, Jun 04, 2020 at 19:43:06 +0100, Peter Maydell wrote: > > https://www.kernel.org/doc/Documentation/devicetree/bindings/arm/cpus.yaml > > is the official list of permitted strings, incidentally. > > My feeling is none of the values there are appropriate (arm,armv8 > indicates ARM ltd, but not aarch64 support). I made something up for > the RFC set. We could always send a patch adding some qemu, or > generic, target.
arm,armv8 is the generic "for software models" target, which sounds appropriate enough to me. Anything consuming a dtb presumably already knows whether it's in AArch64 state. If you needed to be able to determine that from the device tree then I think you'd be better off defining a property for it rather than having some kind of lookup table of "these compat string values imply 64-bit and these others do not". However, I've just noticed that when the kernel added this to the CPU binding list (apparently in passing during the conversion to yaml) in commit 672951cbd1b70a9ede6f9c6eba4ed6b726d32b03 in 2018, it documented "arm,armv8", whereas the string QEMU uses when KVM is being used is "arm,arm-v8" with a hyphen (or "arm,arm-v7" for 32-bit KVM), which is what we've used since 2013. So I guess we need to also add the with-a-hyphen version to the kernel binding documentation. thanks -- PMM