summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorTom Rini <[email protected]>2024-09-18 13:07:19 -0600
committerTom Rini <[email protected]>2024-09-18 13:07:19 -0600
commitc17805e19b9335e1fb5295c81b59eddf88d1b9ec (patch)
tree0e4cbc44f392b9f2e53d1e38e107ec630c0267c9 /include
parent650883a568653f37ee4ff43beda56152b594a49c (diff)
parent017b441b2e3c879b20bcac496369f1213c4bdbcd (diff)
Merge patch series "Fix various bugs"
Simon Glass <[email protected]> says: This series includes the patches needed to make make the EFI 'boot' test work. That test has now been split off into a separate series along with the EFI patches. This series fixes these problems: - sandbox memory-mapping conflict with PCI - the fix for that causes the mbr test to crash as it sets up pointers instead of addresses for its 'mmc' commands - the mmc and read commands which cast addresses to pointers - a tricky bug to do with USB keyboard and stdio - a few other minor things
Diffstat (limited to 'include')
-rw-r--r--include/console.h8
-rw-r--r--include/log.h2
-rw-r--r--include/usb.h20
3 files changed, 22 insertions, 8 deletions
diff --git a/include/console.h b/include/console.h
index 6b6d0f9de73..57fdb0834c1 100644
--- a/include/console.h
+++ b/include/console.h
@@ -179,6 +179,14 @@ void console_puts_select_stderr(bool serial_only, const char *s);
*/
int console_clear(void);
+/**
+ * console_remove_by_name() - Remove a console by its stdio name
+ *
+ * This must only be used in tests. It removes any use of the named stdio device
+ * from the console tables.
+ */
+int console_remove_by_name(const char *name);
+
/*
* CONSOLE multiplexing.
*/
diff --git a/include/log.h b/include/log.h
index 69dcb339543..7c25bf0b081 100644
--- a/include/log.h
+++ b/include/log.h
@@ -104,6 +104,8 @@ enum log_category_t {
LOGC_FS,
/** @LOGC_EXPO: Related to expo handling */
LOGC_EXPO,
+ /** @LOGC_CONSOLE: Related to the console and stdio */
+ LOGC_CONSOLE,
/** @LOGC_COUNT: Number of log categories */
LOGC_COUNT,
/** @LOGC_END: Sentinel value for lists of log categories */
diff --git a/include/usb.h b/include/usb.h
index fcbe2146f7d..be37ed272e1 100644
--- a/include/usb.h
+++ b/include/usb.h
@@ -250,20 +250,12 @@ int usb_host_eth_scan(int mode);
#endif
-#ifdef CONFIG_USB_KEYBOARD
-
/*
* USB Keyboard reports are 8 bytes in boot protocol.
* Appendix B of HID Device Class Definition 1.11
*/
#define USB_KBD_BOOT_REPORT_SIZE 8
-int drv_usb_kbd_init(void);
-int usb_kbd_deregister(int force);
-
-#endif
-/* routines */
-
/*
* usb_init() - initialize the USB Controllers
*
@@ -1100,4 +1092,16 @@ struct usb_generic_descriptor **usb_emul_find_descriptor(
*/
void usb_show_tree(void);
+/**
+ * usb_kbd_remove_for_test() - Remove any USB keyboard
+ *
+ * This can only be called from test_pre_run(). It removes the USB keyboard from
+ * the console system so that the USB device can be dropped
+ */
+#if CONFIG_IS_ENABLED(USB_KEYBOARD)
+int usb_kbd_remove_for_test(void);
+#else
+static inline int usb_kbd_remove_for_test(void) { return 0; }
+#endif
+
#endif /*_USB_H_ */