1
0
Fork 0

[PATCH] aoa: pmf gpio: report if function calling fails

This patch makes the pmf GPIO layer in aoa report if calling a platform
function failed.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
hifive-unleashed-5.1
Benjamin Herrenschmidt 2006-07-10 04:44:37 -07:00 committed by Linus Torvalds
parent 977c60238c
commit e53fcabc6d
1 changed files with 11 additions and 3 deletions

View File

@ -14,9 +14,13 @@
static void pmf_gpio_set_##name(struct gpio_runtime *rt, int on)\
{ \
struct pmf_args args = { .count = 1, .u[0].v = !on }; \
\
int rc; \
\
if (unlikely(!rt)) return; \
pmf_call_function(rt->node, #name "-mute", &args); \
rc = pmf_call_function(rt->node, #name "-mute", &args); \
if (rc) \
printk(KERN_WARNING "pmf_gpio_set_" #name \
" failed, rc: %d\n", rc); \
rt->implementation_private &= ~(1<<bit); \
rt->implementation_private |= (!!on << bit); \
} \
@ -33,9 +37,13 @@ PMF_GPIO(lineout, 2);
static void pmf_gpio_set_hw_reset(struct gpio_runtime *rt, int on)
{
struct pmf_args args = { .count = 1, .u[0].v = !!on };
int rc;
if (unlikely(!rt)) return;
pmf_call_function(rt->node, "hw-reset", &args);
rc = pmf_call_function(rt->node, "hw-reset", &args);
if (rc)
printk(KERN_WARNING "pmf_gpio_set_hw_reset"
" failed, rc: %d\n", rc);
}
static void pmf_gpio_all_amps_off(struct gpio_runtime *rt)