Linux Audio

Check our new training course

Loading...
v4.6
 
 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
10char *_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	} else
23		return NULL;
24
25	return *str;
26}
27
28int
29_braille_register_console(struct console *console, struct console_cmdline *c)
30{
31	int rtn = 0;
32
33	if (c->brl_options) {
34		console->flags |= CON_BRL;
35		rtn = braille_register_console(console, c->index, c->options,
36					       c->brl_options);
37	}
38
39	return rtn;
40}
41
42int
43_braille_unregister_console(struct console *console)
44{
45	if (console->flags & CON_BRL)
46		return braille_unregister_console(console);
47
48	return 0;
49}
v4.17
 1// SPDX-License-Identifier: GPL-2.0
 2#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
 3
 4#include <linux/kernel.h>
 5#include <linux/console.h>
 6#include <linux/errno.h>
 7#include <linux/string.h>
 8
 9#include "console_cmdline.h"
10#include "braille.h"
11
12int _braille_console_setup(char **str, char **brl_options)
13{
14	if (!strncmp(*str, "brl,", 4)) {
15		*brl_options = "";
16		*str += 4;
17	} else if (!strncmp(*str, "brl=", 4)) {
18		*brl_options = *str + 4;
19		*str = strchr(*brl_options, ',');
20		if (!*str) {
21			pr_err("need port name after brl=\n");
22			return -EINVAL;
23		}
24		*((*str)++) = 0;
25	}
26
27	return 0;
28}
29
30int
31_braille_register_console(struct console *console, struct console_cmdline *c)
32{
33	int rtn = 0;
34
35	if (c->brl_options) {
36		console->flags |= CON_BRL;
37		rtn = braille_register_console(console, c->index, c->options,
38					       c->brl_options);
39	}
40
41	return rtn;
42}
43
44int
45_braille_unregister_console(struct console *console)
46{
47	if (console->flags & CON_BRL)
48		return braille_unregister_console(console);
49
50	return 0;
51}