diff options
Diffstat (limited to 'arch/powerpc/kernel/rtas.c')
| -rw-r--r-- | arch/powerpc/kernel/rtas.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/arch/powerpc/kernel/rtas.c b/arch/powerpc/kernel/rtas.c index 14353b8789dd..bfd66d3a035c 100644 --- a/arch/powerpc/kernel/rtas.c +++ b/arch/powerpc/kernel/rtas.c | |||
| @@ -571,6 +571,27 @@ int rtas_set_indicator(int indicator, int index, int new_value) | |||
| 571 | } | 571 | } |
| 572 | EXPORT_SYMBOL(rtas_set_indicator); | 572 | EXPORT_SYMBOL(rtas_set_indicator); |
| 573 | 573 | ||
| 574 | /* | ||
| 575 | * Ignoring RTAS extended delay | ||
| 576 | */ | ||
| 577 | int rtas_set_indicator_fast(int indicator, int index, int new_value) | ||
| 578 | { | ||
| 579 | int rc; | ||
| 580 | int token = rtas_token("set-indicator"); | ||
| 581 | |||
| 582 | if (token == RTAS_UNKNOWN_SERVICE) | ||
| 583 | return -ENOENT; | ||
| 584 | |||
| 585 | rc = rtas_call(token, 3, 1, NULL, indicator, index, new_value); | ||
| 586 | |||
| 587 | WARN_ON(rc == -2 || (rc >= 9900 && rc <= 9905)); | ||
| 588 | |||
| 589 | if (rc < 0) | ||
| 590 | return rtas_error_rc(rc); | ||
| 591 | |||
| 592 | return rc; | ||
| 593 | } | ||
| 594 | |||
| 574 | void rtas_restart(char *cmd) | 595 | void rtas_restart(char *cmd) |
| 575 | { | 596 | { |
| 576 | if (rtas_flash_term_hook) | 597 | if (rtas_flash_term_hook) |
