diff options
author | Joe Perches <joe@perches.com> | 2013-07-31 16:53:45 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2013-07-31 17:41:03 -0400 |
commit | bbeddf52adc1b4207674ab88686cbbe58c24f721 (patch) | |
tree | b5cc2fe8f140e340407e2daa8b1ab2ba63ae00f4 /kernel/printk/braille.c | |
parent | d197c43d04decb6b1298fa3ef26ea04a9ca7c977 (diff) |
printk: move braille console support into separate braille.[ch] files
Create files with prototypes and static inlines for braille support. Make
braille_console functions return 1 on success.
Corrected CONFIG_A11Y_BRAILLE_CONSOLE=n _braille_console_setup
return value to NULL.
Signed-off-by: Joe Perches <joe@perches.com>
Reviewed-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
Cc: Ming Lei <ming.lei@canonical.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'kernel/printk/braille.c')
-rw-r--r-- | kernel/printk/braille.c | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/kernel/printk/braille.c b/kernel/printk/braille.c new file mode 100644 index 000000000000..b51087fb9ace --- /dev/null +++ b/kernel/printk/braille.c | |||
@@ -0,0 +1,48 @@ | |||
1 | #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt | ||
2 | |||
3 | #include <linux/kernel.h> | ||
4 | #include <linux/console.h> | ||
5 | #include <linux/string.h> | ||
6 | |||
7 | #include "console_cmdline.h" | ||
8 | #include "braille.h" | ||
9 | |||
10 | char *_braille_console_setup(char **str, char **brl_options) | ||
11 | { | ||
12 | if (!memcmp(*str, "brl,", 4)) { | ||
13 | *brl_options = ""; | ||
14 | *str += 4; | ||
15 | } else if (!memcmp(str, "brl=", 4)) { | ||
16 | *brl_options = *str + 4; | ||
17 | *str = strchr(*brl_options, ','); | ||
18 | if (!*str) | ||
19 | pr_err("need port name after brl=\n"); | ||
20 | else | ||
21 | *((*str)++) = 0; | ||
22 | } | ||
23 | |||
24 | return *str; | ||
25 | } | ||
26 | |||
27 | int | ||
28 | _braille_register_console(struct console *console, struct console_cmdline *c) | ||
29 | { | ||
30 | int rtn = 0; | ||
31 | |||
32 | if (c->brl_options) { | ||
33 | console->flags |= CON_BRL; | ||
34 | rtn = braille_register_console(console, c->index, c->options, | ||
35 | c->brl_options); | ||
36 | } | ||
37 | |||
38 | return rtn; | ||
39 | } | ||
40 | |||
41 | int | ||
42 | _braille_unregister_console(struct console *console) | ||
43 | { | ||
44 | if (console->flags & CON_BRL) | ||
45 | return braille_unregister_console(console); | ||
46 | |||
47 | return 0; | ||
48 | } | ||