This merge changes the device switch tables from static array to
dynamically generated by config(8).
- All device switches is defined as a constant structure in device drivers.
- The new grammer ``device-major'' is introduced to ``files''.
device-major <prefix> char <num> [block <num>] [<rules>]
- All device major numbers must be listed up in port dependent majors.<arch>
by using this grammer.
- Added the new naming convention.
The name of the device switch must be <prefix>_[bc]devsw for auto-generation
of device switch tables.
- The backward compatibility of loading block/character device
switch by LKM framework is broken. This is necessary to convert
from block/character device major to device name in runtime and vice versa.
- The restriction to assign device major by LKM is completely removed.
We don't need to reserve LKM entries for dynamic loading of device switch.
- In compile time, device major numbers list is packed into the kernel and
the LKM framework will refer it to assign device major number dynamically.
and files.kernel has now been completely replaced.
features supported: not nearly as broken as the stuff before
expression support for dependencies
support for 'requires'
no longer generates lots of stupid unnecessary .h files
broke lots of broken stuff, and forced fixing it.
(docs to arrive later)
added '-k' option for continue even after error
documented '-g'
not identical to barsoom's patch, but I think it's an easier patch.
Check out compile/KERN/ioconf.c to see the effect. (On e kernel with wd and/or
fd of course)