summaryrefslogtreecommitdiff
path: root/hw/spapr_vio.c
diff options
context:
space:
mode:
authorDavid Gibson <david@gibson.dropbear.id.au>2011-12-12 18:24:28 +0000
committerAlexander Graf <agraf@suse.de>2012-01-03 15:49:11 +0100
commit1fc02533e73ad66f756f07efdf80fa9bef5afbc8 (patch)
tree4b82e136708cf7facb574811e8d617ef67f4d016 /hw/spapr_vio.c
parent157feeadbaec09fe4dca539a24f6f6d327d6eeb6 (diff)
pseries: Remove hcalls callback
For forgotten historical reasons, PAPR hypercalls for specific virtual IO devices (oh which there are quite a number) are registered via a callback in the VIOsPAPRDeviceInfo structure. This is kind of ugly, so this patch instead registers hypercalls from device_init() functions for each device type. This works just as well, and is cleaner. Signed-off-by: David Gibson <david@gibson.dropbear.id.au> Signed-off-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'hw/spapr_vio.c')
-rw-r--r--hw/spapr_vio.c13
1 files changed, 0 insertions, 13 deletions
diff --git a/hw/spapr_vio.c b/hw/spapr_vio.c
index 2dcc0361ed..5a35541837 100644
--- a/hw/spapr_vio.c
+++ b/hw/spapr_vio.c
@@ -684,7 +684,6 @@ VIOsPAPRBus *spapr_vio_bus_init(void)
VIOsPAPRBus *bus;
BusState *qbus;
DeviceState *dev;
- DeviceInfo *qinfo;
/* Create bridge device */
dev = qdev_create(NULL, "spapr-vio-bridge");
@@ -711,18 +710,6 @@ VIOsPAPRBus *spapr_vio_bus_init(void)
spapr_rtas_register("ibm,set-tce-bypass", rtas_set_tce_bypass);
spapr_rtas_register("quiesce", rtas_quiesce);
- for (qinfo = device_info_list; qinfo; qinfo = qinfo->next) {
- VIOsPAPRDeviceInfo *info = (VIOsPAPRDeviceInfo *)qinfo;
-
- if (qinfo->bus_info != &spapr_vio_bus_info) {
- continue;
- }
-
- if (info->hcalls) {
- info->hcalls(bus);
- }
- }
-
return bus;
}