aboutsummaryrefslogtreecommitdiff
path: root/target/cris/cpu-param.h
diff options
context:
space:
mode:
authorAlexey Kardashevskiy <aik@ozlabs.ru>2019-09-02 15:41:16 +1000
committerDavid Gibson <david@gibson.dropbear.id.au>2019-10-04 19:08:21 +1000
commite68cd0cb5cf49d334abe17231a1d2c28b846afa2 (patch)
tree47300b80c2f9058540f91f440bbdef09e27a8115 /target/cris/cpu-param.h
parentc4ec08ab70bab90685d1443d6da47293e3aa312a (diff)
spapr: Render full FDT on ibm,client-architecture-support
The ibm,client-architecture-support call is a way for the guest to negotiate capabilities with a hypervisor. It is implemented as: - the guest calls SLOF via client interface; - SLOF calls QEMU (H_CAS hypercall) with an options vector from the guest; - QEMU returns a device tree diff (which uses FDT format with an additional header before it); - SLOF walks through the partial diff tree and updates its internal tree with the values from the diff. This changes QEMU to simply re-render the entire tree and send it as an update. SLOF can handle this already mostly, [1] is needed before this can be applied. This stores the resulting tree in the spapr machine to have the latest valid FDT copy possible (this should not matter much as H_UPDATE_DT happens right after that but nevertheless). The benefit is reduced code size as there is no need for another set of DT rendering helpers such as spapr_fixup_cpu_dt(). The downside is that the updates are bigger now (as they include all nodes and properties) but the difference on a '-smp 256,threads=1' system before/after is 2.35s vs. 2.5s. [1] https://patchwork.ozlabs.org/patch/1152915/ Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Diffstat (limited to 'target/cris/cpu-param.h')
0 files changed, 0 insertions, 0 deletions