summaryrefslogtreecommitdiffstats
path: root/hw/spapr_rtas.c
diff options
context:
space:
mode:
authorMichael Ellerman <michael@ellerman.id.au>2012-11-12 16:46:52 +0000
committerAlexander Graf <agraf@suse.de>2012-12-14 13:12:54 +0100
commit4aac82c34675fcbd3722dfc3a2d04c839215ec6b (patch)
tree92ded7d5ab0d5e2d950b0ffdab480a38dcaec530 /hw/spapr_rtas.c
parentbf3bc4c4e992fb9914e2f1f7e8a569394d298b57 (diff)
downloadhqemu-4aac82c34675fcbd3722dfc3a2d04c839215ec6b.zip
hqemu-4aac82c34675fcbd3722dfc3a2d04c839215ec6b.tar.gz
pseries: Return the token when we register an RTAS call
The kernel will soon be able to service some RTAS calls. However the choice of tokens will still be up to userspace. To support this have spapr_rtas_register() return the token that is allocated for an RTAS call, that allows the calling code to tell the kernel what the token value is. Signed-off-by: Michael Ellerman <michael@ellerman.id.au> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: David Gibson <david@gibson.dropbear.id.au> Signed-off-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'hw/spapr_rtas.c')
-rw-r--r--hw/spapr_rtas.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/hw/spapr_rtas.c b/hw/spapr_rtas.c
index 6d5c48a..45294e8 100644
--- a/hw/spapr_rtas.c
+++ b/hw/spapr_rtas.c
@@ -242,7 +242,7 @@ target_ulong spapr_rtas_call(sPAPREnvironment *spapr,
return H_PARAMETER;
}
-void spapr_rtas_register(const char *name, spapr_rtas_fn fn)
+int spapr_rtas_register(const char *name, spapr_rtas_fn fn)
{
int i;
@@ -258,7 +258,7 @@ void spapr_rtas_register(const char *name, spapr_rtas_fn fn)
rtas_next->name = name;
rtas_next->fn = fn;
- rtas_next++;
+ return (rtas_next++ - rtas_table) + TOKEN_BASE;
}
int spapr_rtas_device_tree_setup(void *fdt, hwaddr rtas_addr,
OpenPOWER on IntegriCloud