aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/pci/hotplug/rpaphp.h
diff options
context:
space:
mode:
authorJohn Rose <johnrose@austin.ibm.com>2005-07-25 11:16:42 -0400
committerGreg Kroah-Hartman <gregkh@suse.de>2005-09-08 17:57:22 -0400
commit5eeb8c63a38ff20285f3bbe7bcfe5e7c33c8ba14 (patch)
tree81827bae5ac66dd8ca51cfe60740a64ca53e0759 /drivers/pci/hotplug/rpaphp.h
parentbde168412440084e649e7e04938bd1ab6e7bf978 (diff)
[PATCH] PCI Hotplug: rpaphp: Move VIO registration
Currently, rpaphp registers Virtual I/O slots as hotplug slots. The only purpose of this registration is to ensure that the VIO subsystem is notified of new VIO buses during DLPAR adds. Similarly, rpaphp notifies the VIO subsystem when a VIO bus is DLPAR-removed. The rpaphp module has special case code to fake results for attributes like power, adapter status, etc. The VIO register/unregister functions could just as easily be made from the DLPAR module. This patch moves the VIO registration calls to the DLPAR module, and removes the VIO fluff from rpaphp altogether. Signed-off-by: John Rose <johnrose@austin.ibm.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/pci/hotplug/rpaphp.h')
-rw-r--r--drivers/pci/hotplug/rpaphp.h16
1 files changed, 1 insertions, 15 deletions
diff --git a/drivers/pci/hotplug/rpaphp.h b/drivers/pci/hotplug/rpaphp.h
index 25bea00b4f14..2d9f420dfa4f 100644
--- a/drivers/pci/hotplug/rpaphp.h
+++ b/drivers/pci/hotplug/rpaphp.h
@@ -61,10 +61,6 @@ extern int debug;
61#define info(format, arg...) printk(KERN_INFO "%s: " format, MY_NAME , ## arg) 61#define info(format, arg...) printk(KERN_INFO "%s: " format, MY_NAME , ## arg)
62#define warn(format, arg...) printk(KERN_WARNING "%s: " format, MY_NAME , ## arg) 62#define warn(format, arg...) printk(KERN_WARNING "%s: " format, MY_NAME , ## arg)
63 63
64/* slot types */
65#define VIO_DEV 1
66#define PCI_DEV 2
67
68/* slot states */ 64/* slot states */
69 65
70#define NOT_VALID 3 66#define NOT_VALID 3
@@ -84,14 +80,10 @@ struct slot {
84 char *name; 80 char *name;
85 char *location; 81 char *location;
86 u8 removable; 82 u8 removable;
87 u8 dev_type; /* VIO or PCI */
88 struct device_node *dn; /* slot's device_node in OFDT */ 83 struct device_node *dn; /* slot's device_node in OFDT */
89 /* dn has phb info */ 84 /* dn has phb info */
90 struct pci_dev *bridge; /* slot's pci_dev in pci_devices */ 85 struct pci_dev *bridge; /* slot's pci_dev in pci_devices */
91 union { 86 struct list_head *pci_devs; /* pci_devs in PCI slot */
92 struct list_head *pci_devs; /* pci_devs in PCI slot */
93 struct vio_dev *vio_dev; /* vio_dev in VIO slot */
94 } dev;
95 struct hotplug_slot *hotplug_slot; 87 struct hotplug_slot *hotplug_slot;
96}; 88};
97 89
@@ -115,12 +107,6 @@ extern int rpaphp_remove_slot(struct slot *slot);
115extern int rpaphp_get_drc_props(struct device_node *dn, int *drc_index, 107extern int rpaphp_get_drc_props(struct device_node *dn, int *drc_index,
116 char **drc_name, char **drc_type, int *drc_power_domain); 108 char **drc_name, char **drc_type, int *drc_power_domain);
117 109
118/* rpaphp_vio.c */
119extern int rpaphp_get_vio_adapter_status(struct slot *slot, int is_init, u8 * value);
120extern int rpaphp_unconfig_vio_adapter(struct slot *slot);
121extern int register_vio_slot(struct device_node *dn);
122extern int rpaphp_enable_vio_slot(struct slot *slot);
123
124/* rpaphp_slot.c */ 110/* rpaphp_slot.c */
125extern void dealloc_slot_struct(struct slot *slot); 111extern void dealloc_slot_struct(struct slot *slot);
126extern struct slot *alloc_slot_struct(struct device_node *dn, int drc_index, char *drc_name, int power_domain); 112extern struct slot *alloc_slot_struct(struct device_node *dn, int drc_index, char *drc_name, int power_domain);