From: "Michael S. Tsirkin" <mst@redhat.com>
To: "Nawrocki, Michael" <Michael.Nawrocki@gtri.gatech.edu>
Cc: "Dr. David Alan Gilbert" <dgilbert@redhat.com>,
"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
"marcel@redhat.com" <marcel@redhat.com>,
"jasowang@redhat.com" <jasowang@redhat.com>
Subject: Re: [Qemu-devel] [PATCH 2/2] Add i82559a eepro100 interface
Date: Wed, 1 Nov 2017 17:32:05 +0200 [thread overview]
Message-ID: <20171101172847-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <565D1929-C201-4AAD-A07E-12382FD23D81@gtri.gatech.edu>
On Wed, Nov 01, 2017 at 02:48:17PM +0000, Nawrocki, Michael wrote:
> On 10/31/17, 13:50, "Dr. David Alan Gilbert" <dgilbert@redhat.com> wrote:
>
> * Mike Nawrocki (michael.nawrocki@gtri.gatech.edu) wrote:
> > Signed-off-by: Mike Nawrocki <michael.nawrocki@gtri.gatech.edu>
> > ---
> > hw/net/eepro100.c | 2 +-
> > hw/pci/pci.c | 2 ++
> > include/hw/pci/pci.h | 1 +
> > qemu-options.hx | 2 +-
> > 4 files changed, 5 insertions(+), 2 deletions(-)
> >
> > diff --git a/hw/net/eepro100.c b/hw/net/eepro100.c
> > index 91dd058010..2c7c5cdeb9 100644
> > --- a/hw/net/eepro100.c
> > +++ b/hw/net/eepro100.c
> > @@ -1973,7 +1973,7 @@ static E100PCIDeviceInfo e100_devices[] = {
> > .name = "i82559a",
> > .desc = "Intel i82559A Ethernet",
> > .device = i82559A,
> > - .device_id = PCI_DEVICE_ID_INTEL_82557,
> > + .device_id = PCI_DEVICE_ID_INTEL_82559,
>
> Doesn't that break migration/compatibility - if one side suddenly
> sees a different device_id ?
>
> Dave
>
> I’m not sure. I searched for code references to the i82559a interface and couldn’t find any outside of the driver itself; it wasn’t exported as a pci_nic_model before my patch, so I don’t think the i82559a device was being used, programmatically or via the command line, before this point. Perhaps there’s a different way to use the device that I’m not aware of?
the modern way to create devices is with -devices.
> I think the ID I’m using (0x8086 0x1030 – Intel Corporation 82559 InBusiness 10/100) is more accurate to the chipset, and a driver I’ve got explicitly searches for this ID. Most drivers seem to search for a number of PCI IDs in the eepro100 family, at any rate, so I think it should be okay. Let me know if another approach is preferable.
>
> Thanks,
> Mike
You need a property and set it to a compat value for
old machine types.
> > .revision = 0x06,
> > .stats_size = 80,
> > .has_extended_tcb_support = true,
> > diff --git a/hw/pci/pci.c b/hw/pci/pci.c
> > index 5ed3c8dca4..1126ad1eb3 100644
> > --- a/hw/pci/pci.c
> > +++ b/hw/pci/pci.c
> > @@ -1826,6 +1826,7 @@ static const char * const pci_nic_models[] = {
> > "ne2k_pci",
> > "i82551",
> > "i82557b",
> > + "i82559a",
> > "i82559er",
> > "rtl8139",
> > "e1000",
> > @@ -1839,6 +1840,7 @@ static const char * const pci_nic_names[] = {
> > "ne2k_pci",
> > "i82551",
> > "i82557b",
> > + "i82559a",
> > "i82559er",
> > "rtl8139",
> > "e1000",
There's no need to add more nic names here. Just create with -device.
> > diff --git a/include/hw/pci/pci.h b/include/hw/pci/pci.h
> > index 8d02a0a383..f30e2cfb72 100644
> > --- a/include/hw/pci/pci.h
> > +++ b/include/hw/pci/pci.h
> > @@ -70,6 +70,7 @@ extern bool pci_available;
> > /* Intel (0x8086) */
> > #define PCI_DEVICE_ID_INTEL_82551IT 0x1209
> > #define PCI_DEVICE_ID_INTEL_82557 0x1229
> > +#define PCI_DEVICE_ID_INTEL_82559 0x1030
> > #define PCI_DEVICE_ID_INTEL_82801IR 0x2922
> >
> > /* Red Hat / Qumranet (for QEMU) -- see pci-ids.txt */
> > diff --git a/qemu-options.hx b/qemu-options.hx
> > index 3728e9b4dd..a39c7e44b3 100644
> > --- a/qemu-options.hx
> > +++ b/qemu-options.hx
> > @@ -2047,7 +2047,7 @@ that the card should have; this option currently only affects virtio cards; set
> > @var{v} = 0 to disable MSI-X. If no @option{-net} option is specified, a single
> > NIC is created. QEMU can emulate several different models of network card.
> > Valid values for @var{type} are
> > -@code{virtio}, @code{i82551}, @code{i82557b}, @code{i82559er},
> > +@code{virtio}, @code{i82551}, @code{i82557b}, @code{i82559a}, @code{i82559er},
> > @code{ne2k_pci}, @code{ne2k_isa}, @code{pcnet}, @code{rtl8139},
> > @code{e1000}, @code{smc91c111}, @code{lance} and @code{mcf_fec}.
> > Not all devices are supported on all targets. Use @code{-net nic,model=help}
> > --
> > 2.14.2
> >
> >
> --
> Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
>
>
next prev parent reply other threads:[~2017-11-01 15:32 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-10-31 15:54 [Qemu-devel] [PATCH 0/2] Fix eepro100 simple transmission, add i82559 chipset Mike Nawrocki
2017-10-31 15:54 ` [Qemu-devel] [PATCH 1/2] Fix eepro100 simple transmission mode Mike Nawrocki
2017-10-31 15:54 ` [Qemu-devel] [PATCH 2/2] Add i82559a eepro100 interface Mike Nawrocki
2017-10-31 17:50 ` Dr. David Alan Gilbert
2017-11-01 14:48 ` Nawrocki, Michael
2017-11-01 15:32 ` Michael S. Tsirkin [this message]
2017-11-06 20:23 ` Michael Nawrocki
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20171101172847-mutt-send-email-mst@kernel.org \
--to=mst@redhat.com \
--cc=Michael.Nawrocki@gtri.gatech.edu \
--cc=dgilbert@redhat.com \
--cc=jasowang@redhat.com \
--cc=marcel@redhat.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.