-
Notifications
You must be signed in to change notification settings - Fork 45
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
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 <[email protected]> Reviewed-by: Samuel Thibault <[email protected]> Cc: Ming Lei <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
- Loading branch information
1 parent
d197c43
commit bbeddf5
Showing
5 changed files
with
117 additions
and
33 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,2 @@ | ||
obj-y = printk.o | ||
obj-$(CONFIG_A11Y_BRAILLE_CONSOLE) += braille.o |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,48 @@ | ||
#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt | ||
|
||
#include <linux/kernel.h> | ||
#include <linux/console.h> | ||
#include <linux/string.h> | ||
|
||
#include "console_cmdline.h" | ||
#include "braille.h" | ||
|
||
char *_braille_console_setup(char **str, char **brl_options) | ||
{ | ||
if (!memcmp(*str, "brl,", 4)) { | ||
*brl_options = ""; | ||
*str += 4; | ||
} else if (!memcmp(str, "brl=", 4)) { | ||
*brl_options = *str + 4; | ||
*str = strchr(*brl_options, ','); | ||
if (!*str) | ||
pr_err("need port name after brl=\n"); | ||
else | ||
*((*str)++) = 0; | ||
} | ||
|
||
return *str; | ||
} | ||
|
||
int | ||
_braille_register_console(struct console *console, struct console_cmdline *c) | ||
{ | ||
int rtn = 0; | ||
|
||
if (c->brl_options) { | ||
console->flags |= CON_BRL; | ||
rtn = braille_register_console(console, c->index, c->options, | ||
c->brl_options); | ||
} | ||
|
||
return rtn; | ||
} | ||
|
||
int | ||
_braille_unregister_console(struct console *console) | ||
{ | ||
if (console->flags & CON_BRL) | ||
return braille_unregister_console(console); | ||
|
||
return 0; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,48 @@ | ||
#ifndef _PRINTK_BRAILLE_H | ||
#define _PRINTK_BRAILLE_H | ||
|
||
#ifdef CONFIG_A11Y_BRAILLE_CONSOLE | ||
|
||
static inline void | ||
braille_set_options(struct console_cmdline *c, char *brl_options) | ||
{ | ||
c->brl_options = brl_options; | ||
} | ||
|
||
char * | ||
_braille_console_setup(char **str, char **brl_options); | ||
|
||
int | ||
_braille_register_console(struct console *console, struct console_cmdline *c); | ||
|
||
int | ||
_braille_unregister_console(struct console *console); | ||
|
||
#else | ||
|
||
static inline void | ||
braille_set_options(struct console_cmdline *c, char *brl_options) | ||
{ | ||
} | ||
|
||
static inline char * | ||
_braille_console_setup(char **str, char **brl_options) | ||
{ | ||
return NULL; | ||
} | ||
|
||
static inline int | ||
_braille_register_console(struct console *console, struct console_cmdline *c) | ||
{ | ||
return 0; | ||
} | ||
|
||
static inline int | ||
_braille_unregister_console(struct console *console) | ||
{ | ||
return 0; | ||
} | ||
|
||
#endif | ||
|
||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters