124b852a7SSimon Glass /* 224b852a7SSimon Glass * (C) Copyright 2000-2009 324b852a7SSimon Glass * Wolfgang Denk, DENX Software Engineering, wd@denx.de. 424b852a7SSimon Glass * 524b852a7SSimon Glass * SPDX-License-Identifier: GPL-2.0+ 624b852a7SSimon Glass */ 724b852a7SSimon Glass 824b852a7SSimon Glass #ifndef __CONSOLE_H 924b852a7SSimon Glass #define __CONSOLE_H 1024b852a7SSimon Glass 1124b852a7SSimon Glass extern char console_buffer[]; 1224b852a7SSimon Glass 1324b852a7SSimon Glass /* common/console.c */ 1424b852a7SSimon Glass int console_init_f(void); /* Before relocation; uses the serial stuff */ 1524b852a7SSimon Glass int console_init_r(void); /* After relocation; uses the console stuff */ 1624b852a7SSimon Glass int console_assign(int file, const char *devname); /* Assign the console */ 1724b852a7SSimon Glass int ctrlc(void); 1824b852a7SSimon Glass int had_ctrlc(void); /* have we had a Control-C since last clear? */ 1924b852a7SSimon Glass void clear_ctrlc(void); /* clear the Control-C condition */ 2024b852a7SSimon Glass int disable_ctrlc(int); /* 1 to disable, 0 to enable Control-C detect */ 2124b852a7SSimon Glass int confirm_yesno(void); /* 1 if input is "y", "Y", "yes" or "YES" */ 2224b852a7SSimon Glass 239854a874SSimon Glass /** 249854a874SSimon Glass * console_record_init() - set up the console recording buffers 259854a874SSimon Glass * 269854a874SSimon Glass * This should be called as soon as malloc() is available so that the maximum 279854a874SSimon Glass * amount of console output can be recorded. 289854a874SSimon Glass */ 299854a874SSimon Glass int console_record_init(void); 309854a874SSimon Glass 319854a874SSimon Glass /** 329854a874SSimon Glass * console_record_reset() - reset the console recording buffers 339854a874SSimon Glass * 349854a874SSimon Glass * Removes any data in the buffers 359854a874SSimon Glass */ 369854a874SSimon Glass void console_record_reset(void); 379854a874SSimon Glass 389854a874SSimon Glass /** 399854a874SSimon Glass * console_record_reset_enable() - reset and enable the console buffers 409854a874SSimon Glass * 419854a874SSimon Glass * This should be called to enable the console buffer. 429854a874SSimon Glass */ 439854a874SSimon Glass void console_record_reset_enable(void); 449854a874SSimon Glass 45b0895384SSimon Glass /** 46*5bb5aa82SJoseph Chen * console_record_print_purge() - print record data and remove data from buffers 47*5bb5aa82SJoseph Chen */ 48*5bb5aa82SJoseph Chen void console_record_print_purge(void); 49*5bb5aa82SJoseph Chen 50*5bb5aa82SJoseph Chen /** 51b0895384SSimon Glass * console_announce_r() - print a U-Boot console on non-serial consoles 52b0895384SSimon Glass * 53b0895384SSimon Glass * When U-Boot starts up with a display it generally does not announce itself 54b0895384SSimon Glass * on the display. The banner is instead emitted on the UART before relocation. 55b0895384SSimon Glass * This function prints a banner on devices which (we assume) did not receive 56b0895384SSimon Glass * it before relocation. 57b0895384SSimon Glass * 58b0895384SSimon Glass * @return 0 (meaning no errors) 59b0895384SSimon Glass */ 60b0895384SSimon Glass int console_announce_r(void); 61b0895384SSimon Glass 6224b852a7SSimon Glass /* 6324b852a7SSimon Glass * CONSOLE multiplexing. 6424b852a7SSimon Glass */ 6524b852a7SSimon Glass #ifdef CONFIG_CONSOLE_MUX 6624b852a7SSimon Glass #include <iomux.h> 6724b852a7SSimon Glass #endif 6824b852a7SSimon Glass 6924b852a7SSimon Glass #endif 70