aboutsummaryrefslogtreecommitdiff
path: root/include/pci.h
diff options
context:
space:
mode:
authorGavin Shan <gwshan@linux.vnet.ibm.com>2016-06-10 15:03:49 +1000
committerStewart Smith <stewart@linux.vnet.ibm.com>2016-06-14 16:00:17 +1000
commitb0cb209e3893d1db7f10662c0803997d928942e5 (patch)
treef18761bfb32f55cf756cc960e01b50fbfb47765e /include/pci.h
parentaa928bfbd89192ea13809c6cd8f0402fd981a976 (diff)
downloadskiboot-b0cb209e3893d1db7f10662c0803997d928942e5.zip
skiboot-b0cb209e3893d1db7f10662c0803997d928942e5.tar.gz
skiboot-b0cb209e3893d1db7f10662c0803997d928942e5.tar.bz2
core/pci: Use PCI slot in enumeration
During PCI enumeration, the root complex's link and fundamental reset are carried out by PHB's callbacks which are replaced by the corresponding PCI slot's callbacks. Also, the hotplug related device node properties are populated based on the PCI slot info that is included in PCI slot now. This uses PCI slot in enumeration: * Use PCI slot's callbacks for fundamental reset and link status retrieval in PCI enumeration. * Simplify the code by removing traditional PCI/PCI-x related logic as we don't have PCI/PCI-X root complex. * Replace pci_add_slot_properties() with pci_slot_add_properties() to populate PCI slot properties in device-tree. * PHB is always not hotpluggable. No hotpluggable properties in its device node are needed. * Remove "struct pci_slot_info" definition as its info is included in "struct pci_slot". Signed-off-by: Gavin Shan <gwshan@linux.vnet.ibm.com> Reviewed-by: Russell Currey <ruscur@russell.cc> Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
Diffstat (limited to 'include/pci.h')
-rw-r--r--include/pci.h17
1 files changed, 0 insertions, 17 deletions
diff --git a/include/pci.h b/include/pci.h
index 486b712..ce46889 100644
--- a/include/pci.h
+++ b/include/pci.h
@@ -22,21 +22,6 @@
#include <lock.h>
#include <ccan/list/list.h>
-/* PCI Slot Entry Information */
-struct pci_slot_info {
- char label[16];
- bool pluggable;
- bool power_ctl;
- int wired_lanes;
- int bus_clock;
- int connector_type;
- int card_desc;
- int card_mech;
- int pwr_led_ctl;
- int attn_led_ctl;
- int slot_index;
-};
-
struct pci_device;
struct pci_cfg_reg_filter;
@@ -98,7 +83,6 @@ struct pci_device {
struct dt_node *dn;
struct pci_slot *slot;
- struct pci_slot_info *slot_info;
struct pci_device *parent;
struct list_head children;
struct list_node link;
@@ -410,7 +394,6 @@ struct phb {
/* PCI-X only slot info, for PCI-E this is in the RC bridge */
struct pci_slot *slot;
- struct pci_slot_info *slot_info;
/* Base location code used to generate the children one */
const char *base_loc_code;