Browse Source

drivers: hierarchize drivers Kconfig menu

The menuconfig for drivers are getting more and more cluttered
and unreadable because too many entries are displayed in a single
flat menu.  Use hierarchic menu for each category.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
[trini: Update to apply again in a few places, drop USB hunk]
Signed-off-by: Tom Rini <trini@konsulko.com>
Masahiro Yamada 9 years ago
parent
commit
0b11dbf705

+ 4 - 0
drivers/core/Kconfig

@@ -1,3 +1,5 @@
+menu "Generic Driver Options"
+
 config DM
 config DM
 	bool "Enable Driver Model"
 	bool "Enable Driver Model"
 	help
 	help
@@ -102,3 +104,5 @@ config DEBUG_DEVRES
 	  debug resource management for a managed device.
 	  debug resource management for a managed device.
 
 
 	  If you are unsure about this, Say N here.
 	  If you are unsure about this, Say N here.
+
+endmenu

+ 4 - 0
drivers/crypto/Kconfig

@@ -1 +1,5 @@
+menu "Hardware crypto devices"
+
 source drivers/crypto/fsl/Kconfig
 source drivers/crypto/fsl/Kconfig
+
+endmenu

+ 4 - 0
drivers/demo/Kconfig

@@ -1,3 +1,5 @@
+menu "Demo for driver model"
+
 config DM_DEMO
 config DM_DEMO
 	bool "Enable demo uclass support"
 	bool "Enable demo uclass support"
 	depends on DM
 	depends on DM
@@ -24,3 +26,5 @@ config DM_DEMO_SHAPE
 	  a shape when the 'demo hello' command is executed which targets
 	  a shape when the 'demo hello' command is executed which targets
 	  this device. It can be used to help understand how driver model
 	  this device. It can be used to help understand how driver model
 	  works.
 	  works.
+
+endmenu

+ 8 - 0
drivers/gpio/Kconfig

@@ -1,3 +1,9 @@
+#
+# GPIO infrastructure and drivers
+#
+
+menu "GPIO Support"
+
 config DM_GPIO
 config DM_GPIO
 	bool "Enable Driver Model for GPIO drivers"
 	bool "Enable Driver Model for GPIO drivers"
 	depends on DM
 	depends on DM
@@ -42,3 +48,5 @@ config VYBRID_GPIO
 	default n
 	default n
 	help
 	help
 	  Say yes here to support Vybrid vf610 GPIOs.
 	  Say yes here to support Vybrid vf610 GPIOs.
+
+endmenu

+ 8 - 0
drivers/i2c/Kconfig

@@ -1,3 +1,9 @@
+#
+# I2C subsystem configuration
+#
+
+menu "I2C support"
+
 config DM_I2C
 config DM_I2C
 	bool "Enable Driver Model for I2C drivers"
 	bool "Enable Driver Model for I2C drivers"
 	depends on DM
 	depends on DM
@@ -99,3 +105,5 @@ config SYS_I2C_UNIPHIER_F
 	  This I2C controller is used on PH1-Pro4 or newer UniPhier SoCs.
 	  This I2C controller is used on PH1-Pro4 or newer UniPhier SoCs.
 
 
 source "drivers/i2c/muxes/Kconfig"
 source "drivers/i2c/muxes/Kconfig"
+
+endmenu

+ 4 - 0
drivers/led/Kconfig

@@ -1,3 +1,5 @@
+menu "LED Support"
+
 config LED
 config LED
 	bool "Enable LED support"
 	bool "Enable LED support"
 	depends on DM
 	depends on DM
@@ -24,3 +26,5 @@ config LED_GPIO
 	  GPIOs may be on the SoC or some other device which provides GPIOs.
 	  GPIOs may be on the SoC or some other device which provides GPIOs.
 	  The GPIO driver must used driver model. LEDs are configured using
 	  The GPIO driver must used driver model. LEDs are configured using
 	  the device tree.
 	  the device tree.
+
+endmenu

+ 8 - 0
drivers/misc/Kconfig

@@ -1,3 +1,9 @@
+#
+# Multifunction miscellaneous devices
+#
+
+menu "Multifunction device drivers"
+
 config CMD_CROS_EC
 config CMD_CROS_EC
 	bool "Enable crosec command"
 	bool "Enable crosec command"
 	depends on CROS_EC
 	depends on CROS_EC
@@ -82,3 +88,5 @@ config RESET
 	  Each driver can provide a reset method which will be called to
 	  Each driver can provide a reset method which will be called to
 	  effect a reset. The uclass will try all available drivers when
 	  effect a reset. The uclass will try all available drivers when
 	  reset_walk() is called.
 	  reset_walk() is called.
+
+endmenu

+ 8 - 0
drivers/rtc/Kconfig

@@ -1,3 +1,9 @@
+#
+# RTC drivers configuration
+#
+
+menu "Real Time Clock"
+
 config DM_RTC
 config DM_RTC
 	bool "Enable Driver Model for RTC drivers"
 	bool "Enable Driver Model for RTC drivers"
 	depends on DM
 	depends on DM
@@ -6,3 +12,5 @@ config DM_RTC
 	  then provides the rtc_get()/rtc_set() interface, delegating to
 	  then provides the rtc_get()/rtc_set() interface, delegating to
 	  drivers to perform the actual functions. See rtc.h for a
 	  drivers to perform the actual functions. See rtc.h for a
 	  description of the API.
 	  description of the API.
+
+endmenu

+ 8 - 0
drivers/serial/Kconfig

@@ -1,3 +1,9 @@
+#
+# Serial device configuration
+#
+
+menu "Serial drivers"
+
 config REQUIRE_SERIAL_CONSOLE
 config REQUIRE_SERIAL_CONSOLE
 	bool "Require a serial port for console"
 	bool "Require a serial port for console"
 	# Running without a serial console is not supported by the
 	# Running without a serial console is not supported by the
@@ -139,3 +145,5 @@ config X86_SERIAL
 	  enabled in the device tree with the correct input clock frequency
 	  enabled in the device tree with the correct input clock frequency
 	  provided (default 1843200). Enable this to obtain serial console
 	  provided (default 1843200). Enable this to obtain serial console
 	  output.
 	  output.
+
+endmenu

+ 4 - 0
drivers/sound/Kconfig

@@ -1,3 +1,5 @@
+menu "Sound support"
+
 config SOUND
 config SOUND
 	bool "Enable sound support"
 	bool "Enable sound support"
 	help
 	help
@@ -53,3 +55,5 @@ config SOUND_WM8994
 	  Enable the wm8994 audio codec. This is connected via I2S for
 	  Enable the wm8994 audio codec. This is connected via I2S for
 	  audio data and I2C for codec control. At present it only works
 	  audio data and I2C for codec control. At present it only works
 	  with the Samsung I2S driver.
 	  with the Samsung I2S driver.
+
+endmenu

+ 8 - 0
drivers/video/Kconfig

@@ -1,3 +1,9 @@
+#
+# Video configuration
+#
+
+menu "Graphics support"
+
 config VIDEO_VESA
 config VIDEO_VESA
 	bool "Enable VESA video driver support"
 	bool "Enable VESA video driver support"
 	default n
 	default n
@@ -242,3 +248,5 @@ config VIDEO_TEGRA124
 	   have an eDP display connected.
 	   have an eDP display connected.
 
 
 source "drivers/video/bridge/Kconfig"
 source "drivers/video/bridge/Kconfig"
+
+endmenu