1. 29 10月, 2012 1 次提交
    • Z
      Add USB option in machine options · 094b287f
      zhlcindy@gmail.com 提交于
      When -usb option is used, global varible usb_enabled is set.
      And all the plaform will create one USB controller according
      to this variable. In fact, global varibles make code hard
      to read.
      
      So this patch is to remove global variable usb_enabled and
      add USB option in machine options. All the plaforms will get
      USB option value from machine options.
      
      USB option of machine options will be set either by:
        * -usb
        * -machine type=pseries,usb=on
      
      Both these ways can work now. They both set USB option in
      machine options. In the future, the first way will be removed.
      Signed-off-by: NLi Zhang <zhlcindy@linux.vnet.ibm.com>
      Acked-by: NAlexander Graf <agraf@suse.de>
      Signed-off-by: NAlexander Graf <agraf@suse.de>
      094b287f
  2. 23 10月, 2012 1 次提交
    • A
      Rename target_phys_addr_t to hwaddr · a8170e5e
      Avi Kivity 提交于
      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: NAvi Kivity <avi@redhat.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      a8170e5e
  3. 20 10月, 2012 1 次提交
    • E
      create struct for machine initialization arguments · 5f072e1f
      Eduardo Habkost 提交于
      This should help us to:
      - More easily add or remove machine initialization arguments without
        having to change every single machine init function;
      - More easily make mechanical changes involving the machine init
        functions in the future;
      - Let machine initialization forward the init arguments to other
        functions more easily.
      
      This change was half-mechanical process: first the struct was added with
      the local ram_size, boot_device, kernel_*, initrd_*, and cpu_model local
      variable initialization to all functions. Then the compiler helped me
      locate the local variables that are unused, so they could be removed.
      Signed-off-by: NBlue Swirl <blauwirbel@gmail.com>
      5f072e1f
  4. 12 10月, 2012 1 次提交
  5. 05 10月, 2012 1 次提交
  6. 15 8月, 2012 1 次提交
  7. 11 6月, 2012 3 次提交
  8. 20 4月, 2012 2 次提交
  9. 15 3月, 2012 1 次提交
  10. 13 3月, 2012 1 次提交
  11. 17 2月, 2012 1 次提交
  12. 15 2月, 2012 1 次提交
  13. 09 2月, 2012 1 次提交
  14. 04 2月, 2012 1 次提交
    • 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
  15. 28 1月, 2012 1 次提交
  16. 04 1月, 2012 1 次提交
    • A
      vmstate, memory: decouple vmstate from memory API · c5705a77
      Avi Kivity 提交于
      Currently creating a memory region automatically registers it for
      live migration.  This differs from other state (which is enumerated
      in a VMStateDescription structure) and ties the live migration code
      into the memory core.
      
      Decouple the two by introducing a separate API, vmstate_register_ram(),
      for registering a RAM block for migration.  Currently the same
      implementation is reused, but later it can be moved into a separate list,
      and registrations can be moved to VMStateDescription blocks.
      Signed-off-by: NAvi Kivity <avi@redhat.com>
      c5705a77
  17. 28 11月, 2011 1 次提交
  18. 25 11月, 2011 1 次提交
  19. 31 10月, 2011 1 次提交
    • M
      Add AACI audio playback support to the ARM Versatile/PB platform · d028d02d
      Mathieu Sonet 提交于
      This driver emulates the ARM AACI interface (PL041) connected to a LM4549 codec.
      It enables audio playback for the Versatile/PB platform.
      
      Limitations:
      - Supports only a playback on one channel (Versatile/Vexpress)
      - Supports only one TX FIFO in compact-mode or non-compact mode.
      - Supports playback of 12, 16, 18 and 20 bits samples.
      - Record is not supported.
      - The PL041 is hardwired to a LM4549 codec.
      
      Versatile/PB test build:
      linux-2.6.38.5
      buildroot-2010.11
      alsa-lib-1.0.22
      alsa-utils-1.0.22
      mpg123-0.66
      
      Qemu host: Ubuntu 10.04 in Vmware/OS X
      
      Playback tested successfully with speaker-test/aplay/mpg123.
      Signed-off-by: NMathieu Sonet <contact@elasticsheep.com>
      [Peter Maydell: fixed typo in code clearing SL1RXBUSY/SL2RXBUSY
       bits, as spotted by Andrzej Zaborowski]
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      Signed-off-by: NAndrzej Zaborowski <andrew.zaborowski@intel.com>
      d028d02d
  20. 10 10月, 2011 1 次提交
  21. 18 8月, 2011 1 次提交
    • P
      versatilepb: Implement SYS_CLCD mux control register bits · 242ea2c6
      Peter Maydell 提交于
      On the Versatile PB, PL110 graphics adaptor only natively supports
      5551 pixel format; an external mux swaps bits around to allow
      RGB565 and BGR565, under the control of bits [1:0] in the SYS_CLCD
      system register.
      
      Implement these SYS_CLCD register bits, and use a gpio line to
      feed them out of the system register model, across the versatilepb
      board and into the pl110 so we can select the right format.
      
      This is necessary as recent Linux versatile kernels default to
      programming the CLCD and mux for 16 bit BGR rather than 16 bit RGB.
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      242ea2c6
  22. 24 7月, 2011 1 次提交
  23. 02 4月, 2011 1 次提交
  24. 20 1月, 2011 1 次提交
  25. 11 12月, 2010 1 次提交
    • A
      Add endianness as io mem parameter · 2507c12a
      Alexander Graf 提交于
      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: NAlexander Graf <agraf@suse.de>
      Signed-off-by: NBlue Swirl <blauwirbel@gmail.com>
      2507c12a
  26. 24 8月, 2010 1 次提交
    • B
      Rearrange block headers · 2446333c
      Blue Swirl 提交于
      Changing block.h or blockdev.h resulted in recompiling most objects.
      
      Move DriveInfo typedef and BlockInterfaceType enum definitions
      to qemu-common.h and rearrange blockdev.h use to decrease churn.
      Signed-off-by: NBlue Swirl <blauwirbel@gmail.com>
      2446333c
  27. 06 7月, 2010 1 次提交
  28. 05 4月, 2010 1 次提交
  29. 22 3月, 2010 1 次提交
  30. 01 12月, 2009 1 次提交
  31. 13 11月, 2009 1 次提交
  32. 05 10月, 2009 1 次提交
    • M
      Fix pci_add nic not to exit on bad model · 07caea31
      Markus Armbruster 提交于
      Monitor command "pci_add ADDR nic model=MODEL" uses pci_nic_init() to
      create the NIC.  When MODEL is unknown or "?", this prints to stderr
      and terminates the program.
      
      Change pci_nic_init() not to treat "?" specially, and to return NULL
      on failure.  Switch uses during startup to new convenience wrapper
      pci_nic_init_nofail(), which behaves just like pci_nic_init() used to
      do.
      
      Bonus bug fix: we now check for qdev_init() failing there.
      Signed-off-by: NMarkus Armbruster <armbru@redhat.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      07caea31
  33. 02 10月, 2009 2 次提交
  34. 10 9月, 2009 1 次提交
    • G
      qdev/usb: convert ohci. · 5b19d9a2
      Gerd Hoffmann 提交于
      Drop num_ports argument for usb_ohci_init_pci(), everybody
      calls it with num_ports == 3, so it is pointless.
      
      Convert ohci pci device into qdev.
      TODO: convert non-pci ohci adapters.
      
      You can add a OHCI USB Controller to your virtual pc now using
      '-device pci-ohci'.  Specifying a id is a good idea, so you can
      attach usb devices to it, like this:
      
        -device pci-ohci,id=ohci
        -device usb-mouse,bus=ohci.0
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      5b19d9a2
  35. 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
  36. 26 8月, 2009 1 次提交