diff options
author | David Gibson <david@gibson.dropbear.id.au> | 2011-12-12 18:24:28 +0000 |
---|---|---|
committer | Alexander Graf <agraf@suse.de> | 2012-01-03 15:49:11 +0100 |
commit | 1fc02533e73ad66f756f07efdf80fa9bef5afbc8 (patch) | |
tree | 4b82e136708cf7facb574811e8d617ef67f4d016 /hw/spapr_vio.c | |
parent | 157feeadbaec09fe4dca539a24f6f6d327d6eeb6 (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.c | 13 |
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; } |