| /* SPDX-License-Identifier: GPL-2.0+ */ | |
| /* | |
| * (C) Copyright 2008 | |
| * Gary Jennejohn, DENX Software Engineering GmbH, garyj@denx.de. | |
| */ | |
| #ifndef _IO_MUX_H | |
| #define _IO_MUX_H | |
| #include <stdio_dev.h> | |
| /* | |
| * Stuff required to support console multiplexing. | |
| */ | |
| /* | |
| * Pointers to devices used for each file type. Defined in console.c | |
| * but storage is allocated in iomux.c. | |
| */ | |
| extern struct stdio_dev **console_devices[MAX_FILES]; | |
| /* | |
| * The count of devices assigned to each FILE. Defined in console.c | |
| * and populated in iomux.c. | |
| */ | |
| extern int cd_count[MAX_FILES]; | |
| #define for_each_console_dev(i, file, dev) \ | |
| for (i = 0; \ | |
| i < cd_count[file] && (dev = console_devices[file][i]); \ | |
| i++) | |
| int iomux_match_device(struct stdio_dev **, const int, struct stdio_dev *); | |
| int iomux_doenv(const int, const char *); | |
| int iomux_replace_device(const int, const char *, const char *); | |
| void iomux_printdevs(const int); | |
| #endif /* _IO_MUX_H */ |