On 14 May 2014 23:58, Rob Herring <rob.herr...@linaro.org> wrote: > On Wed, May 14, 2014 at 4:25 PM, Peter Maydell <peter.mayd...@linaro.org> > wrote: >> An old host kernel, or an old guest kernel? The former is fine, >> because the KVM CPU init code will just ask for the KVM >> capability and fill in the ARMCPU field appropriately. >> For the latter, how are you supposed to determine what the >> guest kernel can support? > > Guest kernels and this was exactly my point that you can't determine > it. The virt dtb is for the guest kernel and must be either 0.1 PSCI > only or both 0.1 and 0.2. I think I misread what you meant. Reading > the other thread, as long as you just mean changing the if statement > like this, then we are in agreement: > > if (psci version is 0.1) { > qemu_fdt_setprop_string(fdt, "/psci", "compatible", "arm,psci"); > } else { > const char compat[] = "arm,psci-0.2\0arm,psci"; > qemu_fdt_setprop(fdt, "/psci", "compatible", compat, sizeof(compat)); > }
Yes, that's all I meant; sorry for the confusion. I hadn't noticed that we announce and support both the 0.1 and 0.2 interfaces in the else {} branch, which is probably why my phrasing was confusing. thanks -- PMM