* [Qemu-devel] [PATCH 1/2] pc: add 1.0 machine type @ 2011-11-07 15:33 Gerd Hoffmann 2011-11-07 15:33 ` [Qemu-devel] [PATCH 2/2] ac97: don't override the pci subsystem id Gerd Hoffmann 2011-11-08 17:25 ` [Qemu-devel] [PATCH 1/2] pc: add 1.0 machine type Anthony Liguori 0 siblings, 2 replies; 7+ messages in thread From: Gerd Hoffmann @ 2011-11-07 15:33 UTC (permalink / raw) To: qemu-devel; +Cc: Gerd Hoffmann, kvm This patch adds a pc-1.0 machine type. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> --- hw/pc_piix.c | 14 +++++++++++--- 1 files changed, 11 insertions(+), 3 deletions(-) diff --git a/hw/pc_piix.c b/hw/pc_piix.c index 8c7f2b7..93e40d0 100644 --- a/hw/pc_piix.c +++ b/hw/pc_piix.c @@ -297,8 +297,8 @@ static void pc_xen_hvm_init(ram_addr_t ram_size, } #endif -static QEMUMachine pc_machine = { - .name = "pc-0.14", +static QEMUMachine pc_machine_v1_0 = { + .name = "pc-1.0", .alias = "pc", .desc = "Standard PC", .init = pc_init_pci, @@ -306,6 +306,13 @@ static QEMUMachine pc_machine = { .is_default = 1, }; +static QEMUMachine pc_machine_v0_14 = { + .name = "pc-0.14", + .desc = "Standard PC", + .init = pc_init_pci, + .max_cpus = 255, +}; + static QEMUMachine pc_machine_v0_13 = { .name = "pc-0.13", .desc = "Standard PC", @@ -521,7 +528,8 @@ static QEMUMachine xenfv_machine = { static void pc_machine_init(void) { - qemu_register_machine(&pc_machine); + qemu_register_machine(&pc_machine_v1_0); + qemu_register_machine(&pc_machine_v0_14); qemu_register_machine(&pc_machine_v0_13); qemu_register_machine(&pc_machine_v0_12); qemu_register_machine(&pc_machine_v0_11); -- 1.7.1 ^ permalink raw reply related [flat|nested] 7+ messages in thread
* [Qemu-devel] [PATCH 2/2] ac97: don't override the pci subsystem id 2011-11-07 15:33 [Qemu-devel] [PATCH 1/2] pc: add 1.0 machine type Gerd Hoffmann @ 2011-11-07 15:33 ` Gerd Hoffmann 2011-11-07 16:00 ` Anthony Liguori 2011-11-08 17:25 ` [Qemu-devel] [PATCH 1/2] pc: add 1.0 machine type Anthony Liguori 1 sibling, 1 reply; 7+ messages in thread From: Gerd Hoffmann @ 2011-11-07 15:33 UTC (permalink / raw) To: qemu-devel; +Cc: Takashi Iwai, Gerd Hoffmann, kvm 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. [ v2: old & broken id is maintained for -M pc-$oldqemuversion ] Cc: Takashi Iwai <tiwai@suse.de> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> --- hw/ac97.c | 16 +++++++++++----- hw/pc_piix.c | 16 ++++++++++++++++ 2 files changed, 27 insertions(+), 5 deletions(-) diff --git a/hw/ac97.c b/hw/ac97.c index 6800af4..0dbba3b 100644 --- a/hw/ac97.c +++ b/hw/ac97.c @@ -150,6 +150,7 @@ typedef struct AC97BusMasterRegs { typedef struct AC97LinkState { PCIDevice dev; QEMUSoundCard card; + uint32_t use_broken_id; uint32_t glob_cnt; uint32_t glob_sta; uint32_t cas; @@ -1305,11 +1306,12 @@ static int ac97_initfn (PCIDevice *dev) c[PCI_BASE_ADDRESS_0 + 6] = 0x00; c[PCI_BASE_ADDRESS_0 + 7] = 0x00; - c[PCI_SUBSYSTEM_VENDOR_ID] = 0x86; /* svid subsystem vendor id rwo */ - c[PCI_SUBSYSTEM_VENDOR_ID + 1] = 0x80; - - c[PCI_SUBSYSTEM_ID] = 0x00; /* sid subsystem id rwo */ - c[PCI_SUBSYSTEM_ID + 1] = 0x00; + if (s->use_broken_id) { + c[PCI_SUBSYSTEM_VENDOR_ID] = 0x86; + c[PCI_SUBSYSTEM_VENDOR_ID + 1] = 0x80; + c[PCI_SUBSYSTEM_ID] = 0x00; + c[PCI_SUBSYSTEM_ID + 1] = 0x00; + } c[PCI_INTERRUPT_LINE] = 0x00; /* intr_ln interrupt line rw */ c[PCI_INTERRUPT_PIN] = 0x01; /* intr_pn interrupt pin ro */ @@ -1350,6 +1352,10 @@ static PCIDeviceInfo ac97_info = { .device_id = PCI_DEVICE_ID_INTEL_82801AA_5, .revision = 0x01, .class_id = PCI_CLASS_MULTIMEDIA_AUDIO, + .qdev.props = (Property[]) { + DEFINE_PROP_UINT32("use_broken_id", AC97LinkState, use_broken_id, 0), + DEFINE_PROP_END_OF_LIST(), + } }; static void ac97_register (void) diff --git a/hw/pc_piix.c b/hw/pc_piix.c index 93e40d0..27ea570 100644 --- a/hw/pc_piix.c +++ b/hw/pc_piix.c @@ -347,6 +347,10 @@ static QEMUMachine pc_machine_v0_13 = { .driver = "virtio-net-pci", .property = "event_idx", .value = "off", + },{ + .driver = "AC97", + .property = "use_broken_id", + .value = stringify(1), }, { /* end of list */ } }, @@ -390,6 +394,10 @@ static QEMUMachine pc_machine_v0_12 = { .driver = "virtio-net-pci", .property = "event_idx", .value = "off", + },{ + .driver = "AC97", + .property = "use_broken_id", + .value = stringify(1), }, { /* end of list */ } } @@ -441,6 +449,10 @@ static QEMUMachine pc_machine_v0_11 = { .driver = "virtio-net-pci", .property = "event_idx", .value = "off", + },{ + .driver = "AC97", + .property = "use_broken_id", + .value = stringify(1), }, { /* end of list */ } } @@ -504,6 +516,10 @@ static QEMUMachine pc_machine_v0_10 = { .driver = "virtio-net-pci", .property = "event_idx", .value = "off", + },{ + .driver = "AC97", + .property = "use_broken_id", + .value = stringify(1), }, { /* end of list */ } }, -- 1.7.1 ^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [Qemu-devel] [PATCH 2/2] ac97: don't override the pci subsystem id 2011-11-07 15:33 ` [Qemu-devel] [PATCH 2/2] ac97: don't override the pci subsystem id Gerd Hoffmann @ 2011-11-07 16:00 ` Anthony Liguori 2011-11-08 8:08 ` Gerd Hoffmann 0 siblings, 1 reply; 7+ messages in thread From: Anthony Liguori @ 2011-11-07 16:00 UTC (permalink / raw) To: Gerd Hoffmann; +Cc: Takashi Iwai, qemu-devel, kvm On 11/07/2011 09:33 AM, Gerd Hoffmann wrote: > 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. I don't like having a property of "use broken". Wouldn't it be better to have the subsystem vendor and device id be configurable, set the default to the qemu subsystem ids, and then set it to 8086:0000 for < 1.0? Regards, Anthony Liguori > > [ v2: old& broken id is maintained for -M pc-$oldqemuversion ] > > Cc: Takashi Iwai<tiwai@suse.de> > Signed-off-by: Gerd Hoffmann<kraxel@redhat.com> > --- > hw/ac97.c | 16 +++++++++++----- > hw/pc_piix.c | 16 ++++++++++++++++ > 2 files changed, 27 insertions(+), 5 deletions(-) > > diff --git a/hw/ac97.c b/hw/ac97.c > index 6800af4..0dbba3b 100644 > --- a/hw/ac97.c > +++ b/hw/ac97.c > @@ -150,6 +150,7 @@ typedef struct AC97BusMasterRegs { > typedef struct AC97LinkState { > PCIDevice dev; > QEMUSoundCard card; > + uint32_t use_broken_id; > uint32_t glob_cnt; > uint32_t glob_sta; > uint32_t cas; > @@ -1305,11 +1306,12 @@ static int ac97_initfn (PCIDevice *dev) > c[PCI_BASE_ADDRESS_0 + 6] = 0x00; > c[PCI_BASE_ADDRESS_0 + 7] = 0x00; > > - c[PCI_SUBSYSTEM_VENDOR_ID] = 0x86; /* svid subsystem vendor id rwo */ > - c[PCI_SUBSYSTEM_VENDOR_ID + 1] = 0x80; > - > - c[PCI_SUBSYSTEM_ID] = 0x00; /* sid subsystem id rwo */ > - c[PCI_SUBSYSTEM_ID + 1] = 0x00; > + if (s->use_broken_id) { > + c[PCI_SUBSYSTEM_VENDOR_ID] = 0x86; > + c[PCI_SUBSYSTEM_VENDOR_ID + 1] = 0x80; > + c[PCI_SUBSYSTEM_ID] = 0x00; > + c[PCI_SUBSYSTEM_ID + 1] = 0x00; > + } > > c[PCI_INTERRUPT_LINE] = 0x00; /* intr_ln interrupt line rw */ > c[PCI_INTERRUPT_PIN] = 0x01; /* intr_pn interrupt pin ro */ > @@ -1350,6 +1352,10 @@ static PCIDeviceInfo ac97_info = { > .device_id = PCI_DEVICE_ID_INTEL_82801AA_5, > .revision = 0x01, > .class_id = PCI_CLASS_MULTIMEDIA_AUDIO, > + .qdev.props = (Property[]) { > + DEFINE_PROP_UINT32("use_broken_id", AC97LinkState, use_broken_id, 0), > + DEFINE_PROP_END_OF_LIST(), > + } > }; > > static void ac97_register (void) > diff --git a/hw/pc_piix.c b/hw/pc_piix.c > index 93e40d0..27ea570 100644 > --- a/hw/pc_piix.c > +++ b/hw/pc_piix.c > @@ -347,6 +347,10 @@ static QEMUMachine pc_machine_v0_13 = { > .driver = "virtio-net-pci", > .property = "event_idx", > .value = "off", > + },{ > + .driver = "AC97", > + .property = "use_broken_id", > + .value = stringify(1), > }, > { /* end of list */ } > }, > @@ -390,6 +394,10 @@ static QEMUMachine pc_machine_v0_12 = { > .driver = "virtio-net-pci", > .property = "event_idx", > .value = "off", > + },{ > + .driver = "AC97", > + .property = "use_broken_id", > + .value = stringify(1), > }, > { /* end of list */ } > } > @@ -441,6 +449,10 @@ static QEMUMachine pc_machine_v0_11 = { > .driver = "virtio-net-pci", > .property = "event_idx", > .value = "off", > + },{ > + .driver = "AC97", > + .property = "use_broken_id", > + .value = stringify(1), > }, > { /* end of list */ } > } > @@ -504,6 +516,10 @@ static QEMUMachine pc_machine_v0_10 = { > .driver = "virtio-net-pci", > .property = "event_idx", > .value = "off", > + },{ > + .driver = "AC97", > + .property = "use_broken_id", > + .value = stringify(1), > }, > { /* end of list */ } > }, ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Qemu-devel] [PATCH 2/2] ac97: don't override the pci subsystem id 2011-11-07 16:00 ` Anthony Liguori @ 2011-11-08 8:08 ` Gerd Hoffmann 2011-11-08 10:00 ` Avi Kivity 0 siblings, 1 reply; 7+ messages in thread From: Gerd Hoffmann @ 2011-11-08 8:08 UTC (permalink / raw) To: Anthony Liguori; +Cc: Takashi Iwai, qemu-devel, kvm On 11/07/11 17:00, Anthony Liguori wrote: > On 11/07/2011 09:33 AM, Gerd Hoffmann wrote: >> 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. > > I don't like having a property of "use broken". Well, it *is* broken. Suggestions for a better name? > Wouldn't it be better to have the subsystem vendor and device id be > configurable, set the default to the qemu subsystem ids, and then set it > to 8086:0000 for < 1.0? I don't want this being fully configurable just for the snake of backward compatibility with old qemu versions. cheers, Gerd ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Qemu-devel] [PATCH 2/2] ac97: don't override the pci subsystem id 2011-11-08 8:08 ` Gerd Hoffmann @ 2011-11-08 10:00 ` Avi Kivity 2011-11-08 10:18 ` Gerd Hoffmann 0 siblings, 1 reply; 7+ messages in thread From: Avi Kivity @ 2011-11-08 10:00 UTC (permalink / raw) To: Gerd Hoffmann; +Cc: Takashi Iwai, qemu-devel, kvm On 11/08/2011 10:08 AM, Gerd Hoffmann wrote: > On 11/07/11 17:00, Anthony Liguori wrote: > > On 11/07/2011 09:33 AM, Gerd Hoffmann wrote: > >> 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. > > > > I don't like having a property of "use broken". > > Well, it *is* broken. > Suggestions for a better name? correctness_challenged? legacy? > > Wouldn't it be better to have the subsystem vendor and device id be > > configurable, set the default to the qemu subsystem ids, and then set it > > to 8086:0000 for < 1.0? > > I don't want this being fully configurable just for the snake of > backward compatibility with old qemu versions. I imagine some downstreams will want to configure it, but if we ever do that, it's not for 1.0. -- I have a truly marvellous patch that fixes the bug which this signature is too narrow to contain. ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Qemu-devel] [PATCH 2/2] ac97: don't override the pci subsystem id 2011-11-08 10:00 ` Avi Kivity @ 2011-11-08 10:18 ` Gerd Hoffmann 0 siblings, 0 replies; 7+ messages in thread From: Gerd Hoffmann @ 2011-11-08 10:18 UTC (permalink / raw) To: Avi Kivity; +Cc: Takashi Iwai, qemu-devel, kvm Hi, >>> Wouldn't it be better to have the subsystem vendor and device id be >>> configurable, set the default to the qemu subsystem ids, and then set it >>> to 8086:0000 for < 1.0? >> >> I don't want this being fully configurable just for the snake of >> backward compatibility with old qemu versions. > > I imagine some downstreams will want to configure it, but if we ever do > that, it's not for 1.0. And for that it would make more sense to make the default qemu subsystem id configurable, not the individual device IDs ... cheers, Gerd ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Qemu-devel] [PATCH 1/2] pc: add 1.0 machine type 2011-11-07 15:33 [Qemu-devel] [PATCH 1/2] pc: add 1.0 machine type Gerd Hoffmann 2011-11-07 15:33 ` [Qemu-devel] [PATCH 2/2] ac97: don't override the pci subsystem id Gerd Hoffmann @ 2011-11-08 17:25 ` Anthony Liguori 1 sibling, 0 replies; 7+ messages in thread From: Anthony Liguori @ 2011-11-08 17:25 UTC (permalink / raw) To: Gerd Hoffmann; +Cc: qemu-devel, kvm On 11/07/2011 09:33 AM, Gerd Hoffmann wrote: > This patch adds a pc-1.0 machine type. > > Signed-off-by: Gerd Hoffmann<kraxel@redhat.com> Applied both. Thanks. Regards, Anthony Liguori > --- > hw/pc_piix.c | 14 +++++++++++--- > 1 files changed, 11 insertions(+), 3 deletions(-) > > diff --git a/hw/pc_piix.c b/hw/pc_piix.c > index 8c7f2b7..93e40d0 100644 > --- a/hw/pc_piix.c > +++ b/hw/pc_piix.c > @@ -297,8 +297,8 @@ static void pc_xen_hvm_init(ram_addr_t ram_size, > } > #endif > > -static QEMUMachine pc_machine = { > - .name = "pc-0.14", > +static QEMUMachine pc_machine_v1_0 = { > + .name = "pc-1.0", > .alias = "pc", > .desc = "Standard PC", > .init = pc_init_pci, > @@ -306,6 +306,13 @@ static QEMUMachine pc_machine = { > .is_default = 1, > }; > > +static QEMUMachine pc_machine_v0_14 = { > + .name = "pc-0.14", > + .desc = "Standard PC", > + .init = pc_init_pci, > + .max_cpus = 255, > +}; > + > static QEMUMachine pc_machine_v0_13 = { > .name = "pc-0.13", > .desc = "Standard PC", > @@ -521,7 +528,8 @@ static QEMUMachine xenfv_machine = { > > static void pc_machine_init(void) > { > - qemu_register_machine(&pc_machine); > + qemu_register_machine(&pc_machine_v1_0); > + qemu_register_machine(&pc_machine_v0_14); > qemu_register_machine(&pc_machine_v0_13); > qemu_register_machine(&pc_machine_v0_12); > qemu_register_machine(&pc_machine_v0_11); ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2011-11-08 17:27 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2011-11-07 15:33 [Qemu-devel] [PATCH 1/2] pc: add 1.0 machine type Gerd Hoffmann 2011-11-07 15:33 ` [Qemu-devel] [PATCH 2/2] ac97: don't override the pci subsystem id Gerd Hoffmann 2011-11-07 16:00 ` Anthony Liguori 2011-11-08 8:08 ` Gerd Hoffmann 2011-11-08 10:00 ` Avi Kivity 2011-11-08 10:18 ` Gerd Hoffmann 2011-11-08 17:25 ` [Qemu-devel] [PATCH 1/2] pc: add 1.0 machine type Anthony Liguori
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).