diff options
author | Michael Ellerman <michael@ellerman.id.au> | 2012-11-12 16:46:52 +0000 |
---|---|---|
committer | Alexander Graf <agraf@suse.de> | 2012-12-14 13:12:54 +0100 |
commit | 4aac82c34675fcbd3722dfc3a2d04c839215ec6b (patch) | |
tree | 92ded7d5ab0d5e2d950b0ffdab480a38dcaec530 /hw/spapr_rtas.c | |
parent | bf3bc4c4e992fb9914e2f1f7e8a569394d298b57 (diff) |
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.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/hw/spapr_rtas.c b/hw/spapr_rtas.c index 6d5c48a740..45294e8305 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, |