[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 00/20] PCI express clean up patches.
From: |
Isaku Yamahata |
Subject: |
[Qemu-devel] [PATCH 00/20] PCI express clean up patches. |
Date: |
Thu, 12 Nov 2009 14:58:28 +0900 |
Here is the patch series to clean up PCI express patches.
Although there remained some issues to address, the PCI express
patches was commited while I wasn't responsive last week. (Sorry for that)
This patch series addresses the remained issues.
They are mostly trivial fixes or cosmetics suggested by Michael.
I think I've covered almost all the issues. If I missed anything,
please be kind to point it out again.
Some random comments:
- PCI configuration space register constant.
Now they're defined in pci.h and their symbol name is same to Linux's
pci_regs.h.
So it would make sense to import Linux pci_regs.h and remove the
definitions in pci.h. If this is acceptable, I'll create the patch.
- PCI configuration space helper functions.
Now range checking helper functions are introduced.
range_overlaps() and so on.
So it's possible to clean up each PCI devices by using them.
If acceptable, I'll create the patch.
- endian swap related to PCI host bridge/guest endian/host endian:
I gave up to address this.
I'll leave it to someone who knows PPC spec well and has access to
a big endian host machine.
- PCI bridge clean up:
PCI bridge stuff needs more clean up. Possibly it would result
in a new file pci_bridge.c.
I'd like to address it later. Anyway I have to do it when
I implement PCI express hot plug.
- PCI express initialization:
Since it uses PCI initialization code, so it isn't separated
from PCI cleanly.
One possible way is to introduce PCI express specific qdev
register function (PCIEDeviceInfo, pcie_qdev_register() and
pcie_qdev_init() which calls pci_qdev_init()).
I'm not sure it's worth while at the moment so I'd like to
leave it untouched for now.
thanks,
Isaku Yamahata (20):
pci: fix pci_info_device().
pci: move pci_data_{read, write}() declaration from pci.h to
pci_host.h
pci: simplify pci_data_read(), pcie_mmcfg_data_read().
pci: remove pci_addr_to_config() by open code
pci: rename pci_addr_to_dev(), pcie_mmcfg_addr_to_dev().
pci: shorten pci_host_{conf, data}_register_xxx function a bit.
pci: remove pci_sub_bus() by open coding.
pci: s/pci_find_host_bus/pci_find_root_bus/g
pci_host: remove unnecessary & 0xff.
pci: kill unnecessary included in pci.c
pci: clean up of pci_init_wmask().
pci: remove some unnecessary comment in pci.h
pci: move typedef, PCIHostState, PCIExpressHost to qemu-common.h.
pci: remove unused constants.
pci: clean up of pci_update_mappings()
pci: kill goto in pci_update_mappings()
pci: remove magic number, 256 in pci.c
pci: fix pci_config_get_io_base().
pci: pci bridge related clean up.
pci: remove goto in pci_bridge_filter().
hw/apb_pci.c | 4 +-
hw/grackle_pci.c | 8 ++--
hw/pci-hotplug.c | 4 +-
hw/pci.c | 126 ++++++++++++++++++++++++++++-------------------------
hw/pci.h | 25 ++---------
hw/pci_host.c | 44 +++++++------------
hw/pci_host.h | 15 ++++---
hw/pcie_host.c | 23 +++------
hw/pcie_host.h | 4 +-
hw/piix_pci.c | 2 +-
hw/ppc4xx_pci.c | 2 +-
hw/ppce500_pci.c | 4 +-
hw/prep_pci.c | 2 +-
hw/unin_pci.c | 16 +++---
qemu-common.h | 2 +
15 files changed, 129 insertions(+), 152 deletions(-)
- [Qemu-devel] [PATCH 00/20] PCI express clean up patches.,
Isaku Yamahata <=
- [Qemu-devel] [PATCH 06/20] pci: shorten pci_host_{conf, data}_register_xxx function a bit., Isaku Yamahata, 2009/11/12
- [Qemu-devel] [PATCH 09/20] pci_host: remove unnecessary & 0xff., Isaku Yamahata, 2009/11/12
- [Qemu-devel] [PATCH 01/20] pci: fix pci_info_device()., Isaku Yamahata, 2009/11/12
- [Qemu-devel] [PATCH 15/20] pci: clean up of pci_update_mappings(), Isaku Yamahata, 2009/11/12
- [Qemu-devel] [PATCH 02/20] pci: move pci_data_{read, write}() declaration from pci.h to pci_host.h, Isaku Yamahata, 2009/11/12