[U-Boot] doc: add README for CONFIG_HWCONFIG option

Heiko Schocher hs at denx.de
Tue Feb 9 15:50:30 CET 2010


Signed-off-by: Heiko Schocher <hs at xpert.denx.de>
---
 doc/README.hwconfig |   51 +++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 51 insertions(+), 0 deletions(-)
 create mode 100644 doc/README.hwconfig

diff --git a/doc/README.hwconfig b/doc/README.hwconfig
new file mode 100644
index 0000000..dd5bdd8
--- /dev/null
+++ b/doc/README.hwconfig
@@ -0,0 +1,51 @@
+Enable this feature just define CONFIG_HWCONFIG in your board
+config file.
+
+This implements simple hwconfig infrastructure: an
+interface for software knobs to control a hardware.
+
+This is very simple implementation, i.e. it is implemented
+via `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 the
+   u-boot. But I didn't bother yet.
+
+2. Since we don't implement 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
+   an effect. So, for now it's advised to always reboot the
+   target after modifying hwconfig variable.
+
+3. We support hwconfig options with arguments. For example,
+
+   set hwconfig "dr_usb:mode=peripheral,phy_type=ulpi"
+
+   There are three hwconfig options selected:
+   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 define some
+internal API and then we can continue improving user experience
+by adding more mature interface, like hwconfig command with
+bells and whistles. Or not adding, if we feel that current
+interface fits its 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.
+
-- 
1.6.2.5

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany


More information about the U-Boot mailing list