1*4882a593Smuzhiyun /* SPDX-License-Identifier: GPL-2.0-only */ 2*4882a593Smuzhiyun /* 3*4882a593Smuzhiyun * memconsole.h 4*4882a593Smuzhiyun * 5*4882a593Smuzhiyun * Internal headers of the memory based BIOS console. 6*4882a593Smuzhiyun * 7*4882a593Smuzhiyun * Copyright 2017 Google Inc. 8*4882a593Smuzhiyun */ 9*4882a593Smuzhiyun 10*4882a593Smuzhiyun #ifndef __FIRMWARE_GOOGLE_MEMCONSOLE_H 11*4882a593Smuzhiyun #define __FIRMWARE_GOOGLE_MEMCONSOLE_H 12*4882a593Smuzhiyun 13*4882a593Smuzhiyun #include <linux/types.h> 14*4882a593Smuzhiyun 15*4882a593Smuzhiyun /* 16*4882a593Smuzhiyun * memconsole_setup 17*4882a593Smuzhiyun * 18*4882a593Smuzhiyun * Initialize the memory console, passing the function to handle read accesses. 19*4882a593Smuzhiyun */ 20*4882a593Smuzhiyun void memconsole_setup(ssize_t (*read_func)(char *, loff_t, size_t)); 21*4882a593Smuzhiyun 22*4882a593Smuzhiyun /* 23*4882a593Smuzhiyun * memconsole_sysfs_init 24*4882a593Smuzhiyun * 25*4882a593Smuzhiyun * Update memory console length and create binary file 26*4882a593Smuzhiyun * for firmware object. 27*4882a593Smuzhiyun */ 28*4882a593Smuzhiyun int memconsole_sysfs_init(void); 29*4882a593Smuzhiyun 30*4882a593Smuzhiyun /* memconsole_exit 31*4882a593Smuzhiyun * 32*4882a593Smuzhiyun * Unmap the console buffer. 33*4882a593Smuzhiyun */ 34*4882a593Smuzhiyun void memconsole_exit(void); 35*4882a593Smuzhiyun 36*4882a593Smuzhiyun #endif /* __FIRMWARE_GOOGLE_MEMCONSOLE_H */ 37