MOS Source Code
Loading...
Searching...
No Matches
serial_console.hpp
Go to the documentation of this file.
1// SPDX-License-Identifier: GPL-3.0-or-later
2
3#pragma once
4
7
8#include <ansi_colors.h>
9#include <stddef.h>
10
11class SerialConsole : public Console
12{
14
15 public:
16 template<size_t buf_size>
22
23 public:
24 void handle_irq();
25
26 public:
27 size_t do_write(const char *data, size_t size) override;
28
30
31 bool clear() override;
32};
33
34bool serial_console_irq_handler(u32 irq, void *data);
SerialConsole(const char *name, ConsoleCapFlags caps, Buffer< buf_size > *buffer, ISerialDevice *device, StandardColor fg, StandardColor bg)
bool set_color(StandardColor fg, StandardColor bg) override
ISerialDevice * device
bool clear() override
@ CONSOLE_CAP_COLOR
Definition console.hpp:17
@ CONSOLE_CAP_CLEAR
Definition console.hpp:18
StandardColor
Definition ansi_colors.h:18
#define do_write(fd, buffer, size)
Definition libipc.cpp:21
bool serial_console_irq_handler(u32 irq, void *data)
size_t size
Definition slab.cpp:32
Console(mos::string_view name, ConsoleCapFlags caps, Buffer< buf_size > *readBuf, StandardColor fg, StandardColor bg)
Definition console.hpp:40
StandardColor bg
Definition console.hpp:36
virtual mos::string name() const override
Definition console.cpp:143
StandardColor fg
Definition console.hpp:36
const ConsoleCapFlags caps
Definition console.hpp:75
static char buffer[2048]
unsigned int u32
Definition types.h:17