Convert CONFIG_SYS_STDIO_DEREGISTER to Kconfig
This converts the following to Kconfig:
CONFIG_SYS_STDIO_DEREGISTER
This option should never be enabled in SPL, so use
CONFIG_IS_ENABLED(SYS_STDIO_DEREGISTER) when checking the option.
Signed-off-by: Simon Glass <sjg@chromium.org>
[trini: Re-sync]
Signed-off-by: Tom Rini <trini@konsulko.com>
diff --git a/common/Kconfig b/common/Kconfig
index ff2b1a4..dbe5bb6 100644
--- a/common/Kconfig
+++ b/common/Kconfig
@@ -335,6 +335,15 @@
Enable this option to supress this output. It can be obtained by
calling stdio_print_current_devices() from board code.
+config SYS_STDIO_DEREGISTER
+ bool "Allow deregistering stdio devices"
+ default y if USB_KEYBOARD
+ help
+ Generally there is no need to deregister stdio devices since they
+ are never deactivated. But if a stdio device is used which can be
+ removed (for example a USB keyboard) then this option can be
+ enabled to ensure this is handled correctly.
+
endmenu
config SYS_NO_FLASH
diff --git a/common/stdio.c b/common/stdio.c
index ab9b05d..8e4a9be 100644
--- a/common/stdio.c
+++ b/common/stdio.c
@@ -37,7 +37,7 @@
#define CONFIG_SYS_DEVICE_NULLDEV 1
#endif
-#ifdef CONFIG_SYS_STDIO_DEREGISTER
+#if CONFIG_IS_ENABLED(SYS_STDIO_DEREGISTER)
#define CONFIG_SYS_DEVICE_NULLDEV 1
#endif
@@ -245,7 +245,7 @@
/* deregister the device "devname".
* returns 0 if success, -1 if device is assigned and 1 if devname not found
*/
-#ifdef CONFIG_SYS_STDIO_DEREGISTER
+#if CONFIG_IS_ENABLED(SYS_STDIO_DEREGISTER)
int stdio_deregister_dev(struct stdio_dev *dev, int force)
{
int l;
@@ -292,7 +292,7 @@
return stdio_deregister_dev(dev, force);
}
-#endif /* CONFIG_SYS_STDIO_DEREGISTER */
+#endif /* CONFIG_IS_ENABLED(SYS_STDIO_DEREGISTER) */
int stdio_init_tables(void)
{
diff --git a/common/usb_kbd.c b/common/usb_kbd.c
index a9872a6..5f9a64a 100644
--- a/common/usb_kbd.c
+++ b/common/usb_kbd.c
@@ -570,7 +570,7 @@
/* Deregister the keyboard. */
int usb_kbd_deregister(int force)
{
-#ifdef CONFIG_SYS_STDIO_DEREGISTER
+#if CONFIG_IS_ENABLED(SYS_STDIO_DEREGISTER)
struct stdio_dev *dev;
struct usb_device *usb_kbd_dev;
struct usb_kbd_pdata *data;