1. 24 8月, 2018 2 次提交
  2. 20 8月, 2018 1 次提交
  3. 16 8月, 2018 6 次提交
  4. 01 8月, 2018 1 次提交
    • T
      hw/misc/macio: Fix device introspection problems in macio devices · 1069a3c6
      Thomas Huth 提交于
      Valgrind reports an error when introspecting the macio devices, e.g.:
      
      echo "{'execute':'qmp_capabilities'} {'execute':'device-list-properties'," \
       "'arguments':{'typename':'macio-newworld'}}" \
       "{'execute': 'human-monitor-command', " \
       "'arguments': {'command-line': 'info qtree'}}" | \
       valgrind -q ppc64-softmmu/qemu-system-ppc64 -M none,accel=qtest -qmp stdio
      [...]
      ==30768== Invalid read of size 8
      ==30768==    at 0x5BC1EA: qdev_print (qdev-monitor.c:686)
      ==30768==    by 0x5BC1EA: qbus_print (qdev-monitor.c:719)
      ==30768==    by 0x43E458: handle_hmp_command (monitor.c:3446)
      [...]
      
      Use the new function sysbus_init_child_obj() to initialize the objects
      here, to get the reference counting of the objects right, so that they
      are cleaned up correctly when the parent gets removed.
      Signed-off-by: NThomas Huth <thuth@redhat.com>
      Signed-off-by: NDavid Gibson <david@gibson.dropbear.id.au>
      1069a3c6
  5. 30 7月, 2018 1 次提交
    • P
      hw/misc/tz-mpc: Zero the LUT on initialization, not just reset · 218fe5ce
      Peter Maydell 提交于
      In the tz-mpc device we allocate a data block for the LUT,
      which we then clear to zero in the device's reset method.
      This is conceptually fine, but unfortunately results in a
      valgrind complaint about use of uninitialized data on startup:
      
      ==30906== Conditional jump or move depends on uninitialised value(s)
      ==30906==    at 0x503609: tz_mpc_translate (tz-mpc.c:439)
      ==30906==    by 0x3F3D90: address_space_translate_iommu (exec.c:511)
      ==30906==    by 0x3F3FF8: flatview_do_translate (exec.c:584)
      ==30906==    by 0x3F4292: flatview_translate (exec.c:644)
      ==30906==    by 0x3F2120: address_space_translate (memory.h:1962)
      ==30906==    by 0x3FB753: address_space_ldl_internal (memory_ldst.inc.c:36)
      ==30906==    by 0x3FB8A6: address_space_ldl (memory_ldst.inc.c:80)
      ==30906==    by 0x619037: ldl_phys (memory_ldst_phys.inc.h:25)
      ==30906==    by 0x61985D: arm_cpu_reset (cpu.c:255)
      ==30906==    by 0x98791B: cpu_reset (cpu.c:249)
      ==30906==    by 0x57FFDB: armv7m_reset (armv7m.c:265)
      ==30906==    by 0x7B1775: qemu_devices_reset (reset.c:69)
      
      This is because of a reset ordering problem -- the TZ MPC
      resets after the CPU, but an M-profile CPU's reset function
      includes memory loads to get the initial PC and SP, which
      then go through an MPC that hasn't yet been reset.
      
      The simplest fix for this is to zero the LUT when we
      initialize the data, which will result in the MPC's
      translate function giving the right answers for these
      early memory accesses.
      Reported-by: NThomas Huth <thuth@redhat.com>
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      Tested-by: NThomas Huth <thuth@redhat.com>
      Message-id: 20180724153616.32352-1-peter.maydell@linaro.org
      218fe5ce
  6. 17 7月, 2018 2 次提交
  7. 16 7月, 2018 1 次提交
  8. 03 7月, 2018 1 次提交
  9. 02 7月, 2018 3 次提交
  10. 29 6月, 2018 1 次提交
  11. 27 6月, 2018 1 次提交
    • C
      aspeed/scu: introduce clock frequencies · fda9aaa6
      Cédric Le Goater 提交于
      All Aspeed SoC clocks are driven by an input source clock which can
      have different frequencies : 24MHz or 25MHz, and also, on the Aspeed
      AST2400 SoC, 48MHz. The H-PLL (CPU) clock is defined from a
      calculation using parameters in the H-PLL Parameter register or from a
      predefined set of frequencies if the setting is strapped by hardware
      (Aspeed AST2400 SoC). The other clocks of the SoC are then defined
      from the H-PLL using dividers.
      
      We introduce first the APB clock because it should be used to drive
      the Aspeed timer model.
      Signed-off-by: NCédric Le Goater <clg@kaod.org>
      Reviewed-by: NAndrew Jeffery <andrew@aj.id.au>
      Message-id: 20180622075700.5923-2-clg@kaod.org
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      fda9aaa6
  12. 22 6月, 2018 5 次提交
  13. 16 6月, 2018 7 次提交
  14. 15 6月, 2018 1 次提交
    • J
      aspeed_scu: Implement RNG register · acd9575e
      Joel Stanley 提交于
      The ASPEED SoCs contain a single register that returns random data when
      read. This models that register so that guests can use it.
      
      The random number data register has a corresponding control register,
      however it returns data regardless of the state of the enabled bit, so
      the model follows this behaviour.
      
      When the qcrypto call fails we exit as the guest uses the random number
      device to feed it's entropy pool, which is used for cryptographic
      purposes.
      Reviewed-by: NCédric Le Goater <clg@kaod.org>
      Signed-off-by: NJoel Stanley <joel@jms.id.au>
      Message-id: 20180613114836.9265-1-joel@jms.id.au
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      acd9575e
  15. 12 6月, 2018 6 次提交
  16. 08 6月, 2018 1 次提交