1. 13 3月, 2014 1 次提交
    • S
      iothread: add "iothread" qdev property type · 6e4a876b
      Stefan Hajnoczi 提交于
      Add a "iothread" qdev property type so devices can be hooked up to an
      IOThread from the comand-line:
      
        qemu -object iothread,id=iothread0 \
             -device some-device,x-iothread=iothread0
      
      Note that Paolo Bonzini <pbonzini@redhat.com> has suggested using QOM
      links instead.  This way the relationship between the objects is
      reflected in QOM.  There are currently shortcomings of
      object_property_add_link() which prevent this use case.  I will attempt
      to fix them and move to QOM links in a separate series.
      Signed-off-by: NStefan Hajnoczi <stefanha@redhat.com>
      6e4a876b
  2. 15 2月, 2014 2 次提交
  3. 25 12月, 2013 1 次提交
  4. 30 7月, 2013 1 次提交
  5. 07 5月, 2013 2 次提交
  6. 16 4月, 2013 1 次提交
  7. 09 4月, 2013 1 次提交
    • P
      hw: move headers to include/ · 0d09e41a
      Paolo Bonzini 提交于
      Many of these should be cleaned up with proper qdev-/QOM-ification.
      Right now there are many catch-all headers in include/hw/ARCH depending
      on cpu.h, and this makes it necessary to compile these files per-target.
      However, fixing this does not belong in these patches.
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      0d09e41a
  8. 26 3月, 2013 1 次提交
  9. 16 3月, 2013 1 次提交
    • P
      qdev: Implement (variable length) array properties · 0be6bfac
      Peter Maydell 提交于
      Add support for declaring array properties for qdev devices.
      These work by defining an initial static property 'len-arrayname'
      which the user of the device should set to the desired size
      of the array. When this property is set, memory is allocated
      for the array elements, and dynamic properties "arrayname[0]",
      "arrayname[1]"... are created so the user of the device can
      then set the values of the individual array elements.
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      0be6bfac
  10. 01 3月, 2013 1 次提交
    • P
      hw: include hw header files with full paths · 83c9f4ca
      Paolo Bonzini 提交于
      Done with this script:
      
      cd hw
      for i in `find . -name '*.h' | sed 's/^..//'`; do
        echo '\,^#.*include.*["<]'$i'[">], s,'$i',hw/&,'
      done | sed -i -f - `find . -type f`
      
      This is so that paths remain valid as files are moved.
      
      Instead, files in hw/dataplane are referenced with the relative path.
      We know they are not going to move to include/, and they are the only
      include files that are in subdirectories _and_ move.
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      83c9f4ca
  11. 02 2月, 2013 1 次提交
    • J
      net: multiqueue support · 1ceef9f2
      Jason Wang 提交于
      This patch adds basic multiqueue support for qemu. The idea is simple, an array
      of NetClientStates were introduced in NICState, parse_netdev() were extended to
      find and match all NetClientStates belongs to the backend and place their
      pointers in NICConf. Then qemu_new_nic can setup a N:N mapping between NICStates
      that belongs to a nic and NICStates belongs to the netdev. And a queue_index
      were introduced in NetClientState to track its index. After this, each peers of
      a NICState were abstracted as a queue.
      
      After this change, all NetClientState that belongs to the same backend/nic has
      the same id. When use want to change the link status, all NetClientStates that
      belongs to the same backend/nic will be also changed. When user want to delete
      a device or netdev, all NetClientStates that belongs to the same backend/nic
      will be deleted also. Changing or deleting an specific queue is not allowed.
      Signed-off-by: NJason Wang <jasowang@redhat.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      1ceef9f2
  12. 19 12月, 2012 1 次提交
    • E
      qdev-properties.c: Separate core from the code used only by qemu-system-* · a404b612
      Eduardo Habkost 提交于
      This separates the qdev properties code in two parts:
       - qdev-properties.c, that contains most of the qdev properties code;
       - qdev-properties-system.c for code specific for qemu-system-*,
         containing:
         - Property types: drive, chr, netdev, vlan, that depend on code that
           won't be included on *-user
         - qemu_add_globals(), that depends on qemu-config.o.
      
      This change should help on two things:
       - Allowing DeviceState to be used by *-user without pulling
         dependencies that are specific for qemu-system-*;
       - Writing qdev unit tests without pulling too many dependencies.
      
      The copyright/license of qdev-properties.c isn't explicitly stated at
      the file, so add a simple copyright/license header pointing to the
      commit ID of the original file.
      Signed-off-by: NEduardo Habkost <ehabkost@redhat.com>
      Signed-off-by: NAndreas Färber <afaerber@suse.de>
      a404b612
  13. 15 11月, 2012 1 次提交
    • A
      qdev: Split up header so it can be used in cpu.h · 074a86fc
      Anthony Liguori 提交于
      Header file dependency is a frickin' nightmare right now.  cpu.h tends
      to get included in our 'include everything' header files but qdev also
      needs to include those headers mainly for qdev-properties since it knows
      about CharDriverState and friends.
      
      We can solve this for now by splitting out qdev.h along the same lines
      that we previously split the C file.  Then cpu.h just needs to include
      qdev-core.h.
      
      hw/qdev.h is split into following new headers:
          hw/qdev-core.h
          hw/qdev-properties.h
          hw/qdev-monitor.h
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      
      [ehabkost: re-add DEFINE_PROP_PCI_HOST_DEVADDR, that was removed on the
       original patch (by mistake, I guess)]
      [ehabkost: kill qdev_prop_set_vlan() declaration]
      [ehabkost: moved get_fw_dev_path() comment to the original location
       (I don't know why it was moved)]
      [ehabkost: removed qdev_exists() declaration]
      [ehabkost: keep using 'QemuOpts' instead of 'struct QemuOpts', as
       qdev-core.h includes qemu-option.h]
      Signed-off-by: NEduardo Habkost <ehabkost@redhat.com>
      Signed-off-by: NAndreas Färber <afaerber@suse.de>
      074a86fc