FILE
early_printk.c
File preview with syntax highlighting.
linux-6.19.14/arch/s390/kernel/early_printk.c
1// SPDX-License-Identifier: GPL-2.0 2/* 3 * Copyright IBM Corp. 2017 4 */ 5 6#include <linux/console.h> 7#include <linux/kernel.h> 8#include <linux/init.h> 9#include <asm/setup.h> 10#include <asm/sclp.h> 11 12static void sclp_early_write(struct console *con, const char *s, unsigned int len) 13{ 14 __sclp_early_printk(s, len); 15} 16 17static struct console sclp_early_console = { 18 .name = "earlysclp", 19 .write = sclp_early_write, 20 .flags = CON_PRINTBUFFER | CON_BOOT, 21 .index = -1, 22}; 23 24void __init register_early_console(void) 25{ 26 if (early_console) 27 return; 28 if (!sclp.has_linemode && !sclp.has_vt220) 29 return; 30 early_console = &sclp_early_console; 31 register_console(early_console); 32} 33 34static int __init setup_early_printk(char *buf) 35{ 36 if (early_console) 37 return 0; 38 /* Accept only "earlyprintk" and "earlyprintk=sclp" */ 39 if (buf && !str_has_prefix(buf, "sclp")) 40 return 0; 41 register_early_console(); 42 return 0; 43} 44early_param("earlyprintk", setup_early_printk);
~/
Read-only file preview.