1 // SPDX-License-Identifier: GPL-2.0
3 * Copyright IBM Corp. 2017
6 #include <linux/console.h>
7 #include <linux/kernel.h>
8 #include <linux/init.h>
11 static void sclp_early_write(struct console
*con
, const char *s
, unsigned int len
)
13 __sclp_early_printk(s
, len
);
16 static struct console sclp_early_console
= {
18 .write
= sclp_early_write
,
19 .flags
= CON_PRINTBUFFER
| CON_BOOT
,
23 static int __init
setup_early_printk(char *buf
)
27 /* Accept only "earlyprintk" and "earlyprintk=sclp" */
28 if (buf
&& !str_has_prefix(buf
, "sclp"))
30 if (!sclp
.has_linemode
&& !sclp
.has_vt220
)
32 early_console
= &sclp_early_console
;
33 register_console(early_console
);
36 early_param("earlyprintk", setup_early_printk
);