/* | |
* SPDX-License-Identifier: GPL-2.0-or-later | |
* | |
* Goldfish TTY | |
* | |
* (c) 2020 Laurent Vivier <laurent@vivier.eu> | |
* | |
*/ | |
#ifndef HW_CHAR_GOLDFISH_TTY_H | |
#define HW_CHAR_GOLDFISH_TTY_H | |
#include "qemu/fifo8.h" | |
#include "chardev/char-fe.h" | |
#include "hw/sysbus.h" | |
#define TYPE_GOLDFISH_TTY "goldfish_tty" | |
OBJECT_DECLARE_SIMPLE_TYPE(GoldfishTTYState, GOLDFISH_TTY) | |
#define GOLFISH_TTY_BUFFER_SIZE 128 | |
struct GoldfishTTYState { | |
SysBusDevice parent_obj; | |
MemoryRegion iomem; | |
qemu_irq irq; | |
CharBackend chr; | |
uint32_t data_len; | |
uint64_t data_ptr; | |
bool int_enabled; | |
Fifo8 rx_fifo; | |
}; | |
#endif |