xref: /OK3568_Linux_fs/kernel/drivers/firmware/google/memconsole.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
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