qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH 00/17] pci: switch a ton of drivers to symbolic names
@ 2009-12-10 18:09 Michael S. Tsirkin
  2009-12-10 18:17 ` Glauber Costa
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Michael S. Tsirkin @ 2009-12-10 18:09 UTC (permalink / raw)
  To: Anthony Liguori, qemu-devel

The recent e1000 bug made the important of using
symbolic macros for pci config access clear for me.
So I started going over drivers and converting
to symbolic constants instead of hard-coded ones.
I did a large part until I run out of steam.
Maybe some brave soul will take up converting
the rest of them, or maybe I will: note that
when converting bridges one should be careful
to use bridge macros where appropriate.

Instead of testing a huge number of configurations,
I compared binaries before and after conversion.
Almost all of them generate exact same stripped binary
before and after the change.
The only object changed was eepro100, objdump showed
that the change was because gcc for some reason
decides to use a bit more stack for init function
after comments are added there.

This methodology was the reason that I added TODOs where I saw
deviations from spec or other code ugliness, will have to be fixed
separately.

I also verified separately that eepro100 still works
and survives light usage.

This patcheset applies on top of e1000 bugfix
I have posted previously.

Michael S. Tsirkin (17):
  e1000: switch to symbolic names for pci registers
  ne2000: switch to symbolic names for pci registers
  rtl: switch to symbolic names for pci registers
  pcnet: switch to symbolic names for pci registers
  pci: add more status bits
  eepro100: symbolic names for pci registers
  piix: symbolic constants
  cmd646: symbolic names for pci registers
  vmware_vga: symbolic names for pci registers
  lsi: symbolic names for pci registers
  pci: add another devsel macro
  es1370: symbolic names for pci registers
  wdt_i6300esb: symbolic names for pci registers
  ac97: symbolic names for pci registers
  usb-uhci: symbolic names for pci registers
  usb-uhci: symbolic names for pci registers
  pci: remove unused macro

 hw/ac97.c         |   57 ++++++++++++++++++++++++++++------------------------
 hw/e1000.c        |   11 ++++++---
 hw/eepro100.c     |   49 +++++++++++++++++++++++++++++---------------
 hw/es1370.c       |   29 ++++++++++++++-------------
 hw/ide/cmd646.c   |    7 +++--
 hw/ide/piix.c     |   13 +++++++----
 hw/lsi53c895a.c   |   10 +++++---
 hw/ne2000.c       |    3 +-
 hw/pci.h          |    5 +++-
 hw/pcnet.c        |   26 +++++++++++++++--------
 hw/rtl8139.c      |   16 +++++++++-----
 hw/usb-ohci.c     |    6 +++-
 hw/usb-uhci.c     |    7 +++--
 hw/vmware_vga.c   |   20 ++++++++++--------
 hw/wdt_i6300esb.c |    2 +-
 15 files changed, 156 insertions(+), 105 deletions(-)

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2009-12-12 15:47 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-12-10 18:09 [Qemu-devel] [PATCH 00/17] pci: switch a ton of drivers to symbolic names Michael S. Tsirkin
2009-12-10 18:17 ` Glauber Costa
2009-12-10 18:28 ` Paul Brook
2009-12-11 10:26   ` Michael S. Tsirkin
2009-12-12 15:46 ` [Qemu-devel] " Juan Quintela

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).