qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH next v2 00/74] QOM CPUState, part 3: CPU reset
@ 2012-05-10  0:13 Andreas Färber
  2012-05-10  0:13 ` [Qemu-devel] [PATCH next v2 01/74] target-arm: Use cpu_reset() in cpu_arm_init() Andreas Färber
                   ` (78 more replies)
  0 siblings, 79 replies; 122+ messages in thread
From: Andreas Färber @ 2012-05-10  0:13 UTC (permalink / raw)
  To: qemu-devel
  Cc: Peter Maydell, Riku Voipio, Edgar E. Iglesias, Alexander Graf,
	Blue Swirl, Max Filippov, Michael Walle, qemu-ppc,
	Anthony Liguori, Igor Mammedov, Paolo Bonzini,
	Andreas Färber, Aurelien Jarno, Richard Henderson

Hello,

Based on my CPUState patches for 1.1 (qom-cpu-1.1) this series kills off the
cpu_state_reset() function, which had been renamed as an interim solution
to free the identifier "cpu_reset" for QOM.

The interested observer may note that the earlier sh4 SH7750 patches (that
have been deferred due to time constraints for 1.1) were a test run and
serve as template for propagating xxxCPU throughout the code base:

(i) In target-specific code, accessing CPUxxxState* is a cheap pointer
dereference from xxxCPU (&cpu->env), so xxxCPU should be preferred for any
static helper functions and QOM/qdev state structs because fields in CPUState
and in xxxCPU will increase over time. In state structs this also paves
the way for QOM child<> or link<> properties.

(ii) In TCG helpers, the target's xxxCPU can be obtained via xxx_env_get_cpu().
Be aware that this incurs one QOM cast.

(iii) In generic code, the base CPU can be obtained via ENV_GET_CPU() macro.
Note that this incurs two QOM casts, so local variables should be preferred
over repeated macro usage within a function.

(iv) In generic functions, only after all usages of env have been eliminated
can the argument be changed from CPUArchState to CPUState.

(v) Opaque xxxCPU* values are assigned directly to xxxCPU*, to save QOM casts;
to CPUState* via CPU() cast, in case the casting mechanism ever gets changed.

Historically, this series has been cherry-picked from a larger CPUState
refactoring (guess why) and reordered to group subsystems and to enforce
get, pass, use order.
I had checked v1 to compile on ...
* openSUSE 12.1 x86_64 w/KVM,
* openSUSE Factory ppc w/KVM (with the AREG0 #error suppressed),
* mingw32/64 cross-builds,
* OpenBSD 5.1 amd64.
Thus I'm confident that I got order, return types and local variables right;
changes to opaque values however (keyword "pass") should be reviewed carefully.
v2 fixes the changed cpu_init macros to return NULL if CPU init failed.

Again, target maintainers are requested to start queuing their patches on their
-next branches, where available, to avoid collisions.
I've been careful to verbosely document which change is for what; the targets
are not interdependent except for the final patch, neither is linux-user.
PReP patches depend on target-ppc, so should go through the ppc tree please.
Only target-mips actually depends on a 1.1 patch (the comment drop).

Some logical next steps that were not strictly necessary for cpu_reset() have
been deferred to part 4, including s390x and some more pxa2xx refactorings.

Available for testing and cherry-picking (not pulling!) from:
git://github.com/afaerber/qemu-cpu.git qom-cpu-reset.v2
https://github.com/afaerber/qemu-cpu/commits/qom-cpu-reset.v2

Regards,
Andreas

Cc: Anthony Liguori <anthony@codemonkey.ws>
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: Igor Mammedov <imammedo@redhat.com>

Cc: Peter Maydell <peter.maydell@linaro.org>
Cc: Alexander Graf <agraf@suse.de>
Cc: qemu-ppc <qemu-ppc@nongnu.org>
Cc: Blue Swirl <blauwirbel@gmail.com>
Cc: Edgar E. Iglesias <edgar.iglesias@gmail.com>
Cc: Max Filippov <jcmvbkbc@gmail.com>
Cc: Michael Walle <michael@walle.cc>
Cc: Aurelien Jarno <aurelien@aurel32.net>
Cc: Richard Henderson <rth@twiddle.net>
Cc: Riku Voipio <riku.voipio@iki.fi>

v1 -> v2:
* Handle cpu_xxx_init() failure gracefully by replacing the cpu_init() macros
  with static inline functions checking the return value. Reported by Peter.

Andreas Färber (74):
  target-arm: Use cpu_reset() in cpu_arm_init()
  target-mips: Use cpu_reset() in cpu_mips_init()
  target-i386: Pass X86CPU to do_cpu_{init,sipi}()
  target-i386: Let cpu_x86_init() return X86CPU
  pc: Use cpu_x86_init() to obtain X86CPU
  pc: Pass X86CPU to pc_cpu_reset()
  target-sparc: Let cpu_sparc_init() return SPARCCPU
  sun4m: Use cpu_sparc_init() to obtain SPARCCPU
  sun4m: Pass SPARCCPU to {main,secondary}_cpu_reset()
  sun4u: Use cpu_sparc_init() to obtain SPARCCPU
  sun4u: Let cpu_devinit() return SPARCCPU
  sun4u: Store SPARCCPU in ResetData
  leon3: Use cpu_sparc_init() to obtain SPARCCPU
  leon3: Store SPARCCPU in ResetData
  target-ppc: Let cpu_ppc_init() return PowerPCCPU
  ppce500_mpc8544ds: Pass PowerPCCPU to mpc8544ds_cpu_reset[_sec]
  spapr: Use cpu_ppc_init() to obtain PowerPCCPU
  spapr: Pass PowerPCCPU to spapr_cpu_reset()
  ppc440_bamboo: Use cpu_ppc_init() to obtain PowerPCCPU
  ppc440_bamboo: Pass PowerPCCPU to main_cpu_reset()
  ppc4xx_devs: Use cpu_ppc_init() to obtain PowerPCCPU
  ppc4xx_devs: Pass PowerPCCPU to ppc4xx_reset()
  ppc_newworld: Use cpu_ppc_init() to obtain PowerPCCPU
  ppc_newworld: Pass PowerPCCPU to ppc_core99_reset()
  ppc_oldworld: Use cpu_ppc_init() to obtain PowerPCCPU
  ppc_oldworld: Pass PowerPCCPU to ppc_heathrow_reset()
  ppc_prep: Use cpu_ppc_init() to obtain PowerPCCPU
  ppc_prep: Pass PowerPCCPU to ppc_prep_reset()
  virtex_ml507: Use cpu_ppc_init() to obtain PowerPCCPU
  virtex_ml507: Let ppc440_init_xilinx() return PowerPCCPU
  virtex_ml507: Pass PowerPCCPU to main_cpu_reset()
  cpu-exec: Use cpu_reset() in cpu_exec() for TARGET_PPC
  pxa2xx: Use cpu_arm_init() and store ARMCPU
  omap: Use cpu_arm_init() to store ARMCPU in omap_mpu_state_s
  armv7m: Use cpu_arm_init() to obtain ARMCPU
  armv7m: Pass ARMCPU to armv7m_reset()
  arm_boot: Pass ARMCPU to do_cpu_reset()
  target-sh4: Let cpu_sh4_init() return SuperHCPU
  r2d: Use cpu_sh4_init() to obtain SuperHCPU
  r2d: Store SuperHCPU in ResetData
  target-lm32: Let cpu_lm32_init() return LM32CPU
  lm32_boards: Use cpu_lm32_init() to obtain LM32CPU
  lm32_boards: Store LM32CPU in ResetInfo
  milkymist: Use cpu_lm32_init() to obtain LM32CPU
  milkymist: Store LM32 in ResetInfo
  target-xtensa: Let cpu_xtensa_init() return XtensaCPU
  xtensa_sim: Use cpu_xtensa_init() to obtain XtensaCPU
  xtensa_sim: Pass XtensaCPU to sim_reset()
  xtensa_lx60: Use cpu_xtensa_init() to obtain XtensaCPU
  xtensa_lx60: Pass XtensaCPU to lx60_reset()
  target-cris: Reindent cpu_cris_init()
  target-cris: Let cpu_cris_init() return CRISCPU
  axis_dev88: Use cpu_cris_init() to obtain CRISCPU
  cris-boot: Pass CRISCPU to cris_load_image()
  cris-boot: Pass CRISCPU to main_cpu_reset().
  target-microblaze: Let cpu_mb_init() return MicroBlazeCPU
  petalogix_ml605: Use cpu_mb_init() to obtain MicroBlazeCPU
  petalogix_s3adsp1800_mmu: Use cpu_mb_init() to obtain MicroBlazeCPU
  microblaze_boot: Pass MicroBlazeCPU to microblaze_load_kernel()
  target-mips: Use cpu_reset() in do_interrupt()
  target-mips: Let cpu_mips_init() return MIPSCPU
  mips_fulong2e: Use cpu_mips_cpu() to obtain MIPSCPU
  mips_fulong2e: Pass MIPSCPU to main_cpu_reset()
  mips_jazz: Use cpu_mips_init() to obtain MIPSCPU
  mips_jazz: Pass MIPSCPU to main_cpu_reset()
  mips_malta: Use cpu_mips_init() to obtain MIPSCPU
  mips_malta: Pass MIPSCPU to main_cpu_reset()
  mips_mipssim: Use cpu_mips_init() to obtain MIPSCPU
  mips_mipssim: Store MIPSCPU in ResetData
  mips_r4k: Use cpu_mips_init() to obtain MIPSCPU
  mips_r4k: Store MIPSCPU in ResetData
  bsd-user: Use cpu_reset() in after cpu_init()
  linux-user: Use cpu_reset() after cpu_init() / cpu_copy()
  Kill off cpu_state_reset()

 bsd-user/main.c               |    2 +-
 cpu-all.h                     |    1 -
 cpu-exec.c                    |    9 ++-
 hw/arm_boot.c                 |    9 ++-
 hw/armv7m.c                   |   15 ++++--
 hw/axis_dev88.c               |    6 ++-
 hw/cris-boot.c                |   10 ++--
 hw/cris-boot.h                |    2 +-
 hw/leon3.c                    |   14 +++--
 hw/lm32_boards.c              |   18 ++++---
 hw/mainstone.c                |    2 +-
 hw/microblaze_boot.c          |   16 +++---
 hw/microblaze_boot.h          |    4 +-
 hw/milkymist.c                |   12 +++--
 hw/mips_fulong2e.c            |   13 +++--
 hw/mips_jazz.c                |   13 +++--
 hw/mips_malta.c               |   15 ++++--
 hw/mips_mipssim.c             |   15 +++--
 hw/mips_r4k.c                 |   15 +++--
 hw/nseries.c                  |    6 +-
 hw/omap.h                     |    2 +-
 hw/omap1.c                    |   20 ++++---
 hw/omap2.c                    |    8 ++--
 hw/omap_sx1.c                 |    2 +-
 hw/palm.c                     |    2 +-
 hw/pc.c                       |   19 ++++---
 hw/petalogix_ml605_mmu.c      |   10 +++-
 hw/petalogix_s3adsp1800_mmu.c |   10 +++-
 hw/ppc440_bamboo.c            |   13 +++--
 hw/ppc4xx_devs.c              |   13 +++--
 hw/ppc_newworld.c             |   13 +++--
 hw/ppc_oldworld.c             |   13 +++--
 hw/ppc_prep.c                 |   13 +++--
 hw/ppce500_mpc8544ds.c        |   21 +++++---
 hw/pxa.h                      |    2 +-
 hw/pxa2xx.c                   |   40 +++++++-------
 hw/r2d.c                      |   18 ++++---
 hw/spapr.c                    |   14 +++--
 hw/spitz.c                    |    2 +-
 hw/sun4m.c                    |   20 +++++---
 hw/sun4u.c                    |   25 ++++++----
 hw/tosa.c                     |    2 +-
 hw/virtex_ml507.c             |   27 ++++++----
 hw/xtensa_lx60.c              |   15 +++--
 hw/xtensa_sim.c               |   17 ++++--
 hw/z2.c                       |    2 +-
 linux-user/main.c             |    2 +-
 linux-user/syscall.c          |    2 +-
 target-arm/helper.c           |    7 +--
 target-cris/cpu.h             |   12 ++++-
 target-cris/translate.c       |  110 ++++++++++++++++++++---------------------
 target-i386/cpu.h             |   16 +++++--
 target-i386/helper.c          |   23 ++++-----
 target-i386/kvm.c             |    6 ++-
 target-lm32/cpu.c             |    2 +-
 target-lm32/cpu.h             |   12 ++++-
 target-lm32/helper.c          |   10 +---
 target-m68k/helper.c          |    5 --
 target-microblaze/cpu.h       |   12 ++++-
 target-microblaze/translate.c |   18 ++-----
 target-mips/cpu.h             |   15 +++++-
 target-mips/helper.c          |    3 +-
 target-mips/translate.c       |    6 +-
 target-ppc/cpu.h              |   12 ++++-
 target-ppc/helper.c           |    9 +---
 target-s390x/helper.c         |    9 +---
 target-sh4/cpu.h              |   12 ++++-
 target-sh4/translate.c        |    9 +---
 target-sparc/cpu.c            |    9 +---
 target-sparc/cpu.h            |   17 +++++-
 target-xtensa/cpu.c           |    2 +-
 target-xtensa/cpu.h           |   16 +++++-
 target-xtensa/helper.c        |    9 +---
 73 files changed, 516 insertions(+), 389 deletions(-)

-- 
1.7.7

^ permalink raw reply	[flat|nested] 122+ messages in thread
* [Qemu-devel] [PATCH next v2 00/74] QOM CPUState, part 3: CPU reset
@ 2012-05-10  0:10 Andreas Färber
  2012-05-10  0:10 ` [Qemu-devel] [PATCH next v2 01/74] target-arm: Use cpu_reset() in cpu_arm_init() Andreas Färber
  0 siblings, 1 reply; 122+ messages in thread
From: Andreas Färber @ 2012-05-10  0:10 UTC (permalink / raw)
  To: qemu-devel
  Cc: Peter Maydell, Riku Voipio, Edgar E. Iglesias, Alexander Graf,
	Blue Swirl, Max Filippov, Michael Walle, qemu-ppc,
	Anthony Liguori, Igor Mammedov, Paolo Bonzini,
	Andreas Färber, Aurelien Jarno, Richard Henderson

Hello,

Based on my CPUState patches for 1.1 (qom-cpu-1.1) this series kills off the
cpu_state_reset() function, which had been renamed as an interim solution
to free the identifier "cpu_reset" for QOM.

The interested observer may note that the earlier sh4 SH7750 patches (that
have been deferred due to time constraints for 1.1) were a test run and
serve as template for propagating xxxCPU throughout the code base:

(i) In target-specific code, accessing CPUxxxState* is a cheap pointer
dereference from xxxCPU (&cpu->env), so xxxCPU should be preferred for any
static helper functions and QOM/qdev state structs because fields in CPUState
and in xxxCPU will increase over time. In state structs this also paves
the way for QOM child<> or link<> properties.

(ii) In TCG helpers, the target's xxxCPU can be obtained via xxx_env_get_cpu().
Be aware that this incurs one QOM cast.

(iii) In generic code, the base CPU can be obtained via ENV_GET_CPU() macro.
Note that this incurs two QOM casts, so local variables should be preferred
over repeated macro usage within a function.

(iv) In generic functions, only after all usages of env have been eliminated
can the argument be changed from CPUArchState to CPUState.

(v) Opaque xxxCPU* values are assigned directly to xxxCPU*, to save QOM casts;
to CPUState* via CPU() cast, in case the casting mechanism ever gets changed.

Historically, this series has been cherry-picked from a larger CPUState
refactoring (guess why) and reordered to group subsystems and to enforce
get, pass, use order.
I had checked v1 to compile on ...
* openSUSE 12.1 x86_64 w/KVM,
* openSUSE Factory ppc w/KVM (with the AREG0 #error suppressed),
* mingw32/64 cross-builds,
* OpenBSD 5.1 amd64.
Thus I'm confident that I got order, return types and local variables right;
changes to opaque values however (keyword "pass") should be reviewed carefully.
v2 fixes the changed cpu_init macros to return NULL if CPU init failed.

Again, target maintainers are requested to start queuing their patches on their
-next branches, where available, to avoid collisions.
I've been careful to verbosely document which change is for what; the targets
are not interdependent except for the final patch, neither is linux-user.
PReP patches depend on target-ppc, so should go through the ppc tree please.
Only target-mips actually depends on a 1.1 patch (the comment drop).

Some logical next steps that were not strictly necessary for cpu_reset() have
been deferred to part 4, including s390x and some more pxa2xx refactorings.

Available for testing and cherry-picking (not pulling!) from:
git://github.com/afaerber/qemu-cpu.git qom-cpu-reset.v2
https://github.com/afaerber/qemu-cpu/commits/qom-cpu-reset.v2

Regards,
Andreas

Cc: Anthony Liguori <anthony@codemonkey.ws>
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: Igor Mammedov <imammedo@redhat.com>

Cc: Peter Maydell <peter.maydell@linaro.org>
Cc: Alexander Graf <agraf@suse.de>
Cc: qemu-ppc <qemu-ppc@nongnu.org>
Cc: Blue Swirl <blauwirbel@gmail.com>
Cc: Edgar E. Iglesias <edgar.iglesias@gmail.com>
Cc: Max Filippov <jcmvbkbc@gmail.com>
Cc: Michael Walle <michael@walle.cc>
Cc: Aurelien Jarno <aurelien@aurel32.net>
Cc: Richard Henderson <rth@twiddle.net>
Cc: Riku Voipio <riku.voipio@iki.fi>

v1 -> v2:
* Handle cpu_xxx_init() failure gracefully by replacing the cpu_init() macros
  with static inline functions checking the return value. Reported by Peter.

Andreas Färber (74):
  target-arm: Use cpu_reset() in cpu_arm_init()
  target-mips: Use cpu_reset() in cpu_mips_init()
  target-i386: Pass X86CPU to do_cpu_{init,sipi}()
  target-i386: Let cpu_x86_init() return X86CPU
  pc: Use cpu_x86_init() to obtain X86CPU
  pc: Pass X86CPU to pc_cpu_reset()
  target-sparc: Let cpu_sparc_init() return SPARCCPU
  sun4m: Use cpu_sparc_init() to obtain SPARCCPU
  sun4m: Pass SPARCCPU to {main,secondary}_cpu_reset()
  sun4u: Use cpu_sparc_init() to obtain SPARCCPU
  sun4u: Let cpu_devinit() return SPARCCPU
  sun4u: Store SPARCCPU in ResetData
  leon3: Use cpu_sparc_init() to obtain SPARCCPU
  leon3: Store SPARCCPU in ResetData
  target-ppc: Let cpu_ppc_init() return PowerPCCPU
  ppce500_mpc8544ds: Pass PowerPCCPU to mpc8544ds_cpu_reset[_sec]
  spapr: Use cpu_ppc_init() to obtain PowerPCCPU
  spapr: Pass PowerPCCPU to spapr_cpu_reset()
  ppc440_bamboo: Use cpu_ppc_init() to obtain PowerPCCPU
  ppc440_bamboo: Pass PowerPCCPU to main_cpu_reset()
  ppc4xx_devs: Use cpu_ppc_init() to obtain PowerPCCPU
  ppc4xx_devs: Pass PowerPCCPU to ppc4xx_reset()
  ppc_newworld: Use cpu_ppc_init() to obtain PowerPCCPU
  ppc_newworld: Pass PowerPCCPU to ppc_core99_reset()
  ppc_oldworld: Use cpu_ppc_init() to obtain PowerPCCPU
  ppc_oldworld: Pass PowerPCCPU to ppc_heathrow_reset()
  ppc_prep: Use cpu_ppc_init() to obtain PowerPCCPU
  ppc_prep: Pass PowerPCCPU to ppc_prep_reset()
  virtex_ml507: Use cpu_ppc_init() to obtain PowerPCCPU
  virtex_ml507: Let ppc440_init_xilinx() return PowerPCCPU
  virtex_ml507: Pass PowerPCCPU to main_cpu_reset()
  cpu-exec: Use cpu_reset() in cpu_exec() for TARGET_PPC
  pxa2xx: Use cpu_arm_init() and store ARMCPU
  omap: Use cpu_arm_init() to store ARMCPU in omap_mpu_state_s
  armv7m: Use cpu_arm_init() to obtain ARMCPU
  armv7m: Pass ARMCPU to armv7m_reset()
  arm_boot: Pass ARMCPU to do_cpu_reset()
  target-sh4: Let cpu_sh4_init() return SuperHCPU
  r2d: Use cpu_sh4_init() to obtain SuperHCPU
  r2d: Store SuperHCPU in ResetData
  target-lm32: Let cpu_lm32_init() return LM32CPU
  lm32_boards: Use cpu_lm32_init() to obtain LM32CPU
  lm32_boards: Store LM32CPU in ResetInfo
  milkymist: Use cpu_lm32_init() to obtain LM32CPU
  milkymist: Store LM32 in ResetInfo
  target-xtensa: Let cpu_xtensa_init() return XtensaCPU
  xtensa_sim: Use cpu_xtensa_init() to obtain XtensaCPU
  xtensa_sim: Pass XtensaCPU to sim_reset()
  xtensa_lx60: Use cpu_xtensa_init() to obtain XtensaCPU
  xtensa_lx60: Pass XtensaCPU to lx60_reset()
  target-cris: Reindent cpu_cris_init()
  target-cris: Let cpu_cris_init() return CRISCPU
  axis_dev88: Use cpu_cris_init() to obtain CRISCPU
  cris-boot: Pass CRISCPU to cris_load_image()
  cris-boot: Pass CRISCPU to main_cpu_reset().
  target-microblaze: Let cpu_mb_init() return MicroBlazeCPU
  petalogix_ml605: Use cpu_mb_init() to obtain MicroBlazeCPU
  petalogix_s3adsp1800_mmu: Use cpu_mb_init() to obtain MicroBlazeCPU
  microblaze_boot: Pass MicroBlazeCPU to microblaze_load_kernel()
  target-mips: Use cpu_reset() in do_interrupt()
  target-mips: Let cpu_mips_init() return MIPSCPU
  mips_fulong2e: Use cpu_mips_cpu() to obtain MIPSCPU
  mips_fulong2e: Pass MIPSCPU to main_cpu_reset()
  mips_jazz: Use cpu_mips_init() to obtain MIPSCPU
  mips_jazz: Pass MIPSCPU to main_cpu_reset()
  mips_malta: Use cpu_mips_init() to obtain MIPSCPU
  mips_malta: Pass MIPSCPU to main_cpu_reset()
  mips_mipssim: Use cpu_mips_init() to obtain MIPSCPU
  mips_mipssim: Store MIPSCPU in ResetData
  mips_r4k: Use cpu_mips_init() to obtain MIPSCPU
  mips_r4k: Store MIPSCPU in ResetData
  bsd-user: Use cpu_reset() in after cpu_init()
  linux-user: Use cpu_reset() after cpu_init() / cpu_copy()
  Kill off cpu_state_reset()

 bsd-user/main.c               |    2 +-
 cpu-all.h                     |    1 -
 cpu-exec.c                    |    9 ++-
 hw/arm_boot.c                 |    9 ++-
 hw/armv7m.c                   |   15 ++++--
 hw/axis_dev88.c               |    6 ++-
 hw/cris-boot.c                |   10 ++--
 hw/cris-boot.h                |    2 +-
 hw/leon3.c                    |   14 +++--
 hw/lm32_boards.c              |   18 ++++---
 hw/mainstone.c                |    2 +-
 hw/microblaze_boot.c          |   16 +++---
 hw/microblaze_boot.h          |    4 +-
 hw/milkymist.c                |   12 +++--
 hw/mips_fulong2e.c            |   13 +++--
 hw/mips_jazz.c                |   13 +++--
 hw/mips_malta.c               |   15 ++++--
 hw/mips_mipssim.c             |   15 +++--
 hw/mips_r4k.c                 |   15 +++--
 hw/nseries.c                  |    6 +-
 hw/omap.h                     |    2 +-
 hw/omap1.c                    |   20 ++++---
 hw/omap2.c                    |    8 ++--
 hw/omap_sx1.c                 |    2 +-
 hw/palm.c                     |    2 +-
 hw/pc.c                       |   19 ++++---
 hw/petalogix_ml605_mmu.c      |   10 +++-
 hw/petalogix_s3adsp1800_mmu.c |   10 +++-
 hw/ppc440_bamboo.c            |   13 +++--
 hw/ppc4xx_devs.c              |   13 +++--
 hw/ppc_newworld.c             |   13 +++--
 hw/ppc_oldworld.c             |   13 +++--
 hw/ppc_prep.c                 |   13 +++--
 hw/ppce500_mpc8544ds.c        |   21 +++++---
 hw/pxa.h                      |    2 +-
 hw/pxa2xx.c                   |   40 +++++++-------
 hw/r2d.c                      |   18 ++++---
 hw/spapr.c                    |   14 +++--
 hw/spitz.c                    |    2 +-
 hw/sun4m.c                    |   20 +++++---
 hw/sun4u.c                    |   25 ++++++----
 hw/tosa.c                     |    2 +-
 hw/virtex_ml507.c             |   27 ++++++----
 hw/xtensa_lx60.c              |   15 +++--
 hw/xtensa_sim.c               |   17 ++++--
 hw/z2.c                       |    2 +-
 linux-user/main.c             |    2 +-
 linux-user/syscall.c          |    2 +-
 target-arm/helper.c           |    7 +--
 target-cris/cpu.h             |   12 ++++-
 target-cris/translate.c       |  110 ++++++++++++++++++++---------------------
 target-i386/cpu.h             |   16 +++++--
 target-i386/helper.c          |   23 ++++-----
 target-i386/kvm.c             |    6 ++-
 target-lm32/cpu.c             |    2 +-
 target-lm32/cpu.h             |   12 ++++-
 target-lm32/helper.c          |   10 +---
 target-m68k/helper.c          |    5 --
 target-microblaze/cpu.h       |   12 ++++-
 target-microblaze/translate.c |   18 ++-----
 target-mips/cpu.h             |   15 +++++-
 target-mips/helper.c          |    3 +-
 target-mips/translate.c       |    6 +-
 target-ppc/cpu.h              |   12 ++++-
 target-ppc/helper.c           |    9 +---
 target-s390x/helper.c         |    9 +---
 target-sh4/cpu.h              |   12 ++++-
 target-sh4/translate.c        |    9 +---
 target-sparc/cpu.c            |    9 +---
 target-sparc/cpu.h            |   17 +++++-
 target-xtensa/cpu.c           |    2 +-
 target-xtensa/cpu.h           |   16 +++++-
 target-xtensa/helper.c        |    9 +---
 73 files changed, 516 insertions(+), 389 deletions(-)

-- 
1.7.7

^ permalink raw reply	[flat|nested] 122+ messages in thread

end of thread, other threads:[~2012-05-23 18:48 UTC | newest]

Thread overview: 122+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-05-10  0:13 [Qemu-devel] [PATCH next v2 00/74] QOM CPUState, part 3: CPU reset Andreas Färber
2012-05-10  0:13 ` [Qemu-devel] [PATCH next v2 01/74] target-arm: Use cpu_reset() in cpu_arm_init() Andreas Färber
2012-05-11 11:24   ` Peter Maydell
2012-05-11 12:33     ` Andreas Färber
2012-05-10  0:13 ` [Qemu-devel] [PATCH next v2 02/74] target-mips: Use cpu_reset() in cpu_mips_init() Andreas Färber
2012-05-10  0:13 ` [Qemu-devel] [PATCH next v2 03/74] target-i386: Pass X86CPU to do_cpu_{init, sipi}() Andreas Färber
2012-05-10  0:13 ` [Qemu-devel] [PATCH next v2 04/74] target-i386: Let cpu_x86_init() return X86CPU Andreas Färber
2012-05-10  0:13 ` [Qemu-devel] [PATCH next v2 05/74] pc: Use cpu_x86_init() to obtain X86CPU Andreas Färber
2012-05-10  0:13 ` [Qemu-devel] [PATCH next v2 06/74] pc: Pass X86CPU to pc_cpu_reset() Andreas Färber
2012-05-10  0:13 ` [Qemu-devel] [PATCH next v2 07/74] target-sparc: Let cpu_sparc_init() return SPARCCPU Andreas Färber
2012-05-10  0:13 ` [Qemu-devel] [PATCH next v2 08/74] sun4m: Use cpu_sparc_init() to obtain SPARCCPU Andreas Färber
2012-05-10  0:13 ` [Qemu-devel] [PATCH next v2 09/74] sun4m: Pass SPARCCPU to {main, secondary}_cpu_reset() Andreas Färber
2012-05-10  0:13 ` [Qemu-devel] [PATCH next v2 10/74] sun4u: Use cpu_sparc_init() to obtain SPARCCPU Andreas Färber
2012-05-10  0:13 ` [Qemu-devel] [PATCH next v2 11/74] sun4u: Let cpu_devinit() return SPARCCPU Andreas Färber
2012-05-10  0:13 ` [Qemu-devel] [PATCH next v2 12/74] sun4u: Store SPARCCPU in ResetData Andreas Färber
2012-05-10  0:13 ` [Qemu-devel] [PATCH next v2 13/74] leon3: Use cpu_sparc_init() to obtain SPARCCPU Andreas Färber
2012-05-10  0:13 ` [Qemu-devel] [PATCH next v2 14/74] leon3: Store SPARCCPU in ResetData Andreas Färber
2012-05-10  0:13 ` [Qemu-devel] [PATCH next v2 15/74] target-ppc: Let cpu_ppc_init() return PowerPCCPU Andreas Färber
2012-05-10  0:13 ` [Qemu-devel] [PATCH next v2 16/74] ppce500_mpc8544ds: Pass PowerPCCPU to mpc8544ds_cpu_reset[_sec] Andreas Färber
2012-05-10  0:13 ` [Qemu-devel] [PATCH next v2 17/74] spapr: Use cpu_ppc_init() to obtain PowerPCCPU Andreas Färber
2012-05-10  0:13 ` [Qemu-devel] [PATCH next v2 18/74] spapr: Pass PowerPCCPU to spapr_cpu_reset() Andreas Färber
2012-05-10  0:13 ` [Qemu-devel] [PATCH next v2 19/74] ppc440_bamboo: Use cpu_ppc_init() to obtain PowerPCCPU Andreas Färber
2012-05-10  0:13 ` [Qemu-devel] [PATCH next v2 20/74] ppc440_bamboo: Pass PowerPCCPU to main_cpu_reset() Andreas Färber
2012-05-10  0:13 ` [Qemu-devel] [PATCH next v2 21/74] ppc4xx_devs: Use cpu_ppc_init() to obtain PowerPCCPU Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 22/74] ppc4xx_devs: Pass PowerPCCPU to ppc4xx_reset() Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 23/74] ppc_newworld: Use cpu_ppc_init() to obtain PowerPCCPU Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 24/74] ppc_newworld: Pass PowerPCCPU to ppc_core99_reset() Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 25/74] ppc_oldworld: Use cpu_ppc_init() to obtain PowerPCCPU Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 26/74] ppc_oldworld: Pass PowerPCCPU to ppc_heathrow_reset() Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 27/74] ppc_prep: Use cpu_ppc_init() to obtain PowerPCCPU Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 28/74] ppc_prep: Pass PowerPCCPU to ppc_prep_reset() Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 29/74] virtex_ml507: Use cpu_ppc_init() to obtain PowerPCCPU Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 30/74] virtex_ml507: Let ppc440_init_xilinx() return PowerPCCPU Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 31/74] virtex_ml507: Pass PowerPCCPU to main_cpu_reset() Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 32/74] cpu-exec: Use cpu_reset() in cpu_exec() for TARGET_PPC Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 33/74] pxa2xx: Use cpu_arm_init() and store ARMCPU Andreas Färber
2012-05-11 11:16   ` Peter Maydell
2012-05-11 11:23     ` Andreas Färber
2012-05-11 12:45     ` Andreas Färber
2012-05-11 20:37     ` andrzej zaborowski
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 34/74] omap: Use cpu_arm_init() to store ARMCPU in omap_mpu_state_s Andreas Färber
2012-05-10 21:38   ` Peter Maydell
2012-05-11 12:52     ` Andreas Färber
2012-05-13 20:30       ` Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 35/74] armv7m: Use cpu_arm_init() to obtain ARMCPU Andreas Färber
2012-05-11 11:18   ` Peter Maydell
2012-05-11 13:34     ` Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 36/74] armv7m: Pass ARMCPU to armv7m_reset() Andreas Färber
2012-05-11 11:19   ` Peter Maydell
2012-05-11 13:36     ` Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 37/74] arm_boot: Pass ARMCPU to do_cpu_reset() Andreas Färber
2012-05-10 21:41   ` Peter Maydell
2012-05-10 22:40     ` Andreas Färber
2012-05-11  7:17       ` Peter Maydell
2012-05-11 13:39         ` Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 38/74] target-sh4: Let cpu_sh4_init() return SuperHCPU Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 39/74] r2d: Use cpu_sh4_init() to obtain SuperHCPU Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 40/74] r2d: Store SuperHCPU in ResetData Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 41/74] target-lm32: Let cpu_lm32_init() return LM32CPU Andreas Färber
2012-05-11 16:28   ` Michael Walle
2012-05-12  0:59     ` Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 42/74] lm32_boards: Use cpu_lm32_init() to obtain LM32CPU Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 43/74] lm32_boards: Store LM32CPU in ResetInfo Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 44/74] milkymist: Use cpu_lm32_init() to obtain LM32CPU Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 45/74] milkymist: Store LM32 in ResetInfo Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 46/74] target-xtensa: Let cpu_xtensa_init() return XtensaCPU Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 47/74] xtensa_sim: Use cpu_xtensa_init() to obtain XtensaCPU Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 48/74] xtensa_sim: Pass XtensaCPU to sim_reset() Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 49/74] xtensa_lx60: Use cpu_xtensa_init() to obtain XtensaCPU Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 50/74] xtensa_lx60: Pass XtensaCPU to lx60_reset() Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 51/74] target-cris: Reindent cpu_cris_init() Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 52/74] target-cris: Let cpu_cris_init() return CRISCPU Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 53/74] axis_dev88: Use cpu_cris_init() to obtain CRISCPU Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 54/74] cris-boot: Pass CRISCPU to cris_load_image() Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 55/74] cris-boot: Pass CRISCPU to main_cpu_reset() Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 56/74] target-microblaze: Let cpu_mb_init() return MicroBlazeCPU Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 57/74] petalogix_ml605: Use cpu_mb_init() to obtain MicroBlazeCPU Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 58/74] petalogix_s3adsp1800_mmu: " Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 59/74] microblaze_boot: Pass MicroBlazeCPU to microblaze_load_kernel() Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 60/74] target-mips: Use cpu_reset() in do_interrupt() Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 61/74] target-mips: Let cpu_mips_init() return MIPSCPU Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 62/74] mips_fulong2e: Use cpu_mips_cpu() to obtain MIPSCPU Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 63/74] mips_fulong2e: Pass MIPSCPU to main_cpu_reset() Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 64/74] mips_jazz: Use cpu_mips_init() to obtain MIPSCPU Andreas Färber
2012-05-11 11:30   ` Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 65/74] mips_jazz: Pass MIPSCPU to main_cpu_reset() Andreas Färber
2012-05-11 11:31   ` Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 66/74] mips_malta: Use cpu_mips_init() to obtain MIPSCPU Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 67/74] mips_malta: Pass MIPSCPU to main_cpu_reset() Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 68/74] mips_mipssim: Use cpu_mips_init() to obtain MIPSCPU Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 69/74] mips_mipssim: Store MIPSCPU in ResetData Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 70/74] mips_r4k: Use cpu_mips_init() to obtain MIPSCPU Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 71/74] mips_r4k: Store MIPSCPU in ResetData Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 72/74] bsd-user: Use cpu_reset() in after cpu_init() Andreas Färber
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 73/74] linux-user: Use cpu_reset() after cpu_init() / cpu_copy() Andreas Färber
2012-05-11 11:22   ` Peter Maydell
2012-05-11 11:26     ` Andreas Färber
2012-05-11 11:28       ` Alexander Graf
2012-05-11 11:32         ` Peter Maydell
2012-05-11 11:33         ` Andreas Färber
2012-05-16 12:36       ` Igor Mammedov
2012-05-16 13:01         ` Andreas Färber
2012-05-16 13:06           ` Peter Maydell
2012-05-16 16:05           ` Igor Mammedov
2012-05-16 16:13             ` Peter Maydell
2012-05-16 20:52               ` Igor Mammedov
2012-05-10  0:14 ` [Qemu-devel] [PATCH next v2 74/74] Kill off cpu_state_reset() Andreas Färber
2012-05-14 16:13 ` [Qemu-devel] [PATCH next v2 00/74] QOM CPUState, part 3: CPU reset Andreas Färber
2012-05-14 16:15 ` Andreas Färber
2012-05-14 19:54   ` Blue Swirl
2012-05-14 20:59     ` Andreas Färber
2012-05-14 21:22       ` Blue Swirl
2012-05-21  9:09         ` Andreas Färber
2012-05-21 18:20           ` Blue Swirl
2012-05-22  0:34             ` Andreas Färber
2012-05-22  8:03               ` Fabien Chouteau
2012-05-23 18:48               ` Blue Swirl
2012-05-15 15:16 ` Igor Mammedov
2012-05-16  9:14   ` Andreas Färber
2012-05-16 22:04 ` Andreas Färber
2012-05-21 13:59 ` Andreas Färber
  -- strict thread matches above, loose matches on Subject: below --
2012-05-10  0:10 Andreas Färber
2012-05-10  0:10 ` [Qemu-devel] [PATCH next v2 01/74] target-arm: Use cpu_reset() in cpu_arm_init() Andreas Färber

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).