Statistics
| Branch: | Revision:

root / hw / pc_piix.c @ 4e4fa398

History | View | Annotate | Download (20.5 kB)

# Date Author Comment
10b61882 01/19/2012 01:14 pm Jan Kiszka

kvm: x86: Add user space part for in-kernel i8259

Introduce the alternative 'kvm-i8259' device model that exploits KVM
in-kernel acceleration.

The PIIX3 initialization code is furthermore extended by KVM specific
IRQ route setup. GSI injection differs in KVM mode from the user space...

a39c1d47 01/19/2012 01:14 pm Jan Kiszka

kvm: x86: Add user space part for in-kernel IOAPIC

This introduces the KVM-accelerated IOAPIC model 'kvm-ioapic' and
extends the IRQ routing setup by the 0->2 redirection when needed.

The kvm-ioapic model has a property that allows to define its GSI base...

3b9a6ee5 01/19/2012 01:14 pm Jan Kiszka

kvm: Move kvmclock into hw/kvm folder

More KVM-specific devices will come, so let's start with moving the
kvmclock into a dedicated folder.

Signed-off-by: Jan Kiszka <>

ddcada78 01/15/2012 06:23 pm Jan Kiszka

isapc: Fix segfault during initialization

Obviously, linking the RTC device state to the PIIX does not belong into
the common path that is shared with the isapc.

Signed-off-by: Jan Kiszka <>

4a0f031d 12/20/2011 11:44 pm Hervé Poussineau

audio: remove unused parameter isa_pic

Signed-off-by: Hervé Poussineau <>
Signed-off-by: Anthony Liguori <>

48a18b3c 12/20/2011 11:44 pm Hervé Poussineau

isa: give ISABus/ISADevice to isa_create(), isa_bus_irqs() and isa_get_irq() functions

NULL is a valid bus/device, so there is no change in behaviour.

Signed-off-by: Hervé Poussineau <>
Signed-off-by: Anthony Liguori <>

60573079 12/20/2011 11:44 pm Hervé Poussineau

pc: give ISA bus to ISA methods

Signed-off-by: Hervé Poussineau <>
Signed-off-by: Anthony Liguori <>

ea830ebb 12/19/2011 04:45 pm Anthony Liguori

pc: fix event_idx compatibility for virtio devices

event_idx was introduced in 0.15 and must be disabled for all virtio-pci devices
(including virtio-balloon-pci).

Signed-off-by: Anthony Liguori <>

ce01a508 12/18/2011 08:59 pm Anthony Liguori

pc: add pc-0.15

Signed-off-by: Anthony Liguori <>

d0c5be58 12/15/2011 05:20 pm Anthony Liguori

rtc: make piix3 set the rtc as a child (v2)

Signed-off-by: Anthony Liguori <>

ad6d45fa 12/15/2011 05:20 pm Anthony Liguori

qom: add vga node to the pc composition tree

Signed-off-by: Anthony Liguori <>

3827cdb1 11/14/2011 07:26 pm Alon Levy

pc_piix: set qxl revision to 2 for pc-0.14

The default is still 3, and I didn't change older machine types.

Signed-off-by: Alon Levy <>
Signed-off-by: Anthony Liguori <>

25a21c94 11/07/2011 06:57 pm Gerd Hoffmann

ac97: don't override the pci subsystem id

This patch removes the code lines which set the subsystem id for the
emulated ac97 card to 8086:0000. Due to the device id being zero the
subsystem id isn't vaild anyway. With the patch applied the sound card
gets the default qemu subsystem id (1af4:1100) instead....

19857e62 11/07/2011 06:57 pm Gerd Hoffmann

pc: add 1.0 machine type

This patch adds a pc-1.0 machine type.

Signed-off-by: Gerd Hoffmann <>
Signed-off-by: Gerd Hoffmann <>
Signed-off-by: Anthony Liguori <>

34d4260e 10/21/2011 06:34 pm Kevin Wolf

pc: Fix floppy drives with if=none

Commit 63ffb564 broke floppy devices specified on the command line like
-drive file=...,if=none,id=floppy -global isa-fdc.driveA=floppy because it
relies on drive_get() which works only with -fda/-drive if=floppy.

This patch resembles what we're already doing for IDE, i.e. remember the floppy...

43a0db35 10/16/2011 02:10 pm Jan Kiszka

pc: Convert GSIState::i8259_irq into array

Will be required when we no longer let i8259_init allocate the PIC IRQs
but convert that chips to qdev.

Signed-off-by: Jan Kiszka <>
Signed-off-by: Blue Swirl <>

b881fbe9 10/16/2011 02:10 pm Jan Kiszka

pc: Generalize ISA IRQs to GSIs

The ISA bus IRQ range is 0..15. What isa_irq_handler and IsaIrqState are
actually dealing with are the Global System Interrupts. Refactor the
code to clarify this.

Signed-off-by: Jan Kiszka <>
Signed-off-by: Blue Swirl <>

4bae1efe 09/25/2011 02:58 pm Richard Henderson

pc: Re-order pc_init1 to initialize the ISA bus before ISA devices

In particular, the i8259 was being initialized before the ISA bus,
leading to a crash.

Signed-off-by: Richard Henderson <>
Signed-off-by: Avi Kivity <>

c2d0d012 09/25/2011 02:58 pm Richard Henderson

isa: Pass i/o address space to isa_bus_new

Not used yet, but at least we're provided with the correct region.

Signed-off-by: Richard Henderson <>
Signed-off-by: Avi Kivity <>

c1d23eac 09/23/2011 06:55 pm Hervé Poussineau

isapc: give system address space when pci is disabled

Signed-off-by: Jan Kiszka <>
Signed-off-by: Hervé Poussineau <>
Signed-off-by: Anthony Liguori <>

4463aee6 09/23/2011 06:55 pm Jan Kiszka

pc: Unbreak ROM mapping for ISA machine

This is based on the original fix by Hervé Poussineau: pc_memory_init
actually takes a memory region for mapping BIOS and extension ROMs. That
equals the PCI memory region if PCI is available, but must be system
memory in the ISA case....

57285cc3 09/23/2011 06:55 pm Jan Kiszka

pc: Disable HPET for ISA machine

There was no HPET on ISA boxes.

Signed-off-by: Jan Kiszka <>
Signed-off-by: Anthony Liguori <>

ae0a5466 08/22/2011 06:47 pm Avi Kivity

440fx: fix PAM, PCI holes

The current implementation of PAM and the PCI holes is broken in several
ways:

- PCI BARs are not restricted to the PCI hole (a BAR may hide memory)
- PCI devices do not respect PAM (if a PCI device maps a region while
PAM maps the region to RAM, the request will be honored)...
7267c094 08/21/2011 07:01 am Anthony Liguori

Use glib memory allocation and free functions

qemu_malloc/qemu_free no longer exist after this commit.

Signed-off-by: Anthony Liguori <>

aee97b84 08/08/2011 06:15 pm Avi Kivity

pci: pass I/O address space to new PCI bus

This lets us register BARs in the I/O address space.

Reviewed-by: Richard Henderson <>
Reviewed-by: Anthony Liguori <>
Signed-off-by: Avi Kivity <>
Signed-off-by: Anthony Liguori <>

3046c984 07/29/2011 05:42 pm Anthony Liguori

Merge remote-tracking branch 'agraf/xen-next' into staging

4aa63af1 07/29/2011 04:25 pm Avi Kivity

pc: grab system_memory

While eventually this should come from the machine initialization function,
take a short cut to avoid converting all machines now.

Reviewed-by: Anthony Liguori <>
Signed-off-by: Avi Kivity <>
Signed-off-by: Anthony Liguori <>

6bd10515 07/29/2011 04:25 pm Avi Kivity

pc: move global memory map out of pc_init1() and into its callers

Signed-off-by: Avi Kivity <>
Signed-off-by: Anthony Liguori <>

1e39101c 07/29/2011 04:25 pm Avi Kivity

pci: pass address space to pci bus when created

This is now done sloppily, via get_system_memory(). Eventually callers
will be converted to stop using that.

Reviewed-by: Anthony Liguori <>
Signed-off-by: Avi Kivity <>
Signed-off-by: Anthony Liguori <>

679f4f8b 07/26/2011 08:02 am Stefano Stabellini

xen: implement unplug protocol in xen_platform

The unplug protocol is necessary to support PV drivers in the guest: the
drivers expect to be able to "unplug" emulated disks and nics before
initializing the Xen PV interfaces.
It is responsibility of the guest to make sure that the unplug is done...

fdba9594 06/22/2011 03:11 pm Anthony Liguori

Merge remote-tracking branch 'mst/for_anthony' into staging

Conflicts:
hw/usb-uhci.c

01195b73 06/19/2011 05:43 am Steven Smith

xen: Add the Xen platform pci device

Introduce a new emulated PCI device, specific to fully virtualized Xen
guests. The device is necessary for PV on HVM drivers to work.

Signed-off-by: Steven Smith <>
Signed-off-by: Anthony PERARD <>...

bf09551a 06/19/2011 05:42 am Stefano Stabellini

xen: fix interrupt routing

Compared to the last version I only added a comment to the code.

- remove i440FX-xen and i440fx_write_config_xen
we don't need to intercept pci config writes to i440FX anymore;

- introduce PIIX3-xen and piix3_write_config_xen...

befeac45 06/15/2011 06:27 pm Michael S. Tsirkin

Merge remote-tracking branch 'origin/master' into pci

Conflicts:
hw/virtio-pci.c

b91cb442 06/14/2011 04:48 pm Michael S. Tsirkin

virtio: compat event idx support

Disable event index for compat machine types.

Signed-off-by: Michael S. Tsirkin <>

c9622478 05/08/2011 11:10 am Anthony PERARD

xen: Add Xen hypercall for sleep state in the cmos_s3 callback.

Signed-off-by: Anthony PERARD <>
Signed-off-by: Alexander Graf <>

9c11a8ac 05/08/2011 11:10 am Anthony PERARD

xen: Introduce Xen Interrupt Controller

Every set_irq call makes a Xen hypercall.

Signed-off-by: Anthony PERARD <>
Signed-off-by: Stefano Stabellini <>
Signed-off-by: Alexander Graf <>

e0e7e67b 05/08/2011 11:10 am Anthony PERARD

pc_memory_init: Move memory calculation to the caller.

This patch moves above_4g_mem_size and below_4g_mem_size calculation in
the caller of pc_memory_init (pc_init1). And the prototype of
pc_memory_init is changed because there is no need anymore to have...

29d3ccde 05/08/2011 11:10 am Anthony PERARD

xen: Add xenfv machine

Introduce the Xen FV (Fully Virtualized) machine to Qemu, some more Xen
specific call will be added in further patches.

Signed-off-by: Anthony PERARD <>
Signed-off-by: Alexander Graf <>

1611977c 05/08/2011 11:10 am Anthony PERARD

pc, Disable vmport initialisation with Xen.

This is because there is not synchronisation of the vcpu register
between Xen and QEMU, so vmport can't work properly.

This patch introduces no_vmport parameter to pc_basic_device_init.

Signed-off-by: Anthony PERARD <>...

41445300 05/08/2011 11:10 am Anthony PERARD

piix_pci: Introduces Xen specific call for irq.

This patch introduces Xen specific call in piix_pci.

The specific part for Xen is in write_config, set_irq and get_pirq.

Signed-off-by: Anthony PERARD <>
Signed-off-by: Stefano Stabellini <>...

a88df0b9 04/10/2011 12:52 am Isaku Yamahata

smbus_eeprom: consolidate smbus eeprom creation oc pc_piix, mips_mapta, mips_fulong

consolidate smbus initialization for pc_piix, mips_malta and mips_fulong.

Cc: Aurelien Jarno <>
Cc: Huacai Chen <>
Signed-off-by: Isaku Yamahata <>...

75717903 04/07/2011 02:51 pm Isaku Yamahata

ide: consolidate drive_get(IF_IDE)

factor out ide initialization to call drive_get(IF_IDE)

Signed-off-by: Isaku Yamahata <>
Signed-off-by: Kevin Wolf <>

ee951a37 02/21/2011 04:46 pm Jan Kiszka

isa-bus: Remove bogus IRQ sharing check

Nothing prevented IRQ sharing on the ISA bus in principle. Not all
boards supported this, neither each and every card nor driver and OS.
Still, there existed valid IRQ sharing scenarios, (at least) two of them
can also be found in QEMU: >2 PC UARTs and the PREP IDE buses....

63ffb564 02/20/2011 11:33 am Blue Swirl

fdc: refactor device creation

Turn fdc_init_isa into an inline function.

Get floppy geometry directly from the drives.

Don't expose FDCtrl.

Signed-off-by: Blue Swirl <>

0ec329da 02/14/2011 04:43 pm Jan Kiszka

kvm: x86: Introduce kvmclock device to save/restore its state

If kvmclock is used, which implies the kernel supports it, register a
kvmclock device with the sysbus. Its main purpose is to save and restore
the kernel state on migration, but this will also allow to visualize it...

6872ef61 02/12/2011 10:28 am Blue Swirl

vmport: convert to qdev

Signed-off-by: Blue Swirl <>

0dfa5ef9 01/25/2011 10:18 am Isaku Yamahata

audio: consolidate audio_init()

consolidate audio_init() and remove references to shoundhw.

Signed-off-by: Isaku Yamahata <>
Acked-by: Blue Swirl <>
Signed-off-by: Aurelien Jarno <>

362dd48c 12/22/2010 09:00 am Isaku Yamahata

pc/piix: fix mismerge of b1aeb92666d2fde413c34578b3b42bbfe5f2a506

The change set of b1aeb92666d2fde413c34578b3b42bbfe5f2a506 in pci branch
was mismerged. The compatibility should be kept for 0.13, not for 0.14.

Signed-off-by: Isaku Yamahata <>...

b1aeb926 12/09/2010 12:47 pm Isaku Yamahata

pci: make command SERR bit writable

pcie aer needs SERR bit to be writable, and the PCI spec requires
this as well. For compatibility, introduce compat global property
command_serr_enable and make this bit readonly for a pre 0.14 pc
machine.

Signed-off-by: Isaku Yamahata <>...

b903a0f7 11/21/2010 05:16 pm Gerd Hoffmann

pc: add 0.13 pc machine type

Signed-off-by: Gerd Hoffmann <>
Signed-off-by: Anthony Liguori <>

9dbcca5a 11/21/2010 05:16 pm Gerd Hoffmann

virtfs: enable MSI-X

This patch enables MSI-X for virtfs-9p-pci. It also adds a
compat property to pc-0.13 which turns it of there to stay
compatible to 0.13-stable.

Signed-off-by: Gerd Hoffmann <>
Signed-off-by: Anthony Liguori <>

281a26b1 11/21/2010 05:16 pm Gerd Hoffmann

vgabios update: handle compatibility with older qemu versions

As pointed out by avi the vgabios update is guest-visible and thus has
migration implications.

One change is that the vga has a valid pci rom bar now. We already have
a pci bus property to enable/disable the rom bar and we'll load the bios...

02a89b21 08/28/2010 11:50 am Isaku Yamahata

isapc: fix segfault.

https://bugs.launchpad.net/bugs/611646
reports that ./i386-softmmu/qemu -M isapc segfaults.
This patch fixes the segfault introduced by
f885f1eaa8711c06033ceb1599e3750fb37c306f

It's because i440fx_state in pc_init1() isn't initialized....

2446333c 08/24/2010 06:22 pm Blue Swirl

Rearrange block headers

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: Blue Swirl <>

1e29a009 07/22/2010 06:52 am Amit Shah

virtio-serial: Fix compat property name

Starting with qemu -M pc-0.12 -device virtio-serial

results in

-device virtio-serial: Property 'virtio-serial-pci.max_nr_ports' not found

The property name 'max_ports' is incorrectly named 'max_nr_ports'. Fix
that....

c0897e0c 07/02/2010 02:18 pm Markus Armbruster

pc: Fix CMOS info for drives defined with -device

Drives defined with drive if=ide get get created along with the IDE
controller, inside machine
>init(). That's before cmos_init().
Drives defined with -device get created during generic device init.
That's after cmos_init(). Because of that, CMOS has no information on...

738012be 06/27/2010 07:04 pm Blue Swirl

Remove useless device dependency of HAS_AUDIO

System architecture dictates whether HAS_AUDIO is defined. It's then
useless to check for HAS_AUDIO in files which are only used on those
architectures which always have audio.

Signed-off-by: Blue Swirl <>

96051119 06/19/2010 10:41 am Blue Swirl

ioapic: convert to qdev

Convert to qdev.

Signed-off-by: Blue Swirl <>

666daa68 06/04/2010 04:20 pm Markus Armbruster

blockdev: Collect block device code in new blockdev.c

Anything that moves hundreds of lines out of vl.c can't be all bad.

Signed-off-by: Markus Armbruster <>
Signed-off-by: Kevin Wolf <>

ac404095 05/15/2010 07:28 pm Isaku Yamahata

pci hotadd, acpi_piix4: remove global variables

remove global variables, gpe and pci0_status by moving them
into PIIX4PMState.

Signed-off-by: Blue Swirl <>
Signed-off-by: Isaku Yamahata <>
Acked-by: Gerd Hoffmann <>...

1d914fa0 05/15/2010 07:21 pm Isaku Yamahata

rtc: make rtc_xxx accept/return ISADevice instead of RTCState.

To match rtc_xxx with qdev, make rtc_xxx accept and return ISADevice
instead of RTCState.

Signed-off-by: Isaku Yamahata <>
Acked-by: Gerd Hoffmann <>
Signed-off-by: Blue Swirl <>

845773ab 05/15/2010 06:53 pm Isaku Yamahata

pc: split out piix specific part from pc.c into pc_piix.c

Finally, we can safely split out the piix specific part from pc.c
into pc_piix.c.

Signed-off-by: Isaku Yamahata <>
Acked-by: Gerd Hoffmann <>
Signed-off-by: Blue Swirl <>