Matt Porter | 394b701 | 2005-11-07 01:00:15 -0800 | [diff] [blame] | 1 | <?xml version="1.0" encoding="UTF-8"?> |
| 2 | <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" |
| 3 | "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" [ |
| 4 | <!ENTITY rapidio SYSTEM "rapidio.xml"> |
| 5 | ]> |
| 6 | |
| 7 | <book id="RapidIO-Guide"> |
| 8 | <bookinfo> |
| 9 | <title>RapidIO Subsystem Guide</title> |
| 10 | |
| 11 | <authorgroup> |
| 12 | <author> |
| 13 | <firstname>Matt</firstname> |
| 14 | <surname>Porter</surname> |
| 15 | <affiliation> |
| 16 | <address> |
| 17 | <email>mporter@kernel.crashing.org</email> |
| 18 | <email>mporter@mvista.com</email> |
| 19 | </address> |
| 20 | </affiliation> |
| 21 | </author> |
| 22 | </authorgroup> |
| 23 | |
| 24 | <copyright> |
| 25 | <year>2005</year> |
| 26 | <holder>MontaVista Software, Inc.</holder> |
| 27 | </copyright> |
| 28 | |
| 29 | <legalnotice> |
| 30 | <para> |
| 31 | This documentation is free software; you can redistribute |
| 32 | it and/or modify it under the terms of the GNU General Public |
| 33 | License version 2 as published by the Free Software Foundation. |
| 34 | </para> |
| 35 | |
| 36 | <para> |
| 37 | This program is distributed in the hope that it will be |
| 38 | useful, but WITHOUT ANY WARRANTY; without even the implied |
| 39 | warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. |
| 40 | See the GNU General Public License for more details. |
| 41 | </para> |
| 42 | |
| 43 | <para> |
| 44 | You should have received a copy of the GNU General Public |
| 45 | License along with this program; if not, write to the Free |
| 46 | Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, |
| 47 | MA 02111-1307 USA |
| 48 | </para> |
| 49 | |
| 50 | <para> |
| 51 | For more details see the file COPYING in the source |
| 52 | distribution of Linux. |
| 53 | </para> |
| 54 | </legalnotice> |
| 55 | </bookinfo> |
| 56 | |
| 57 | <toc></toc> |
| 58 | |
| 59 | <chapter id="intro"> |
| 60 | <title>Introduction</title> |
| 61 | <para> |
| 62 | RapidIO is a high speed switched fabric interconnect with |
| 63 | features aimed at the embedded market. RapidIO provides |
| 64 | support for memory-mapped I/O as well as message-based |
| 65 | transactions over the switched fabric network. RapidIO has |
| 66 | a standardized discovery mechanism not unlike the PCI bus |
| 67 | standard that allows simple detection of devices in a |
| 68 | network. |
| 69 | </para> |
| 70 | <para> |
| 71 | This documentation is provided for developers intending |
| 72 | to support RapidIO on new architectures, write new drivers, |
| 73 | or to understand the subsystem internals. |
| 74 | </para> |
| 75 | </chapter> |
| 76 | |
| 77 | <chapter id="bugs"> |
| 78 | <title>Known Bugs and Limitations</title> |
| 79 | |
| 80 | <sect1> |
| 81 | <title>Bugs</title> |
| 82 | <para>None. ;)</para> |
| 83 | </sect1> |
| 84 | <sect1> |
| 85 | <title>Limitations</title> |
| 86 | <para> |
| 87 | <orderedlist> |
| 88 | <listitem><para>Access/management of RapidIO memory regions is not supported</para></listitem> |
| 89 | <listitem><para>Multiple host enumeration is not supported</para></listitem> |
| 90 | </orderedlist> |
| 91 | </para> |
| 92 | </sect1> |
| 93 | </chapter> |
| 94 | |
| 95 | <chapter id="drivers"> |
| 96 | <title>RapidIO driver interface</title> |
| 97 | <para> |
| 98 | Drivers are provided a set of calls in order |
| 99 | to interface with the subsystem to gather info |
| 100 | on devices, request/map memory region resources, |
| 101 | and manage mailboxes/doorbells. |
| 102 | </para> |
| 103 | <sect1> |
| 104 | <title>Functions</title> |
| 105 | !Iinclude/linux/rio_drv.h |
| 106 | !Edrivers/rapidio/rio-driver.c |
| 107 | !Edrivers/rapidio/rio.c |
| 108 | </sect1> |
| 109 | </chapter> |
| 110 | |
| 111 | <chapter id="internals"> |
| 112 | <title>Internals</title> |
| 113 | |
| 114 | <para> |
| 115 | This chapter contains the autogenerated documentation of the RapidIO |
| 116 | subsystem. |
| 117 | </para> |
| 118 | |
| 119 | <sect1><title>Structures</title> |
| 120 | !Iinclude/linux/rio.h |
| 121 | </sect1> |
| 122 | <sect1><title>Enumeration and Discovery</title> |
| 123 | !Idrivers/rapidio/rio-scan.c |
| 124 | </sect1> |
| 125 | <sect1><title>Driver functionality</title> |
| 126 | !Idrivers/rapidio/rio.c |
| 127 | !Idrivers/rapidio/rio-access.c |
| 128 | </sect1> |
| 129 | <sect1><title>Device model support</title> |
| 130 | !Idrivers/rapidio/rio-driver.c |
| 131 | </sect1> |
| 132 | <sect1><title>Sysfs support</title> |
| 133 | !Idrivers/rapidio/rio-sysfs.c |
| 134 | </sect1> |
| 135 | <sect1><title>PPC32 support</title> |
| 136 | !Iarch/ppc/kernel/rio.c |
| 137 | !Earch/ppc/syslib/ppc85xx_rio.c |
| 138 | !Iarch/ppc/syslib/ppc85xx_rio.c |
| 139 | </sect1> |
| 140 | </chapter> |
| 141 | |
| 142 | <chapter id="credits"> |
| 143 | <title>Credits</title> |
| 144 | <para> |
| 145 | The following people have contributed to the RapidIO |
| 146 | subsystem directly or indirectly: |
| 147 | <orderedlist> |
| 148 | <listitem><para>Matt Porter<email>mporter@kernel.crashing.org</email></para></listitem> |
| 149 | <listitem><para>Randy Vinson<email>rvinson@mvista.com</email></para></listitem> |
| 150 | <listitem><para>Dan Malek<email>dan@embeddedalley.com</email></para></listitem> |
| 151 | </orderedlist> |
| 152 | </para> |
| 153 | <para> |
| 154 | The following people have contributed to this document: |
| 155 | <orderedlist> |
| 156 | <listitem><para>Matt Porter<email>mporter@kernel.crashing.org</email></para></listitem> |
| 157 | </orderedlist> |
| 158 | </para> |
| 159 | </chapter> |
| 160 | </book> |