blob: cea29ed6dc4ef0b26b9f7b53e5f6e53f90c04d23 [file] [log] [blame]
Simon Glass24b852a2015-11-08 23:47:45 -07001/*
2 * (C) Copyright 2000-2009
3 * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
4 *
5 * SPDX-License-Identifier: GPL-2.0+
6 */
7
8#ifndef __CONSOLE_H
9#define __CONSOLE_H
10
11extern char console_buffer[];
12
13/* common/console.c */
14int console_init_f(void); /* Before relocation; uses the serial stuff */
15int console_init_r(void); /* After relocation; uses the console stuff */
16int console_assign(int file, const char *devname); /* Assign the console */
17int ctrlc(void);
18int had_ctrlc(void); /* have we had a Control-C since last clear? */
19void clear_ctrlc(void); /* clear the Control-C condition */
20int disable_ctrlc(int); /* 1 to disable, 0 to enable Control-C detect */
21int confirm_yesno(void); /* 1 if input is "y", "Y", "yes" or "YES" */
22
Simon Glass9854a872015-11-08 23:47:48 -070023/**
24 * console_record_init() - set up the console recording buffers
25 *
26 * This should be called as soon as malloc() is available so that the maximum
27 * amount of console output can be recorded.
28 */
29int console_record_init(void);
30
31/**
32 * console_record_reset() - reset the console recording buffers
33 *
34 * Removes any data in the buffers
35 */
36void console_record_reset(void);
37
38/**
39 * console_record_reset_enable() - reset and enable the console buffers
40 *
41 * This should be called to enable the console buffer.
42 */
43void console_record_reset_enable(void);
44
Simon Glassb0895382017-06-15 21:37:50 -060045/**
46 * console_announce_r() - print a U-Boot console on non-serial consoles
47 *
48 * When U-Boot starts up with a display it generally does not announce itself
49 * on the display. The banner is instead emitted on the UART before relocation.
50 * This function prints a banner on devices which (we assume) did not receive
51 * it before relocation.
52 *
53 * @return 0 (meaning no errors)
54 */
55int console_announce_r(void);
56
Simon Glass24b852a2015-11-08 23:47:45 -070057/*
58 * CONSOLE multiplexing.
59 */
60#ifdef CONFIG_CONSOLE_MUX
61#include <iomux.h>
62#endif
63
64#endif