Add PCIe hot-plug report

Approved by:	hrs (mentor, implicit)
This commit is contained in:
Benjamin Kaduk 2015-04-14 21:13:41 +00:00
parent 5764da7bbf
commit 07312dfe95
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=46539

View file

@ -905,4 +905,64 @@ WITHOUT_FORTH=y</pre>
</body>
</project>
<project cat='kern'>
<title>Adding PCIe Hot-plug Support</title>
<contact>
<person>
<name>
<given>John-Mark</given>
<common>Gurney</common>
</name>
<email>jmg@FreeBSD.org</email>
</person>
</contact>
<links>
<url href="http://p4db.freebsd.org/depotTreeBrowser.cgi?FSPC=//depot/projects/pciehotplug">PCIe Hot-plug Perforce Branch</url>
</links>
<body>
<p>PCI Express (PCIe) hot-plug is used on both laptops and
servers to allow peripheral devices to be added or removed
while the system is running. Laptops commonly include
hot-pluggable PCIe as either an ExpressCard slot or
a Thunderbolt interface. ExpressCard has built-in USB support
that is already supported by &os;, but ExpressCard PCIe
devices like Gigabit Ethernet adapters and eSATA cards are
only supported when they are present at boot, and removal may
cause &os; to crash.</p>
<p>The goal of this project is to allow these devices to
be inserted and removed while &os; is running. The work
will provide the basic infrastructure to support adding and
removing devices, though it is expected that additional work
will be needed to update individual drivers to support
hot-plug.</p>
<p>Current testing is focused on getting a simple UART
device functional. Basic hot swap is functional.</p>
</body>
<sponsor>The &os; Foundation</sponsor>
<help>
<task>
<p>Get suspend/resume functional by saving/restoring the necessary
registers.</p>
</task>
<task>
<p>Make sure that upon suspend, devices are removed so that
if they are replaced while the machine is suspended, the
new devices will be detected.</p>
</task>
<task>
<p>Improve how state transitions are handled, possibly by
using a proper state machine.</p>
</task>
</help>
</project>
</report>