1. 09 4月, 2013 2 次提交
  2. 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
  3. 02 2月, 2013 1 次提交
  4. 11 1月, 2013 1 次提交
    • A
      Make all static TypeInfos const · 8c43a6f0
      Andreas Färber 提交于
      Since 39bffca2 (qdev: register all
      types natively through QEMU Object Model), TypeInfo as used in
      the common, non-iterative pattern is no longer amended with information
      and should therefore be const.
      
      Fix the documented QOM examples:
      
       sed -i 's/static TypeInfo/static const TypeInfo/g' include/qom/object.h
      
      Since frequently the wrong examples are being copied by contributors of
      new devices, fix all types in the tree:
      
       sed -i 's/^static TypeInfo/static const TypeInfo/g' */*.c
       sed -i 's/^static TypeInfo/static const TypeInfo/g' */*/*.c
      
      This also avoids to piggy-back these changes onto real functional
      changes or other refactorings.
      Signed-off-by: NAndreas Färber <afaerber@suse.de>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      8c43a6f0
  5. 18 6月, 2012 4 次提交
  6. 15 2月, 2012 1 次提交
  7. 04 2月, 2012 2 次提交
    • A
      qdev: kill off DeviceInfo · d307af79
      Anthony Liguori 提交于
      It is no longer used in the tree since everything is done natively through
      QEMU Object Model.
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      d307af79
    • A
      qdev: register all types natively through QEMU Object Model · 39bffca2
      Anthony Liguori 提交于
      This was done in a mostly automated fashion.  I did it in three steps and then
      rebased it into a single step which avoids repeatedly touching every file in
      the tree.
      
      The first step was a sed-based addition of the parent type to the subclass
      registration functions.
      
      The second step was another sed-based removal of subclass registration functions
      while also adding virtual functions from the base class into a class_init
      function as appropriate.
      
      Finally, a python script was used to convert the DeviceInfo structures and
      qdev_register_subclass functions to TypeInfo structures, class_init functions,
      and type_register_static calls.
      
      We are almost fully converted to QOM after this commit.
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      39bffca2
  8. 28 1月, 2012 2 次提交
  9. 29 10月, 2011 1 次提交
  10. 24 7月, 2011 1 次提交
  11. 06 7月, 2010 1 次提交
  12. 03 12月, 2009 1 次提交
  13. 07 10月, 2009 1 次提交
    • M
      New qdev_init_nofail() · e23a1b33
      Markus Armbruster 提交于
      Like qdev_init(), but terminate program via hw_error() instead of
      returning an error value.
      
      Use it instead of qdev_init() where terminating the program on failure
      is okay, either because it's during machine construction, or because
      we know that failure can't happen.
      
      Because relying in the latter is somewhat unclean, and the former is
      not always obvious, it would be nice to go back to qdev_init() in the
      not-so-obvious cases, only with proper error handling.  I'm leaving
      that for another day, because it involves making sure that error
      values are properly checked by all callers.
      
      Patchworks-ID: 35168
      Signed-off-by: NMarkus Armbruster <armbru@redhat.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      e23a1b33
  14. 05 10月, 2009 5 次提交
  15. 12 9月, 2009 1 次提交
    • B
      Fix sys-queue.h conflict for good · 72cf2d4f
      Blue Swirl 提交于
      Problem: Our file sys-queue.h is a copy of the BSD file, but there are
      some additions and it's not entirely compatible. Because of that, there have
      been conflicts with system headers on BSD systems. Some hacks have been
      introduced in the commits 15cc9235,
      f40d7537,
      96555a96 and
      3990d09a but the fixes were fragile.
      
      Solution: Avoid the conflict entirely by renaming the functions and the
      file. Revert the previous hacks.
      Signed-off-by: NBlue Swirl <blauwirbel@gmail.com>
      72cf2d4f
  16. 28 8月, 2009 1 次提交
    • G
      qdev: add return value to init() callbacks. · 81a322d4
      Gerd Hoffmann 提交于
      Sorry folks, but it has to be.  One more of these invasive qdev patches.
      
      We have a serious design bug in the qdev interface:  device init
      callbacks can't signal failure because the init() callback has no
      return value.  This patch fixes it.
      
      We have already one case in-tree where this is needed:
      Try -device virtio-blk-pci (without drive= specified) and watch qemu
      segfault.  This patch fixes it.
      
      With usb+scsi being converted to qdev we'll get more devices where the
      init callback can fail for various reasons.
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      81a322d4
  17. 11 8月, 2009 1 次提交
  18. 17 7月, 2009 1 次提交
    • G
      qdev: rework device properties. · ee6847d1
      Gerd Hoffmann 提交于
      This patch is a major overhaul of the device properties.  The properties
      are saved directly in the device state struct now, the linked list of
      property values is gone.
      
      Advantages:
        * We don't have to maintain the list with the property values.
        * The value in the property list and the value actually used by
          the device can't go out of sync any more (used to happen for
          the pci.devfn == -1 case) because there is only one place where
          the value is stored.
        * A record describing the property is required now, you can't set
          random properties any more.
      
      There are bus-specific and device-specific properties.  The former
      should be used for properties common to all bus drivers.  Typical
      use case is bus addressing, i.e. pci.devfn and i2c.address.
      
      Properties have a PropertyInfo struct attached with name, size and
      function pointers to parse and print properties.  A few common property
      types have PropertyInfos defined in qdev-properties.c.  Drivers are free
      to implement their own very special property parsers if needed.
      
      Properties can have default values.  If unset they are zero-filled.
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      ee6847d1
  19. 09 7月, 2009 1 次提交
    • G
      qdev: replace bus_type enum with bus_info struct. · 10c4c98a
      Gerd Hoffmann 提交于
      BusInfo is filled with name and size (pretty much like I did for
      DeviceInfo as well).  There is also a function pointer to print
      bus-specific device information to the monitor.  sysbus is hooked
      up there, I've also added a print function for PCI.
      
      Device creation is slightly modified as well:  The device type search
      loop now also checks the bus type while scanning the list instead of
      complaining thereafter in case of a mismatch.  This effectively gives
      each bus a private namespace for device names.
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      Signed-off-by: NPaul Brook <paul@codesourcery.com>
      10c4c98a
  20. 11 6月, 2009 1 次提交
  21. 23 5月, 2009 1 次提交
    • P
      Add common BusState · 02e2da45
      Paul Brook 提交于
      Implement and use a common device bus state.  The main side-effect is
      that creating a bus and attaching it to a parent device are no longer
      separate operations.  For legacy code we allow a NULL parent, but that
      should go away eventually.
      
      Also tweak creation code to veriry theat a device in on the right bus.
      Signed-off-by: NPaul Brook <paul@codesourcery.com>
      02e2da45
  22. 15 5月, 2009 2 次提交
  23. 29 7月, 2008 1 次提交
  24. 02 7月, 2008 1 次提交
  25. 18 11月, 2007 1 次提交
  26. 03 11月, 2007 1 次提交
  27. 17 9月, 2007 1 次提交
  28. 25 5月, 2007 1 次提交
  29. 23 5月, 2007 1 次提交