1. 19 Dec, 2012 2 commits
  2. 23 Oct, 2012 1 commit
    • Avi Kivity's avatar
      Rename target_phys_addr_t to hwaddr · a8170e5e
      Avi Kivity authored
      target_phys_addr_t is unwieldly, violates the C standard (_t suffixes are
      reserved) and its purpose doesn't match the name (most target_phys_addr_t
      addresses are not target specific).  Replace it with a finger-friendly,
      standards conformant hwaddr.
      
      Outstanding patchsets can be fixed up with the command
      
        git rebase -i --exec 'find -name "*.[ch]"
                              | xargs s/target_phys_addr_t/hwaddr/g' origin
      Signed-off-by: default avatarAvi Kivity <avi@redhat.com>
      Signed-off-by: default avatarAnthony Liguori <aliguori@us.ibm.com>
      a8170e5e
  3. 28 Jul, 2012 1 commit
  4. 15 Feb, 2012 1 commit
  5. 03 Feb, 2012 1 commit
    • Anthony Liguori's avatar
      qdev: register all types natively through QEMU Object Model · 39bffca2
      Anthony Liguori authored
      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: default avatarAnthony Liguori <aliguori@us.ibm.com>
      39bffca2
  6. 27 Jan, 2012 1 commit
  7. 28 Nov, 2011 1 commit
  8. 22 Aug, 2011 2 commits
  9. 21 Aug, 2011 2 commits
  10. 08 Aug, 2011 1 commit
  11. 29 Jan, 2011 1 commit
    • Aurelien Jarno's avatar
      escc: fix interrupt flags · f53671c0
      Aurelien Jarno authored
      Recent PowerPC kernel end up in kernel panic during boot in -nographic
      mode. In this mode the second serial port is used as the udbg console,
      and thus a few characters are sent on this port. This activates the
      tx interrupt flag, and later choke the Linux kernel, as it was not
      expecting such a flag to be set.
      
      The problem here comes from the fact that contrary to most devices the
      interrupt flags are only set if the interrupt is enabled. Quoting the
      datasheet: "If the corresponding IE bit is not set, the IP for that
      source of interrupt will never be set."
      
      This patch fixes that by enabling the interrupt flag only when the
      corresponding interrupt is enabled.
      
      Cc: Blue Swirl <blauwirbel@gmail.com>
      Signed-off-by: default avatarAurelien Jarno <aurelien@aurel32.net>
      f53671c0
  12. 11 Dec, 2010 1 commit
    • Alexander Graf's avatar
      Add endianness as io mem parameter · 2507c12a
      Alexander Graf authored
      As stated before, devices can be little, big or native endian. The
      target endianness is not of their concern, so we need to push things
      down a level.
      
      This patch adds a parameter to cpu_register_io_memory that allows a
      device to choose its endianness. For now, all devices simply choose
      native endian, because that's the same behavior as before.
      Signed-off-by: default avatarAlexander Graf <agraf@suse.de>
      Signed-off-by: default avatarBlue Swirl <blauwirbel@gmail.com>
      2507c12a
  13. 15 Aug, 2010 1 commit
    • Artyom Tarasenko's avatar
      sparc escc IUS improvements (SunOS 4.1.4 fix) · 9fc391f8
      Artyom Tarasenko authored
      According to scc_escc_um.pdf:
       - Reset Highest IUS must update irq status to allow processing
         of the next priority interrupt.
       - rx interrupt has always higher priority than tx on same channel
      
      The documentation only explicitly says that Reset Highest IUS
      command (0x38) clears IUS bits, not that it clears the corresponding
      interrupt too, so don't clear interrupts on this command.
      
      The patch allows SunOS 4.1.4 to use the serial ports
      Signed-off-by: default avatarArtyom Tarasenko <atar4qemu@gmail.com>
      Signed-off-by: default avatarBlue Swirl <blauwirbel@gmail.com>
      9fc391f8
  14. 07 Feb, 2010 1 commit
  15. 07 Nov, 2009 1 commit
  16. 24 Oct, 2009 2 commits
  17. 07 Oct, 2009 1 commit
    • Markus Armbruster's avatar
      New qdev_init_nofail() · e23a1b33
      Markus Armbruster authored
      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: default avatarMarkus Armbruster <armbru@redhat.com>
      Signed-off-by: default avatarAnthony Liguori <aliguori@us.ibm.com>
      e23a1b33
  18. 01 Oct, 2009 2 commits
  19. 30 Sep, 2009 2 commits
  20. 15 Sep, 2009 1 commit
  21. 27 Aug, 2009 1 commit
    • Gerd Hoffmann's avatar
      qdev: add return value to init() callbacks. · 81a322d4
      Gerd Hoffmann authored
      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: default avatarGerd Hoffmann <kraxel@redhat.com>
      Signed-off-by: default avatarAnthony Liguori <aliguori@us.ibm.com>
      81a322d4
  22. 25 Aug, 2009 1 commit
  23. 13 Aug, 2009 1 commit
  24. 10 Aug, 2009 1 commit
  25. 17 Jul, 2009 1 commit
  26. 16 Jul, 2009 1 commit
    • Gerd Hoffmann's avatar
      qdev: rework device properties. · ee6847d1
      Gerd Hoffmann authored
      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: default avatarGerd Hoffmann <kraxel@redhat.com>
      Signed-off-by: default avatarAnthony Liguori <aliguori@us.ibm.com>
      ee6847d1
  27. 15 Jul, 2009 1 commit
  28. 29 Jun, 2009 1 commit
  29. 16 Jun, 2009 1 commit
  30. 22 May, 2009 1 commit
    • Jan Kiszka's avatar
      Introduce reset notifier order · 8217606e
      Jan Kiszka authored
      Add the parameter 'order' to qemu_register_reset and sort callbacks on
      registration. On system reset, callbacks with lower order will be
      invoked before those with higher order. Update all existing users to the
      standard order 0.
      
      Note: At least for x86, the existing users seem to assume that handlers
      are called in their registration order. Therefore, the patch preserves
      this property. If someone feels bored, (s)he could try to identify this
      dependency and express it properly on callback registration.
      Signed-off-by: default avatarJan Kiszka <jan.kiszka@siemens.com>
      Signed-off-by: default avatarAnthony Liguori <aliguori@us.ibm.com>
      8217606e
  31. 13 May, 2009 1 commit
  32. 05 Feb, 2009 1 commit
  33. 14 Jan, 2009 1 commit
  34. 13 Jan, 2009 1 commit