proxy: add fb console console ops

Signed-off-by: Sven Peter <sven@svenpeter.dev>
This commit is contained in:
Sven Peter 2021-03-15 00:39:54 +01:00 committed by Hector Martin
parent 5d4067642e
commit de0456b9a5
3 changed files with 26 additions and 0 deletions

View file

@ -359,6 +359,10 @@ class M1N1Proxy:
P_PMGR_ADT_CLOCKS_ENABLE = 0x802
P_PMGR_ADT_CLOCKS_DISABLE = 0x803
P_FB_CONSOLE_DISABLE = 0x900
P_FB_CONSOLE_ENABLE = 0x901
P_FB_SCROLL = 0x902
P_TUNABLES_APPLY_GLOBAL = 0xa00
P_TUNABLES_APPLY_LOCAL = 0xa01
@ -628,6 +632,13 @@ class M1N1Proxy:
def tunables_apply_local_addr(self, path, prop, base):
return self.request(self.P_TUNABLES_APPLY_LOCAL, path, prop, base)
def fb_console_disable(self):
self.request(self.P_FB_CONSOLE_DISABLE)
def fb_console_enable(self):
self.request(self.P_FB_CONSOLE_ENABLE)
def fb_console_scroll(self, n):
self.request(self.P_FB_SCROLL, n)
if __name__ == "__main__":
import serial
uartdev = os.environ.get("M1N1DEVICE", "/dev/ttyUSB0")

View file

@ -2,6 +2,7 @@
#include "proxy.h"
#include "exception.h"
#include "fb.h"
#include "heapblock.h"
#include "kboot.h"
#include "malloc.h"
@ -337,6 +338,16 @@ int proxy_process(ProxyRequest *request, ProxyReply *reply)
(const char *)request->args[0], (const char *)request->args[1], request->args[2]);
break;
case P_FB_CONSOLE_DISABLE:
fb_console_disable();
break;
case P_FB_CONSOLE_ENABLE:
fb_console_enable();
break;
case P_FB_SCROLL:
fb_console_scroll(request->args[0]);
break;
default:
reply->status = S_BADCMD;
break;

View file

@ -87,6 +87,10 @@ typedef enum {
P_PMGR_ADT_CLOCKS_ENABLE,
P_PMGR_ADT_CLOCKS_DISABLE,
P_FB_CONSOLE_DISABLE = 0x900, // framebuffer console ops
P_FB_CONSOLE_ENABLE,
P_FB_SCROLL,
P_TUNABLES_APPLY_GLOBAL = 0xa00,
P_TUNABLES_APPLY_LOCAL,
P_TUNABLES_APPLY_LOCAL_ADDR,