Skip to content
Snippets Groups Projects
  1. Mar 10, 2015
  2. Mar 09, 2015
    • Peter Maydell's avatar
      Merge remote-tracking branch 'remotes/agraf/tags/signed-ppc-for-upstream' into staging · 277263e1
      Peter Maydell authored
      
      Patch queue for ppc - 2015-03-09
      
      This is my current patch queue for 2.3. Highlights include:
      
        * pseries: 2.3 machine
        * pseries: Export RTC via QOM
        * pseries: EEH support
        * mac: save/restore support
        * fix POWER5 hosts
        * random bug fixes
      
      # gpg: Signature made Mon Mar  9 14:00:53 2015 GMT using RSA key ID 03FEDC60
      # gpg: Good signature from "Alexander Graf <agraf@suse.de>"
      # gpg:                 aka "Alexander Graf <alex@csgraf.de>"
      
      * remotes/agraf/tags/signed-ppc-for-upstream: (38 commits)
        target-ppc: Fix warnings from Sparse
        sPAPR: Implement sPAPRPHBClass EEH callbacks
        sPAPR: Implement EEH RTAS calls
        target-ppc: Add versions to server CPU descriptions
        PPC: Introduce the Virtual Time Base (VTB) SPR register
        PPC: Remove duplicate OPENPIC defines in default-configs
        ppc64-softmmu: Remove duplicated OPENPIC from config
        Revert "default-configs/ppc64: add all components of i82378 SuperIO chip used by prep"
        spapr_vio: Convert to realize()
        openpic: convert to vmstate
        openpic: switch IRQQueue queue from inline to bitmap
        openpic: fix up loadvm under -M mac99
        openpic: fix segfault on -M mac99 savevm
        target-ppc: force update of msr bits in cpu_post_load
        target-ppc: move sdr1 value change detection logic to helper_store_sdr1()
        cuda.c: include adb_poll_timer in VMStateDescription
        adb.c: include ADBDevice parent state in KBDState and MouseState
        macio.c: include parent PCIDevice state in VMStateDescription
        display cpu id dump state
        Openpic: check that cpu id is within the number of cpus
        ...
      
      Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
      277263e1
    • Stefan Weil's avatar
      target-ppc: Fix warnings from Sparse · a9ab06d1
      Stefan Weil authored
      
      Sparse report:
      
      target-ppc/mmu-hash64.c:353:9: warning: returning void-valued expression
      target-ppc/mmu-hash64.c:620:9: warning: returning void-valued expression
      
      Signed-off-by: default avatarStefan Weil <sw@weilnetz.de>
      Signed-off-by: default avatarAlexander Graf <agraf@suse.de>
      a9ab06d1
    • Gavin Shan's avatar
      sPAPR: Implement sPAPRPHBClass EEH callbacks · 2aad88f4
      Gavin Shan authored
      
      The patch implements sPAPRPHBClass EEH callbacks so that the EEH
      RTAS requests can be routed to VFIO for further handling.
      
      Signed-off-by: default avatarGavin Shan <gwshan@linux.vnet.ibm.com>
      Reviewed-by: default avatarDavid Gibson <david@gibson.dropbear.id.au>
      Signed-off-by: default avatarAlexander Graf <agraf@suse.de>
      2aad88f4
    • Gavin Shan's avatar
      sPAPR: Implement EEH RTAS calls · ee954280
      Gavin Shan authored
      
      The emulation for EEH RTAS requests from guest isn't covered
      by QEMU yet and the patch implements them.
      
      The patch defines constants used by EEH RTAS calls and adds
      callbacks sPAPRPHBClass::{eeh_set_option, eeh_get_state, eeh_reset,
      eeh_configure}, which are going to be used as follows:
      
        * RTAS calls are received in spapr_pci.c, sanity check is done
          there.
        * RTAS handlers handle what they can. If there is something it
          cannot handle and the corresponding sPAPRPHBClass callback is
          defined, it is called.
        * Those callbacks are only implemented for VFIO now. They do ioctl()
          to the IOMMU container fd to complete the calls. Error codes from
          that ioctl() are transferred back to the guest.
      
      [aik: defined RTAS tokens for EEH RTAS calls]
      Signed-off-by: default avatarGavin Shan <gwshan@linux.vnet.ibm.com>
      Reviewed-by: default avatarDavid Gibson <david@gibson.dropbear.id.au>
      Signed-off-by: default avatarAlexander Graf <agraf@suse.de>
      ee954280
    • Alexey Kardashevskiy's avatar
      target-ppc: Add versions to server CPU descriptions · d7586dc4
      Alexey Kardashevskiy authored
      
      5b79b1ca "target-ppc: Create versionless CPU class per family if KVM" added
      a dynamic CPU class registration with the name of the CPU family which
      QEMU is running on. For example, this allowed specifying "-cpu POWER7"
      on every version of POWER7 machine, not just the one which POWER7 was
      an alias of. I.e. before 5b79b1ca, "-cpu POWER7" would not work on real
      POWER7 2.1 and would work on POWER7 2.3 only. The same story for POWER8.
      
      However that patch broke POWER5+ support as POWER5+ CPU uses the same
      name as the CPU class so dynamic registering of the POWER5+ class failed.
      
      This redefines POWER5+ server CPUs by adding a version to them and adding
      an alias for TCG case. KVM will use dynamically registered CPUs.
      
      While we are here, do the same for 970 CPU.
      
      Signed-off-by: default avatarAlexey Kardashevskiy <aik@ozlabs.ru>
      Signed-off-by: default avatarAlexander Graf <agraf@suse.de>
      d7586dc4
    • Cyril Bur's avatar
      PPC: Introduce the Virtual Time Base (VTB) SPR register · 3ba55e39
      Cyril Bur authored
      
      This patch adds basic support for the VTB.
      
      PowerISA:
      The Virtual Time Base (VTB) is a 64-bit incrementing counter.
      Virtual Time Base increments at the same rate as the Time Base until its value
      becomes 0xFFFF_FFFF_FFFF_FFFF (2 64 - 1); at the next increment its value
      becomes 0x0000_0000_0000_0000. There is no interrupt or other indication when
      this occurs.
      
      The operation of the Virtual Time Base has the following additional
      properties.
      1. Loading a GPR from the Virtual Time Base has no effect on the accuracy of
      the Virtual Time Base.
      2. Copying the contents of a GPR to the Virtual Time Base replaces the
      contents of the Virtual Time Base with the contents of the GPR.
      
      Signed-off-by: default avatarCyril Bur <cyril.bur@au1.ibm.com>
      Signed-off-by: default avatarAlexander Graf <agraf@suse.de>
      3ba55e39
    • Alexander Graf's avatar
      PPC: Remove duplicate OPENPIC defines in default-configs · 6494ad9b
      Alexander Graf authored
      
      The CONFIG_OPENPIC variable was declared multiple times. We only need it once.
      
      Signed-off-by: default avatarAlexander Graf <agraf@suse.de>
      6494ad9b
Loading