qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH qom-cpu 0/6] cpu: Unifying features parsing


From: Andreas Färber
Subject: [Qemu-devel] [PATCH qom-cpu 0/6] cpu: Unifying features parsing
Date: Tue, 4 Mar 2014 03:55:43 +0100

Hello,

Prompted by Alexey's desire for tweakable PowerPCCPU properties but also by
Peter's wish for ARMCPU properties, this series sets out to align cpu_model
parsing across targets.

QemuOpts would've been nice to use, but on the one hand x86 and sparc use
QemuOpts-incompatible +foo and -foo syntax (which accumulate rather than apply
immediately) and on the other linux-user and bsd-user don't use QemuOpts at all.

The x86 implementation is closest to the proposed API, save for some laziness.
SPARC is brought in line. And as fallback for the remaining targets a new
implementation, derived from x86 but supporting only key=value format, is added.

To facilitate using this infrastructure, a generic CPU init function is created.

Only lightly tested. Available at:
git://github.com/afaerber/qemu-cpu.git qom-cpu-features.v1
https://github.com/afaerber/qemu-cpu/commits/qom-cpu-features.v1

Regards,
Andreas

Cc: Alexey Kardashevskiy <address@hidden>
Cc: Peter Maydell <address@hidden>
Cc: Anthony Liguori <address@hidden>

Andreas Färber (6):
  cpu: Introduce CPUClass::parse_features() hook
  target-sparc: Use error_report() for CPU error reporting
  target-sparc: Implement CPUClass::parse_features() for SPARCCPU
  target-sparc: Defer SPARCCPU feature inference to QOM realize
  cpu: Implement CPUClass::parse_features() for the rest of CPUs
  cpu: Factor out cpu_generic_init()

 include/qom/cpu.h           | 14 +++++++
 qom/cpu.c                   | 72 +++++++++++++++++++++++++++++++++-
 target-arm/helper.c         | 14 +------
 target-cris/cpu.c           | 13 +-----
 target-i386/cpu.c           | 36 ++++++++++-------
 target-lm32/helper.c        | 13 +-----
 target-moxie/cpu.c          | 13 +-----
 target-openrisc/cpu.c       | 13 +-----
 target-ppc/translate_init.c | 21 +---------
 target-sh4/cpu.c            | 13 +-----
 target-sparc/cpu.c          | 96 +++++++++++++++++++++++++++------------------
 target-unicore32/helper.c   | 13 ++----
 12 files changed, 174 insertions(+), 157 deletions(-)

-- 
1.8.4.5




reply via email to

[Prev in Thread] Current Thread [Next in Thread]