braille-console: Fix value returned by _braille_console_setup
commitbbeddf52ad
("printk: move braille console support into separate braille.[ch] files") introduced _braille_console_setup() to outline the braille initialization code. There was however some confusion over the value it was supposed to return. commit2cfe6c4ac7
("printk: Fix return of braille_register_console()") tried to fix it but failed to. This fixes and documents the returned value according to the use in printk.c: non-zero return means a parsing error, and thus this console configuration should be ignored. Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org> Cc: Aleksey Makarov <aleksey.makarov@linaro.org> Cc: Joe Perches <joe@perches.com> Cc: Ming Lei <ming.lei@canonical.com> Cc: Steven Rostedt <rostedt@goodmis.org> Acked-by: Petr Mladek <pmladek@suse.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
cfa6eb2391
commit
2ed2b8621b
2 changed files with 18 additions and 10 deletions
|
@ -2,12 +2,13 @@
|
|||
|
||||
#include <linux/kernel.h>
|
||||
#include <linux/console.h>
|
||||
#include <linux/errno.h>
|
||||
#include <linux/string.h>
|
||||
|
||||
#include "console_cmdline.h"
|
||||
#include "braille.h"
|
||||
|
||||
char *_braille_console_setup(char **str, char **brl_options)
|
||||
int _braille_console_setup(char **str, char **brl_options)
|
||||
{
|
||||
if (!strncmp(*str, "brl,", 4)) {
|
||||
*brl_options = "";
|
||||
|
@ -15,14 +16,14 @@ char *_braille_console_setup(char **str, char **brl_options)
|
|||
} else if (!strncmp(*str, "brl=", 4)) {
|
||||
*brl_options = *str + 4;
|
||||
*str = strchr(*brl_options, ',');
|
||||
if (!*str)
|
||||
if (!*str) {
|
||||
pr_err("need port name after brl=\n");
|
||||
else
|
||||
*((*str)++) = 0;
|
||||
} else
|
||||
return NULL;
|
||||
return -EINVAL;
|
||||
}
|
||||
*((*str)++) = 0;
|
||||
}
|
||||
|
||||
return *str;
|
||||
return 0;
|
||||
}
|
||||
|
||||
int
|
||||
|
|
|
@ -9,7 +9,14 @@ braille_set_options(struct console_cmdline *c, char *brl_options)
|
|||
c->brl_options = brl_options;
|
||||
}
|
||||
|
||||
char *
|
||||
/*
|
||||
* Setup console according to braille options.
|
||||
* Return -EINVAL on syntax error, 0 on success (or no braille option was
|
||||
* actually given).
|
||||
* Modifies str to point to the serial options
|
||||
* Sets brl_options to the parsed braille options.
|
||||
*/
|
||||
int
|
||||
_braille_console_setup(char **str, char **brl_options);
|
||||
|
||||
int
|
||||
|
@ -25,10 +32,10 @@ braille_set_options(struct console_cmdline *c, char *brl_options)
|
|||
{
|
||||
}
|
||||
|
||||
static inline char *
|
||||
static inline int
|
||||
_braille_console_setup(char **str, char **brl_options)
|
||||
{
|
||||
return NULL;
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline int
|
||||
|
|
Loading…
Reference in a new issue