| /* SPDX-License-Identifier: GPL-2.0+ */ | |
| /* | |
| * Copyright 2020 Google LLC | |
| * Written by Simon Glass <sjg@chromium.org> | |
| */ | |
| #ifndef __asm_serial_h | |
| #define __asm_serial_h | |
| #include <dt-structs.h> | |
| struct sandbox_serial_plat { | |
| #if CONFIG_IS_ENABLED(OF_PLATDATA) | |
| struct dtd_sandbox_serial dtplat; | |
| #endif | |
| int colour; /* Text colour to use for output, -1 for none */ | |
| }; | |
| /** | |
| * sandbox_serial_written() - Get the total number of characters written | |
| * | |
| * This returns the number of characters written by the sandbox serial | |
| * device. It is intended for performing tests of the serial subsystem | |
| * where a console buffer cannot be used. The absolute number should not be | |
| * relied upon; call this function twice and compare the difference. | |
| * | |
| * Return: The number of characters written | |
| */ | |
| size_t sandbox_serial_written(void); | |
| /** | |
| * sandbox_serial_endisable() - Enable or disable serial output | |
| * @enabled: Whether serial output should be enabled or not | |
| * | |
| * This allows tests to enable or disable the sandbox serial output. All | |
| * processes relating to writing output (except the actual writing) will be | |
| * performed. | |
| */ | |
| void sandbox_serial_endisable(bool enabled); | |
| /** | |
| * struct sandbox_serial_priv - Private data for this driver | |
| * | |
| * @buf: holds input characters available to be read by this driver | |
| */ | |
| struct sandbox_serial_priv { | |
| struct membuff buf; | |
| char serial_buf[16]; | |
| bool start_of_line; | |
| }; | |
| #endif /* __asm_serial_h */ |