Permalink
Switch branches/tags
Commits on Feb 2, 2013
  1. target-arm: Override do_interrupt for ARMv7-M profile

    Enable ARMCPUInfo to specify a custom class_init functions.
    Introduce arm_v7m_class_init() and use it for "cortex-m3" model.
    
    Instead of forwarding from arm_cpu_do_interrupt() to do_interrupt_v7m(),
    override CPUClass::do_interrupt with arm_v7m_cpu_do_interrupt()
    in arm_v7m_class_init().
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    committed Feb 2, 2013
  2. cpu: Replace do_interrupt() by CPUClass::do_interrupt method

    This removes a global per-target function and thus takes us one step
    closer to compiling multiple targets into one executable.
    
    It will also allow to override the interrupt handling for certain CPU
    families.
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    committed Feb 2, 2013
  3. cpu: Pass CPUState to cpu_interrupt()

    Move it to qom/cpu.h to avoid issues with include order.
    
    Change pc_acpi_smi_interrupt() opaque to X86CPU.
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    committed Jan 18, 2013
  4. exec: Pass CPUState to cpu_reset_interrupt()

    Move it to qom/cpu.c to avoid build failures depending on include order
    of cpu-qom.h and exec/cpu-all.h.
    
    Change opaques of various ..._irq_handler() functions to the
    appropriate CPU type to facilitate using cpu_reset_interrupt().
    
    Fix Coding Style issues while at it (missing braces, indentation).
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    committed Jan 17, 2013
  5. cpu: Move halted and interrupt_request fields to CPUState

    Both fields are used in VMState, thus need to be moved together.
    Explicitly zero them on reset since they were located before
    breakpoints.
    
    Pass PowerPCCPU to kvmppc_handle_halt().
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    committed Jan 17, 2013
  6. target-i386: Drop version 5 CPU VMState support

    Version 5 contained the halted field, that we are about to move from
    CPUX86State to CPUState. To avoid inventing new VMSTATE macros for
    calculating a negative offset from CPUX86State to the field in CPUState,
    rather bump the minimum version from 3 to 6. We're at 12 currently.
    
    Suggested-by: Juan Quintela <quintela@redhat.com>
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    Reviewed-by: Juan Quintela <quintela@redhat.com>
    committed May 3, 2012
  7. target-cris/helper.c: Update Coding Style

    Reindent, add missing braces and drop/adjust whitespace.
    
    Prepares for CPUArchState-to-CPUState field movements in
    cpu_cris_handle_mmu_fault(), do_interruptv10() and do_interrupt().
    The remaining functions were so minor that they can be fixed in one go.
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    committed Jan 25, 2013
  8. target-lm32: Drop unused cpu_lm32_close() prototype

    It was never implemented.
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    committed Feb 2, 2013
  9. target-s390x: Drop unused cpu_s390x_close() prototype

    It was never implemented.
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    committed Feb 2, 2013
  10. cpu: Add CPUArchState pointer to CPUState

    The target-specific ENV_GET_CPU() macros have allowed us to navigate
    from CPUArchState to CPUState. The reverse direction was not supported.
    Avoid introducing CPU_GET_ENV() macros by initializing an untyped
    pointer that is initialized in derived instance_init functions.
    
    The field may not be called "env" due to it being poisoned.
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    committed Jan 17, 2013
  11. cputlb: Pass CPUState to cpu_unlink_tb()

    CPUArchState is no longer needed.
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    committed Jan 17, 2013
  12. cpu: Move current_tb field to CPUState

    Explictly NULL it on CPU reset since it was located before breakpoints.
    
    Change vapic_report_tpr_access() argument to CPUState. This also
    resolves the use of void* for cpu.h independence.
    Change vAPIC patch_instruction() argument to X86CPU.
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    committed Jan 16, 2013
  13. cpu: Move exit_request field to CPUState

    Since it was located before breakpoints field, it needs to be reset.
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    committed Dec 17, 2012
  14. cpu: Move running field to CPUState

    Pass CPUState to cpu_exec_{start,end}() functions.
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    committed Dec 17, 2012
  15. cpu: Move host_tid field to CPUState

    Change gdbstub's cpu_index() argument to CPUState now that CPUArchState
    is no longer used.
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    committed Dec 17, 2012
  16. target-m68k: Pass M68kCPU to m68k_set_irq_level()

    Simplifies use of cpu_reset_interrupt() et al.
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    committed Jan 18, 2013
  17. mcf_intc: Pass M68kCPU to mcf_intc_init()

    Store it in mcf_intc_state.
    Prepares for passing it to m68k_set_irq_level().
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    committed Jan 18, 2013
  18. mcf5206: Pass M68kCPU to mcf5206_init()

    Store it in m5206_mbar_state. Prepares for passing M68kCPU to
    m68k_set_irq_level().
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    committed Jan 18, 2013
  19. target-m68k: Return M68kCPU from cpu_m68k_init()

    Turn cpu_init() into a static inline function for backwards
    compatibility.
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    committed Jan 18, 2013
  20. ppc405_uc: Pass PowerPCCPU to ppc40x_{core,chip,system}_reset()

    Prepares for changing cpu_interrupt() argument to CPUState.
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    Acked-by: Alexander Graf <agraf@suse.de>
    committed Jan 18, 2013
  21. target-xtensa: Move TCG initialization to XtensaCPU initfn

    Combine this with breakpoint handler registration, guarding both with
    tcg_enabled() to suppress also TCG init for qtest. Rename the handler to
    xtensa_breakpoint_handler() since it needs to become global.
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    committed Jan 20, 2013
  22. target-unicore32: Move TCG initialization to UniCore32CPU initfn

    Normalize the "inited" logic and add a tcg_enabled() check to suppress
    it for qtest.
    
    Ensures that a QOM-created UniCore32CPU is usable.
    
    Acked-by: Guan Xuetao <gxt@mprc.pku.edu.cn>
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    committed Jan 20, 2013
  23. target-sparc: Move TCG initialization to SPARCCPU initfn

    Signed-off-by: Andreas Färber <afaerber@suse.de>
    committed Jan 20, 2013
  24. target-sh4: Move TCG initialization to SuperHCPU initfn

    Add a tcg_enabled() check to suppress it for qtest.
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    committed Jan 20, 2013
  25. target-s390x: Move TCG initialization to S390CPU initfn

    Ensures that a QOM-created S390CPU is usable.
    
    Acked-by: Richard Henderson <rth@twiddle.net>
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    committed Jan 19, 2013
  26. target-ppc: Move TCG initialization to PowerPCCPU initfn

    Ensures that a QOM-created PowerPCCPU is usable.
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    committed Jan 20, 2013
  27. target-mips: Move TCG initialization to MIPSCPU initfn

    Make mips_tcg_init() non-static and add tcg_enabled() check to suppress
    it for qtest.
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    committed Jan 20, 2013
  28. target-microblaze: Move TCG initialization to MicroBlazeCPU initfn

    Split off TCG initialization from cpu_mb_init() into mb_tcg_init() to
    call it from the initfn.
    
    Ensures that a QOM-created MicroBlazeCPU is usable.
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    committed Jan 20, 2013
  29. target-m68k: Move TCG initialization to M68kCPU initfn

    Add a tcg_enabled() check to suppress it for qtest.
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    committed Jan 19, 2013
  30. target-lm32: Move TCG initialization to LM32CPU initfn

    Signed-off-by: Andreas Färber <afaerber@suse.de>
    committed Jan 19, 2013
  31. target-cris: Move TCG initialization to CRISCPU initfn

    Split out TCG initialization from cpu_cris_init(). Avoid CPUCRISState
    dependency for v10-specific initialization and for non-v10 by inlining
    the decision into the initfn as well.
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    committed Jan 19, 2013
  32. target-arm: Move TCG initialization to ARMCPU initfn

    Ensures that a QOM-created ARMCPU is usable.
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    committed Jan 19, 2013
  33. target-xtensa: Introduce QOM realizefn for XtensaCPU

    Introduce realizefn and set realized = true in cpu_xtensa_init().
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    committed Jan 16, 2013
  34. target-unicore32: Introduce QOM realizefn for UniCore32CPU

    Introduce a realizefn and set realized = true in uc32_cpu_init().
    
    Acked-by: Guan Xuetao <gxt@mprc.pku.edu.cn>
    [AF: Invoke the parent's realizefn]
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    committed Jan 5, 2013
  35. target-sparc: Introduce QOM realizefn for SPARCCPU

    Introduce realizefn and set realized = true in cpu_sparc_init().
    
    Signed-off-by: Andreas Färber <afaerber@suse.de>
    committed Jan 16, 2013