mirror of
https://github.com/u-boot/u-boot.git
synced 2024-11-24 04:34:22 +08:00
doc: add README for CONFIG_HWCONFIG option
Signed-off-by: Heiko Schocher <hs@denx.de>
This commit is contained in:
parent
7026ead0d3
commit
ab68f4dd19
50
doc/README.hwconfig
Normal file
50
doc/README.hwconfig
Normal file
@ -0,0 +1,50 @@
|
||||
To enable this feature just define CONFIG_HWCONFIG in your board
|
||||
config file.
|
||||
|
||||
This implements a simple hwconfig infrastructure: an
|
||||
interface for software knobs to control hardware.
|
||||
|
||||
This a is very simple implementation, i.e. it is implemented
|
||||
via the `hwconfig' environment variable. Later we could write
|
||||
some "hwconfig <enable|disable|list>" commands, ncurses
|
||||
interface for Award BIOS-like interface, and frame-buffer
|
||||
interface for AMI GUI[1] BIOS-like interface with mouse
|
||||
support[2].
|
||||
|
||||
Current implementation details/limitations:
|
||||
|
||||
1. Doesn't support options dependencies and mutual exclusion.
|
||||
We can implement this by integrating apt-get[3] into Das
|
||||
U-Boot. But I haven't bothered yet.
|
||||
|
||||
2. Since we don't implement a hwconfig command, i.e. we're working
|
||||
with the environement directly, there is no way to tell that
|
||||
toggling a particular option will need a reboot to take
|
||||
effect. So, for now it's advised to always reboot the
|
||||
target after modifying the hwconfig variable.
|
||||
|
||||
3. We support hwconfig options with arguments. For example,
|
||||
|
||||
set hwconfig "dr_usb:mode=peripheral,phy_type=ulpi"
|
||||
|
||||
This selects three hwconfig options:
|
||||
1. dr_usb - enable Dual-Role USB controller;
|
||||
2. dr_usb_mode:peripheral - USB in Function mode;
|
||||
3. dr_usb_phy_type:ulpi - USB should work with ULPI PHYs.
|
||||
|
||||
The purpose of this simple implementation is to refine the
|
||||
internal API and then we can continue improving the user
|
||||
experience by adding more mature interfaces, like a hwconfig
|
||||
command with bells and whistles. Or not adding, if we feel
|
||||
that the current interface fits people's needs.
|
||||
|
||||
[1] http://en.wikipedia.org/wiki/American_Megatrends
|
||||
[2] Regarding ncurses and GUI with mouse support -- I'm just
|
||||
kidding.
|
||||
[3] The comment regarding apt-get is also a joke, meaning that
|
||||
dependency tracking could be non-trivial. For example, for
|
||||
enabling HW feature X we may need to disable Y, and turn Z
|
||||
into reduced mode (like RMII-only interface for ethernet,
|
||||
no MII).
|
||||
|
||||
It's quite trivial to implement simple cases though.
|
Loading…
Reference in New Issue
Block a user