Add entry on PNP-based kernel module autoloading from imp

This commit is contained in:
Benjamin Kaduk 2016-01-18 23:03:30 +00:00
parent 67bf9df03a
commit fdcfd42f0e
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=48061

View file

@ -4045,4 +4045,68 @@
Netflix, Inc
</sponsor>
</project>
<project cat='kern'>
<title>Minimal kernel with PNP-based autoloading</title>
<contact>
<person>
<name>
<given>Warner</given>
<common>Losh</common>
</name>
<email>imp@FreeBSD.org</email>
</person>
</contact>
<links>
<url href="http://bsdimp.blogspot.com/2016/01/details-on-coming-automatic-module.html">Blog Post</url>
</links>
<body>
<p>Work on automatically loading modules based on the
plug-and-play data from devices that are scanned and found to not
already have a driver attached is in progress. Digging this
information out from kernel modules, as well as tagging relevant
bits of driver tables, has been committed. PC Card, USB and some
PCI devices now have these markings. This data is stored in a
file that the kernel, boot loader and userland processes all have
access to.</p>
<p>When complete, a user will be able to run a minimal kernel
(currently checked in as the <tt>MINIMAL</tt> config). Devices
necessary for booting will be loaded by <tt>loader(8)</tt>. Other
devices may be loaded there, or early in the boot (depending on
which gives better performance). Users will still be able to run
more &quot;monolithic&quot; configurations, as well as limit which
kernel modules are avalibale as can be done today, though without
the convenience that automatic loading will provide. This work
remains ongoing.</p>
</body>
<help>
<task>
<p>Go through all the simplebus drivers and add
plug-and-play information there. Some additional minor simplebus
functionality is needed. There is some work in progress for
this.</p>
</task>
<task>
<p>Go through all the PCI drivers and add plug-and-play
information to them. Unlike PC Card or USB, the PCI bus does
not have a stylized table of PCI Ids, so each driver invents
its own method, meaning that the semi-mechanical conversion
that was done with PC Card and USB will not be possible.
Instead, customized code for each dirver will be needed.
Since a large number of drivers have their own device tables,
the work will be primarily writing a description of the
current table style.</p>
</task>
<task>
<p>Run-time parsing and loading is still needed.</p>
</task>
</help>
</project>
</report>