2005-11-07 17:00:15 +08:00
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
|
|
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
|
|
|
|
"http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" [
|
|
|
|
<!ENTITY rapidio SYSTEM "rapidio.xml">
|
|
|
|
]>
|
|
|
|
|
|
|
|
<book id="RapidIO-Guide">
|
|
|
|
<bookinfo>
|
|
|
|
<title>RapidIO Subsystem Guide</title>
|
|
|
|
|
|
|
|
<authorgroup>
|
|
|
|
<author>
|
|
|
|
<firstname>Matt</firstname>
|
|
|
|
<surname>Porter</surname>
|
|
|
|
<affiliation>
|
|
|
|
<address>
|
|
|
|
<email>mporter@kernel.crashing.org</email>
|
|
|
|
<email>mporter@mvista.com</email>
|
|
|
|
</address>
|
|
|
|
</affiliation>
|
|
|
|
</author>
|
|
|
|
</authorgroup>
|
|
|
|
|
|
|
|
<copyright>
|
|
|
|
<year>2005</year>
|
|
|
|
<holder>MontaVista Software, Inc.</holder>
|
|
|
|
</copyright>
|
|
|
|
|
|
|
|
<legalnotice>
|
|
|
|
<para>
|
|
|
|
This documentation is free software; you can redistribute
|
|
|
|
it and/or modify it under the terms of the GNU General Public
|
|
|
|
License version 2 as published by the Free Software Foundation.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
This program is distributed in the hope that it will be
|
|
|
|
useful, but WITHOUT ANY WARRANTY; without even the implied
|
|
|
|
warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
|
|
See the GNU General Public License for more details.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
You should have received a copy of the GNU General Public
|
|
|
|
License along with this program; if not, write to the Free
|
|
|
|
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
|
|
|
MA 02111-1307 USA
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
For more details see the file COPYING in the source
|
|
|
|
distribution of Linux.
|
|
|
|
</para>
|
|
|
|
</legalnotice>
|
|
|
|
</bookinfo>
|
|
|
|
|
|
|
|
<toc></toc>
|
|
|
|
|
|
|
|
<chapter id="intro">
|
|
|
|
<title>Introduction</title>
|
|
|
|
<para>
|
|
|
|
RapidIO is a high speed switched fabric interconnect with
|
|
|
|
features aimed at the embedded market. RapidIO provides
|
|
|
|
support for memory-mapped I/O as well as message-based
|
|
|
|
transactions over the switched fabric network. RapidIO has
|
|
|
|
a standardized discovery mechanism not unlike the PCI bus
|
|
|
|
standard that allows simple detection of devices in a
|
|
|
|
network.
|
|
|
|
</para>
|
|
|
|
<para>
|
|
|
|
This documentation is provided for developers intending
|
|
|
|
to support RapidIO on new architectures, write new drivers,
|
|
|
|
or to understand the subsystem internals.
|
|
|
|
</para>
|
|
|
|
</chapter>
|
|
|
|
|
|
|
|
<chapter id="bugs">
|
|
|
|
<title>Known Bugs and Limitations</title>
|
|
|
|
|
2008-02-07 16:13:31 +08:00
|
|
|
<sect1 id="known_bugs">
|
2005-11-07 17:00:15 +08:00
|
|
|
<title>Bugs</title>
|
|
|
|
<para>None. ;)</para>
|
|
|
|
</sect1>
|
2008-02-07 16:13:31 +08:00
|
|
|
<sect1 id="Limitations">
|
2005-11-07 17:00:15 +08:00
|
|
|
<title>Limitations</title>
|
|
|
|
<para>
|
|
|
|
<orderedlist>
|
|
|
|
<listitem><para>Access/management of RapidIO memory regions is not supported</para></listitem>
|
|
|
|
<listitem><para>Multiple host enumeration is not supported</para></listitem>
|
|
|
|
</orderedlist>
|
|
|
|
</para>
|
|
|
|
</sect1>
|
|
|
|
</chapter>
|
|
|
|
|
|
|
|
<chapter id="drivers">
|
|
|
|
<title>RapidIO driver interface</title>
|
|
|
|
<para>
|
|
|
|
Drivers are provided a set of calls in order
|
|
|
|
to interface with the subsystem to gather info
|
|
|
|
on devices, request/map memory region resources,
|
|
|
|
and manage mailboxes/doorbells.
|
|
|
|
</para>
|
2008-02-07 16:13:31 +08:00
|
|
|
<sect1 id="Functions">
|
2005-11-07 17:00:15 +08:00
|
|
|
<title>Functions</title>
|
|
|
|
!Iinclude/linux/rio_drv.h
|
|
|
|
!Edrivers/rapidio/rio-driver.c
|
|
|
|
!Edrivers/rapidio/rio.c
|
|
|
|
</sect1>
|
|
|
|
</chapter>
|
|
|
|
|
|
|
|
<chapter id="internals">
|
|
|
|
<title>Internals</title>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
This chapter contains the autogenerated documentation of the RapidIO
|
|
|
|
subsystem.
|
|
|
|
</para>
|
|
|
|
|
2008-02-07 16:13:31 +08:00
|
|
|
<sect1 id="Structures"><title>Structures</title>
|
2005-11-07 17:00:15 +08:00
|
|
|
!Iinclude/linux/rio.h
|
|
|
|
</sect1>
|
2008-02-07 16:13:31 +08:00
|
|
|
<sect1 id="Enumeration_and_Discovery"><title>Enumeration and Discovery</title>
|
2005-11-07 17:00:15 +08:00
|
|
|
!Idrivers/rapidio/rio-scan.c
|
|
|
|
</sect1>
|
2008-02-07 16:13:31 +08:00
|
|
|
<sect1 id="Driver_functionality"><title>Driver functionality</title>
|
2005-11-07 17:00:15 +08:00
|
|
|
!Idrivers/rapidio/rio.c
|
|
|
|
!Idrivers/rapidio/rio-access.c
|
|
|
|
</sect1>
|
2008-02-07 16:13:31 +08:00
|
|
|
<sect1 id="Device_model_support"><title>Device model support</title>
|
2005-11-07 17:00:15 +08:00
|
|
|
!Idrivers/rapidio/rio-driver.c
|
|
|
|
</sect1>
|
2008-02-07 16:13:31 +08:00
|
|
|
<sect1 id="Sysfs_support"><title>Sysfs support</title>
|
2005-11-07 17:00:15 +08:00
|
|
|
!Idrivers/rapidio/rio-sysfs.c
|
|
|
|
</sect1>
|
2008-02-07 16:13:31 +08:00
|
|
|
<sect1 id="PPC32_support"><title>PPC32 support</title>
|
2008-02-01 14:09:08 +08:00
|
|
|
!Iarch/powerpc/kernel/rio.c
|
|
|
|
!Earch/powerpc/sysdev/fsl_rio.c
|
|
|
|
!Iarch/powerpc/sysdev/fsl_rio.c
|
2005-11-07 17:00:15 +08:00
|
|
|
</sect1>
|
|
|
|
</chapter>
|
|
|
|
|
|
|
|
<chapter id="credits">
|
|
|
|
<title>Credits</title>
|
|
|
|
<para>
|
|
|
|
The following people have contributed to the RapidIO
|
|
|
|
subsystem directly or indirectly:
|
|
|
|
<orderedlist>
|
|
|
|
<listitem><para>Matt Porter<email>mporter@kernel.crashing.org</email></para></listitem>
|
|
|
|
<listitem><para>Randy Vinson<email>rvinson@mvista.com</email></para></listitem>
|
|
|
|
<listitem><para>Dan Malek<email>dan@embeddedalley.com</email></para></listitem>
|
|
|
|
</orderedlist>
|
|
|
|
</para>
|
|
|
|
<para>
|
|
|
|
The following people have contributed to this document:
|
|
|
|
<orderedlist>
|
|
|
|
<listitem><para>Matt Porter<email>mporter@kernel.crashing.org</email></para></listitem>
|
|
|
|
</orderedlist>
|
|
|
|
</para>
|
|
|
|
</chapter>
|
|
|
|
</book>
|