Add PCIe hot-plug report
Approved by: hrs (mentor, implicit)
This commit is contained in:
parent
5764da7bbf
commit
07312dfe95
Notes:
svn2git
2020-12-08 03:00:23 +00:00
svn path=/head/; revision=46539
1 changed files with 60 additions and 0 deletions
|
@ -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>
|
||||
|
|
Loading…
Reference in a new issue