mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [RFC] USB Kconfig: Declutter USB Kconfig Menu
@ 2007-12-21 13:30 Al Boldi
  2007-12-21 21:16 ` Jan Engelhardt
  0 siblings, 1 reply; 8+ messages in thread
From: Al Boldi @ 2007-12-21 13:30 UTC (permalink / raw)
  To: linux-kernel; +Cc: linux-usb, Greg KH


The current USB Kconfig menu is rather cluttered and unorganized.

Propose new layout as follows:

  lqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq USB support qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqk
  x  Arrow keys navigate the menu.  <Enter> selects submenus --->.  Highlighted letters  x  
  x  are hotkeys.  Pressing <Y> includes, <N> excludes, <M> modularizes features.  Press x  
  x  <Esc><Esc> to exit, <?> for Help, </> for Search.  Legend: [*] built-in  [ ]        x  
  x  excluded  <M> module  < > module capable                                            x  
  x lqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqk x  
  x x      --- USB support                                                             x x   
  x x      <*>   Support for Host-side USB  --->                                       x x   
  x x            USB Host Controller Drivers  --->                                     x x   
  x x            USB Device Class drivers  --->                                        x x   
  x x      ---   NOTE: USB_STORAGE needs SCSI, and 'SCSI disk support' may             x x   
  x x      ---   also be needed; see USB_STORAGE Help for more information             x x   
  x x      <*>   USB Mass Storage support  --->                                        x x   
  x x      [ ]   The shared table of common (or usual) storage devices                 x x   
  x x      [ ]   USB Monitor                                                           x x   
  x x            USB Serial Converter support  --->                                    x x   
  x x            USB DSL modem support  --->                                           x x   
  x x            USB Imaging devices  --->                                             x x   
  x x            USB Miscellaneous drivers  --->                                       x x   
  x x            USB Gadget Support  --->                                              x x   
  x x                                                                                  x x   
  x x                                                                                  x x   
  x x                                                                                  x x   
  x x                                                                                  x x   
  x x                                                                                  x x   
  x x                                                                                  x x   
  x x                                                                                  x x   
  x x                                                                                  x x   
  x mqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqj x  
  tqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqu  
  x                           <Select>    < Exit >    < Help >                           x  
  mqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqj  


Any comments appreciated.


Thanks!

--
Al
 

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [RFC] USB Kconfig: Declutter USB Kconfig Menu
  2007-12-21 13:30 [RFC] USB Kconfig: Declutter USB Kconfig Menu Al Boldi
@ 2007-12-21 21:16 ` Jan Engelhardt
  2007-12-21 23:58   ` David Brownell
  0 siblings, 1 reply; 8+ messages in thread
From: Jan Engelhardt @ 2007-12-21 21:16 UTC (permalink / raw)
  To: Al Boldi; +Cc: linux-kernel, linux-usb, Greg KH


On Dec 21 2007 16:30, Al Boldi wrote:
>
>The current USB Kconfig menu is rather cluttered and unorganized.
>
>Propose new layout as follows:
>

Yes, this has been done before in a lot of places, and attempts to
clean up more menus is always welcome.

Try to use 'menuconfig' objects so people can disable a whole menu
at once without having to enter it, e.g. that USB Gadget thing down
there.

(You are free to post UTF-8.)

>  ┌──────────────────────────────────── USB support ─────────────────────────────────────┐
>  │  Arrow keys navigate the menu.  <Enter> selects submenus --->.  Highlighted letters  │  
>  │  are hotkeys.  Pressing <Y> includes, <N> excludes, <M> modularizes features.  Press │  
>  │  <Esc><Esc> to exit, <?> for Help, </> for Search.  Legend: [*] built-in  [ ]        │  
>  │  excluded  <M> module  < > module capable                                            │  
>  │ ┌──────────────────────────────────────────────────────────────────────────────────┐ │  
>  │ │      --- USB support                                                             │ │   
>  │ │      <*>   Support for Host-side USB  --->                                       │ │   
>  │ │            USB Host Controller Drivers  --->                                     │ │   
>  │ │            USB Device Class drivers  --->                                        │ │   
>  │ │      ---   NOTE: USB_STORAGE needs SCSI, and 'SCSI disk support' may             │ │   
>  │ │      ---   also be needed; see USB_STORAGE Help for more information             │ │   
>  │ │      <*>   USB Mass Storage support  --->                                        │ │   
>  │ │      [ ]   The shared table of common (or usual) storage devices                 │ │   
>  │ │      [ ]   USB Monitor                                                           │ │   
>  │ │            USB Serial Converter support  --->                                    │ │   
>  │ │            USB DSL modem support  --->                                           │ │   
>  │ │            USB Imaging devices  --->                                             │ │   
>  │ │            USB Miscellaneous drivers  --->                                       │ │   
>  │ │            USB Gadget Support  --->                                              │ │   
>  │ │                                                                                  │ │   
>  │ │                                                                                  │ │   
>  │ │                                                                                  │ │   
>  │ │                                                                                  │ │   
>  │ │                                                                                  │ │   
>  │ │                                                                                  │ │   
>  │ │                                                                                  │ │   
>  │ │                                                                                  │ │   
>  │ └──────────────────────────────────────────────────────────────────────────────────┘ │  
>  ├──────────────────────────────────────────────────────────────────────────────────────┤  
>  │                           <Select>    < Exit >    < Help >                           │  
>  └──────────────────────────────────────────────────────────────────────────────────────┘  
>
>
>Any comments appreciated.
>
>
>Thanks!
>
>--
>Al
> 
>--
>To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
>the body of a message to majordomo@vger.kernel.org
>More majordomo info at  http://vger.kernel.org/majordomo-info.html
>Please read the FAQ at  http://www.tux.org/lkml/
>


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [RFC] USB Kconfig: Declutter USB Kconfig Menu
  2007-12-21 21:16 ` Jan Engelhardt
@ 2007-12-21 23:58   ` David Brownell
       [not found]     ` <200712220806.24730.a1426z@gawab.com>
  0 siblings, 1 reply; 8+ messages in thread
From: David Brownell @ 2007-12-21 23:58 UTC (permalink / raw)
  To: jengelh, a1426z; +Cc: linux-usb, linux-kernel, greg

> >Propose new layout as follows:
>
> Yes, this has been done before in a lot of places, and attempts to
> clean up more menus is always welcome.
>
> Try to use 'menuconfig' objects so people can disable a whole menu
> at once without having to enter it, e.g. that USB Gadget thing down
> there.

Notice that this whole menu is for "Host-side USB", except for that
gadget stuff.  That might usefully be labeled as "Peripheral-side USB".

For that matter, it could be moved up a level in the menu, so the top
level driver menu has two USB entries:  Host side, and Peripheral side.

The driver stacks are independent of each other, except for common data
structures like what's in the <linux/usb/ch9.h> header file.  I think
there's no real point, other than history, to having both sides share
the same menu.

- Dave


> > ┌─────────────────────────────────────────────────────────────────┐
> > │ --- USB support                                                 │
> > │ <*>   Support for Host-side USB  --->                           │
> > │       USB Host Controller Drivers  --->                         │
> > │       USB Device Class drivers  --->                            │
> > │ ---   NOTE: USB_STORAGE needs SCSI, and 'SCSI disk support' may │
> > │ ---   also be needed; see USB_STORAGE Help for more information │
> > │ <*>   USB Mass Storage support  --->                            │
> > │ [ ]   The shared table of common (or usual) storage devices     │
> > │ [ ]   USB Monitor                                               │
> > │       USB Serial Converter support  --->                        │
> > │       USB DSL modem support  --->                               │
> > │       USB Imaging devices  --->                                 │
> > │       USB Miscellaneous drivers  --->                           │
> > │       USB Gadget Support  --->                                  │
> > │                                                                 │

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [RFC] USB Kconfig: Declutter USB Kconfig Menu
       [not found]     ` <200712220806.24730.a1426z@gawab.com>
@ 2007-12-22  6:19       ` David Brownell
  2007-12-22  6:51         ` Al Boldi
  0 siblings, 1 reply; 8+ messages in thread
From: David Brownell @ 2007-12-22  6:19 UTC (permalink / raw)
  To: jengelh, a1426z; +Cc: linux-usb, linux-kernel, greg

> > Notice that this whole menu is for "Host-side USB", except for that
> > gadget stuff.  That might usefully be labeled as "Peripheral-side USB".
> >
> > For that matter, it could be moved up a level in the menu, so the top
> > level driver menu has two USB entries:  Host side, and Peripheral side.
>
> Actually, when you disable Host-side USB support, the menu looks like this:
>
> ┌───────────???──────────────────???──────────────────???───────────────┐
> │ --- USB support                                                 │
> │ < >   Support for Host-side USB  --->                           │
> │       USB Gadget Support  --->                                  │
> │                                                                 │

Right, that's what I said.   It makes the gadget stuff needlessly hard
to find, as well as being less clear about what a "gadget" is than it
really should be.


> I think renaming 'USB Gadget Support' to 'Support for Peripheral-side USB' is 
> probably a good idea.

Only for displaying in its topmost menu...


> > The driver stacks are independent of each other, except for common data
> > structures like what's in the <linux/usb/ch9.h> header file.  I think
> > there's no real point, other than history, to having both sides share
> > the same menu.
>
> They aren't.

How can you say that, when you showed (right above!!) that they are???
Sure, there are submenus too.  But they're clearly in the same menu.


>	USB Gadget Support is in its own sub-menu.  And strictly 
> speaking, Host-side USB should be too, but some people may feel that this 
> would be nesting it too deep, and so it unfolds in the same menu.

Which is why my suggestion was to have them both move up a level, with
host and peripheral side menus nested normally:

	Device Drivers:
		...
		[ ] HID devices
		< > Host side USB
		< > Peripheral side USB
		< > MMC/SD/SDIO card support
		[ ] LED support
		...

That way both host and peripheral side support would have their own
menu, and that pointless nesting would be reduced.

- Dave


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [RFC] USB Kconfig: Declutter USB Kconfig Menu
  2007-12-22  6:19       ` David Brownell
@ 2007-12-22  6:51         ` Al Boldi
  2007-12-22  7:22           ` David Brownell
  0 siblings, 1 reply; 8+ messages in thread
From: Al Boldi @ 2007-12-22  6:51 UTC (permalink / raw)
  To: David Brownell, jengelh; +Cc: linux-usb, linux-kernel, greg

David Brownell wrote:
> > > The driver stacks are independent of each other, except for common
> > > data structures like what's in the <linux/usb/ch9.h> header file.  I
> > > think there's no real point, other than history, to having both sides
> > > share the same menu.
> >
> > They aren't.
>
> How can you say that, when you showed (right above!!) that they are???
> Sure, there are submenus too.  But they're clearly in the same menu.

Well, in that case even if you moved them to the upper level, then they would 
still be in the same menu, if that's what you mean.

> >	USB Gadget Support is in its own sub-menu.  And strictly
> > speaking, Host-side USB should be too, but some people may feel that
> > this would be nesting it too deep, and so it unfolds in the same menu.
>
> Which is why my suggestion was to have them both move up a level, with
> host and peripheral side menus nested normally:
>
> 	Device Drivers:
> 		...
> 		[ ] HID devices
> 		< > Host side USB
> 		< > Peripheral side USB
> 		< > MMC/SD/SDIO card support
> 		[ ] LED support
> 		...
>
> That way both host and peripheral side support would have their own
> menu, and that pointless nesting would be reduced.

You mean:
 		[ ] Host side USB
 		[ ] Peripheral side USB

Right?

All this does is loose the USB menu, which was used to group them and to 
un-clutter the Device Drivers menu.  Note:  They would still be sharing the 
same menu, only this time it's the Device Drivers menu.

I guess it's a judgment call.  Let's see what others think.


Thanks!

--
Al


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [RFC] USB Kconfig: Declutter USB Kconfig Menu
  2007-12-22  6:51         ` Al Boldi
@ 2007-12-22  7:22           ` David Brownell
  2007-12-22 13:49             ` Al Boldi
  0 siblings, 1 reply; 8+ messages in thread
From: David Brownell @ 2007-12-22  7:22 UTC (permalink / raw)
  To: jengelh, a1426z; +Cc: linux-usb, linux-kernel, greg

> > Which is why my suggestion was to have them both move up a level, with
> > host and peripheral side menus nested normally:
> >
> > 	Device Drivers:
> > 		...
> > 		[ ] HID devices
> > 		< > Host side USB
> > 		< > Peripheral side USB
> > 		< > MMC/SD/SDIO card support
> > 		[ ] LED support
> > 		...
> >
> > That way both host and peripheral side support would have their own
> > menu, and that pointless nesting would be reduced.
>
> You mean:
>  		[ ] Host side USB
>  		[ ] Peripheral side USB
>
> Right?

Both of those subsystems are already set up with the main choice
as tristate "< >/<M>/<*>".  If we're simplifying the navigation,
I can't see a point to requiring *two* menu actions not one.

- Dave


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [RFC] USB Kconfig: Declutter USB Kconfig Menu
  2007-12-22  7:22           ` David Brownell
@ 2007-12-22 13:49             ` Al Boldi
  2007-12-23  6:07               ` David Brownell
  0 siblings, 1 reply; 8+ messages in thread
From: Al Boldi @ 2007-12-22 13:49 UTC (permalink / raw)
  To: David Brownell, jengelh; +Cc: linux-usb, linux-kernel, greg

David Brownell wrote:
> > > Which is why my suggestion was to have them both move up a level, with
> > > host and peripheral side menus nested normally:
> > >
> > > 	Device Drivers:
> > > 		...
> > > 		[ ] HID devices
> > > 		< > Host side USB
> > > 		< > Peripheral side USB
> > > 		< > MMC/SD/SDIO card support
> > > 		[ ] LED support
> > > 		...
> > >
> > > That way both host and peripheral side support would have their own
> > > menu, and that pointless nesting would be reduced.
> >
> > You mean:
> >  		[ ] Host side USB
> >  		[ ] Peripheral side USB
> >
> > Right?
>
> Both of those subsystems are already set up with the main choice
> as tristate "< >/<M>/<*>".  If we're simplifying the navigation,
> I can't see a point to requiring *two* menu actions not one.

There is a point, but it's a weak one: you want it to unfold in the same menu 
as you select the option.  So, if you unfold the sub-options in a separate 
sub-menu, you better use [ ] (or just blank), as this will allow you to 
enter the sub-menu, and see the unfold take place inside the same menu.

IMHO, I prefer < >, but newbies probably prefer [ ], as it is less abstract.

Provided there is agreement, and we go with < >, it would mean a slight 
change to Host side USB, like this (note new USB Core Config sub-menu):

      --- Support for Host-side USB                                      
      [ ]   USB Core Config  --->                                       
      [ ]   USB Host Controller Drivers  --->                        
      ---   NOTE: USB_STORAGE needs SCSI, and 'SCSI disk support' may
      ---   also be needed; see USB_STORAGE Help for more information
      < >   USB Mass Storage support  --->                          
      [ ]   The shared table of common (or usual) storage devices    
      [ ]   USB Monitor                                               
      < >   USS720 parport driver                               
      < >   USB Serial Converter support  --->                        
      < >   USB DSL modem support  --->                                
      [ ]   USB Device Class drivers  --->                            
      [ ]   USB Imaging devices  --->                                 
      [ ]   USB Miscellaneous drivers  --->                                         


Thanks!

--
Al


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [RFC] USB Kconfig: Declutter USB Kconfig Menu
  2007-12-22 13:49             ` Al Boldi
@ 2007-12-23  6:07               ` David Brownell
  0 siblings, 0 replies; 8+ messages in thread
From: David Brownell @ 2007-12-23  6:07 UTC (permalink / raw)
  To: Al Boldi; +Cc: jengelh, linux-usb, linux-kernel, greg

On Saturday 22 December 2007, Al Boldi wrote:
> Provided there is agreement, and we go with < >, it would mean a slight 
> change to Host side USB, like this (note new USB Core Config sub-menu):
> 
>       --- Support for Host-side USB
>       [ ]   USB Core Config  --->

Maybe.  Let's see what you turn up.

>       [ ]   USB Host Controller Drivers  --->

Having at least one HCD is *NOT* optional.  ;)

And for that matter, I sometimes look at HCDs as part of the core.
The layering there is fuzzier than usual, though it's getting better
now that we've started to phase out the old Linux 2.2-ish interface.


>       ---   NOTE: USB_STORAGE needs SCSI, and 'SCSI disk support' may
>       ---   also be needed; see USB_STORAGE Help for more information
>       < >   USB Mass Storage support  --->
>       [ ]   The shared table of common (or usual) storage devices
>       [ ]   USB Monitor
>       < >   USS720 parport driver
>       < >   USB Serial Converter support  --->
>       < >   USB DSL modem support  --->
>       [ ]   USB Device Class drivers  --->
>       [ ]   USB Imaging devices  --->
>       [ ]   USB Miscellaneous drivers  --->
> 



^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2007-12-23  6:07 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-12-21 13:30 [RFC] USB Kconfig: Declutter USB Kconfig Menu Al Boldi
2007-12-21 21:16 ` Jan Engelhardt
2007-12-21 23:58   ` David Brownell
     [not found]     ` <200712220806.24730.a1426z@gawab.com>
2007-12-22  6:19       ` David Brownell
2007-12-22  6:51         ` Al Boldi
2007-12-22  7:22           ` David Brownell
2007-12-22 13:49             ` Al Boldi
2007-12-23  6:07               ` David Brownell

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®