1. 23 7月, 2011 1 次提交
    • P
      report serial devices created with -device in the PIIX4 config space · 6141dbfe
      Paolo Bonzini 提交于
      Serial and parallel devices created with -device are not reported in
      the PIIX4 configuration space, and are hence not picked up by the DSDT.
      This upsets Windows, which hides them altogether from the guest.
      
      To avoid this, check at the end of machine initialization whether the
      corresponding I/O ports have been registered.  The new function in
      ioport.c does this; this also requires a tweak to isa_unassign_ioport.
      
      I left the comment in piix4_pm_initfn since the registers I moved do
      seem to match the 82371AB datasheet.  There are some quirks though.
      We are setting this bit:
      
          "Device 8 EIO Enable (EIO_EN_DEV8)—R/W. 1=Enable PCI access to the
          device 8 enabled I/O ranges to be claimed by PIIX4 and forwarded
          to the ISA/EIO bus. 0=Disable. The LPT_MON_EN must be set to enable
          the decode."
      
      but not LPT_MON_EN (bit 18 at 50h):
      
          LPT Port Enable (LPT_MON_EN)—R/W. 1=Enable accesses to parallel
          port address range (LPT_DEC_SEL) to generate a device 8 (parallel
          port) decode event. 0=Disable.
      
      We're also setting the LPT_DEC_SEL field (that's the 0x60 written to
      63h) to 11, which means reserved, rather than to 01 (378h-37Fh).
      
      Likewise we're not setting SA_MON_EN, SB_MON_EN (respectively bit 14
      and bit 16 at address 50h) for the serial ports.  However, we're setting
      COMA_DEC_SEL and COMB_DEC_SEL correctly, unlike the corresponding register
      for the parallel port.
      
      All these fields are left as they are, since they are probably only
      meant to be used in the DSDT.
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      6141dbfe
  2. 07 3月, 2011 1 次提交
  3. 21 11月, 2010 1 次提交
    • A
      Type-safe ioport callbacks · acd1c812
      Avi Kivity 提交于
      The current ioport callbacks are not type-safe, in that they accept an "opaque"
      pointer as an argument whose type must match the argument to the registration
      function; this is not checked by the compiler.
      
      This patch adds an alternative that is type-safe.  Instead of an opaque
      argument, both registation and the callback use a new IOPort type.  The
      callback then uses container_of() to access its main structures.
      
      Currently the old and new methods exist side by side; once the old way is gone,
      we can also save a bunch of memory since the new method requires one pointer
      per ioport instead of 6.
      Acked-by: NAnthony Liguori <aliguori@us.ibm.com>
      Signed-off-by: NAvi Kivity <avi@redhat.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      acd1c812
  4. 10 9月, 2010 1 次提交
  5. 02 10月, 2009 2 次提交
  6. 21 9月, 2009 1 次提交
  7. 07 9月, 2009 1 次提交
  8. 24 8月, 2009 1 次提交
    • A
      Unbreak large mem support by removing kqemu · 4a1418e0
      Anthony Liguori 提交于
      kqemu introduces a number of restrictions on the i386 target.  The worst is that
      it prevents large memory from working in the default build.
      
      Furthermore, kqemu is fundamentally flawed in a number of ways.  It relies on
      the TSC as a time source which will not be reliable on a multiple processor
      system in userspace.  Since most modern processors are multicore, this severely
      limits the utility of kqemu.
      
      kvm is a viable alternative for people looking to accelerate qemu and has the
      benefit of being supported by the upstream Linux kernel.  If someone can
      implement work arounds to remove the restrictions introduced by kqemu, I'm
      happy to avoid and/or revert this patch.
      
      N.B. kqemu will still function in the 0.11 series but this patch removes it from
      the 0.12 series.
      
      Paul, please Ack or Nack this patch.
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      4a1418e0
  9. 17 7月, 2009 2 次提交
  10. 10 7月, 2009 3 次提交