About AutoKernConf
AutoKernConf is an attempt to help user to find an optimal configuration of Linux kernels. It can help you to find what configuration option (and what driver) you need for your hardware.
Nowaday it is not easy to have such information, either because kernel drivers tend to have the name of the first (and now obsolete) supported device of a class, and the vendors sell cloned devices, without telling the user what chips (and compatibility) are build in the pieces of hardware.
The actual AutoKernConf is not so powerfull as the older version: the earlier versions (in 2000 and 2001) were more powerfull (but with newer hardware), so I'll forward-port some of the old (and non so driver database driven) feature, it need some new euristics to find what people want to configure, and probably should take information about previous udev runs.
AutoKernConf is an direct application of the LKDDb: Linux Kernel Driver DataBase.
News
- 2007-11-24: Support new format, and some more detections
- 2007-10-31: created this page
Getting the programs
The program is in sources/autokernconf/. It consists of two files:
- kdetect.sh
- a shell script with detect the actual hardware. It doesn't try to direct probe the harware, but it look for what the kernel know (attached on the various busses), so it should be safe.
- autokernconf.sh
- a shell script that compare the result of the just discussed kdetect.sh, with the LKDDb database, to find some needed drivers.
We choose to use two programs, so that user can run the detection on a target machine, and compile the kernel in an other machine. This choice allow also to make multiple (in time) detections, i.e. to attach new devices (i.e. for USB devices if the USB slot was not enough, docked and undocked laptop modes, ...).
usage:
./kdetect.sh
to detect actual hardware. Now the program heavily depends on
the /sys/
filesystem, so you need a recent Linux kernel
(a 2.6 linux kernel).
Using the /sys simplify the detection: there are no direct
hardware probes, so there is no (I hope) risk of crashes.
./autokernconf.sh
This program will read the lkddb.list
and
the kdetect.list
. It will create an
config.auto
which includes the detected
kernel configuration items.
NOTE: You need a lkddb.list
hardware
list from
sources/lkddb/.
The autokernconf.sh
is a slow shell script,
because now it execute a probe for every database entry,
and usually this probe requires a new call of
grep
shell utility. Probably it should be
rewritten in a more efficient way, but still portable.
How?
Contact
You can contact me using cate
(at) cateee.net