summaryrefslogtreecommitdiffstats
path: root/kernel/printk/braille.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@kernel.org>2013-08-12 19:51:43 +0200
committerIngo Molnar <mingo@kernel.org>2013-08-12 19:51:43 +0200
commit6356bb0ad6525dae93c06478a098ed3848e9ab01 (patch)
tree8fdbda28405fb0b1c213f2a87c532a760510adf0 /kernel/printk/braille.c
parent7781544e7c367d0cae87feb0f0675fd333bfc9d8 (diff)
parent0ca06c0857aee11911f91621db14498496f2c2cd (diff)
downloadop-kernel-dev-6356bb0ad6525dae93c06478a098ed3848e9ab01.zip
op-kernel-dev-6356bb0ad6525dae93c06478a098ed3848e9ab01.tar.gz
Merge tag 'please-pull-mce-f-bit' of git://git.kernel.org/pub/scm/linux/kernel/git/ras/ras into x86/ras
Pull MCE-uncorrected-error fix from Tony Luck: "Bit 12 may or may not be set in MCi_STATUS.MCACOD when an uncorrected error is reported. Ignore it when checking error signatures." Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'kernel/printk/braille.c')
-rw-r--r--kernel/printk/braille.c48
1 files changed, 48 insertions, 0 deletions
diff --git a/kernel/printk/braille.c b/kernel/printk/braille.c
new file mode 100644
index 0000000..b51087f
--- /dev/null
+++ b/kernel/printk/braille.c
@@ -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;
+}
OpenPOWER on IntegriCloud