1. 15 6月, 2017 35 次提交
  2. 13 6月, 2017 5 次提交
    • P
      Merge remote-tracking branch 'remotes/pmaydell/tags/pull-target-arm-20170613' into staging · 3f060292
      Peter Maydell 提交于
      target-arm queue:
       * vITS: Support save/restore
       * timer/aspeed: Fix timer enablement when reload is not set
       * aspped: add temperature sensor device
       * timer.h: Provide better monotonic time on ARM hosts
       * exynos4210: various cleanups
       * exynos4210: support system poweroff
      
      # gpg: Signature made Tue 13 Jun 2017 15:05:49 BST
      # gpg:                using RSA key 0x3C2525ED14360CDE
      # gpg: Good signature from "Peter Maydell <peter.maydell@linaro.org>"
      # gpg:                 aka "Peter Maydell <pmaydell@gmail.com>"
      # gpg:                 aka "Peter Maydell <pmaydell@chiark.greenend.org.uk>"
      # Primary key fingerprint: E1A5 C593 CD41 9DE2 8E83  15CF 3C25 25ED 1436 0CDE
      
      * remotes/pmaydell/tags/pull-target-arm-20170613:
        hw/intc/arm_gicv3_its: Allow save/restore
        hw/intc/arm_gicv3_kvm: Implement pending table save
        hw/intc/arm_gicv3_its: Implement state save/restore
        kvm-all: Pass an error object to kvm_device_access
        timer/aspeed: fix timer enablement when a reload is not set
        aspeed: add a temp sensor device on I2C bus 3
        hw/misc: add a TMP42{1, 2, 3} device model
        timer.h: Provide better monotonic time
        hw/misc/exynos4210_pmu: Add support for system poweroff
        hw/intc/exynos4210_gic: Constify array of combiner interrupts
        hw/arm/exynos: Use type define instead of hard-coded a9mpcore_priv string
        hw/arm/exynos: Declare local variables in some order
        hw/arm/exynos: Move DRAM initialization next boards
        hw/timer/exynos4210_mct: Remove unused defines
        hw/timer/exynos4210_mct: Cleanup indentation and empty new lines
        hw/timer/exynos4210_mct: Fix checkpatch style errors
        hw/intc/exynos4210_gic: Use more meaningful name for local variable
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      3f060292
    • E
      hw/intc/arm_gicv3_its: Allow save/restore · 252a7a6a
      Eric Auger 提交于
      We change the restoration priority of both the GICv3 and ITS. The
      GICv3 must be restored before the ITS and the ITS needs to be restored
      before PCIe devices since it translates their MSI transactions.
      Signed-off-by: NEric Auger <eric.auger@redhat.com>
      Reviewed-by: NJuan Quintela <quintela@redhat.com>
      Message-id: 1497023553-18411-5-git-send-email-eric.auger@redhat.com
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      252a7a6a
    • E
      hw/intc/arm_gicv3_kvm: Implement pending table save · d5aa0c22
      Eric Auger 提交于
      This patch adds the flush of the LPI pending bits into the
      redistributor pending tables. This happens on VM stop.
      
      There is no explicit restore as the tables are implicitly sync'ed
      on ITS table restore and on LPI enable at redistributor level.
      Signed-off-by: NEric Auger <eric.auger@redhat.com>
      Message-id: 1497023553-18411-4-git-send-email-eric.auger@redhat.com
      Reviewed-by: NPeter Maydell <peter.maydell@linaro.org>
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      d5aa0c22
    • E
      hw/intc/arm_gicv3_its: Implement state save/restore · cddafd8f
      Eric Auger 提交于
      We need to handle both registers and ITS tables. While
      register handling is standard, ITS table handling is more
      challenging since the kernel API is devised so that the
      tables are flushed into guest RAM and not in vmstate buffers.
      
      Flushing the ITS tables on device pre_save() is too late
      since the guest RAM is already saved at this point.
      
      Table flushing needs to happen when we are sure the vcpus
      are stopped and before the last dirty page saving. The
      right point is RUN_STATE_FINISH_MIGRATE but sometimes the
      VM gets stopped before migration launch so let's simply
      flush the tables each time the VM gets stopped.
      
      For regular ITS registers we just can use vmstate pre_save()
      and post_load() callbacks.
      Signed-off-by: NEric Auger <eric.auger@redhat.com>
      Message-id: 1497023553-18411-3-git-send-email-eric.auger@redhat.com
      Reviewed-by: NPeter Maydell <peter.maydell@linaro.org>
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      cddafd8f
    • E
      kvm-all: Pass an error object to kvm_device_access · 556969e9
      Eric Auger 提交于
      In some circumstances, we don't want to abort if the
      kvm_device_access fails. This will be the case during ITS
      migration, in case the ITS table save/restore fails because
      the guest did not program the vITS correctly. So let's pass an
      error object to the function and return the ioctl value. New
      callers will be able to make a decision upon this returned
      value.
      
      Existing callers pass &error_abort which will cause the
      function to abort on failure.
      Signed-off-by: NEric Auger <eric.auger@redhat.com>
      Reviewed-by: NJuan Quintela <quintela@redhat.com>
      Reviewed-by: NPeter Xu <peterx@redhat.com>
      Message-id: 1497023553-18411-2-git-send-email-eric.auger@redhat.com
      [PMM: wrapped long line]
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      556969e9