4 * BRIEF MODULE DESCRIPTION:
5 * OCP device ids based on the ideas from PCI
7 * Maintained by: Armin <akuster@mvista.com>
10 * This program is free software; you can redistribute it and/or modify it
11 * under the terms of the GNU General Public License as published by the
12 * Free Software Foundation; either version 2 of the License, or (at your
13 * option) any later version.
15 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED
16 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
17 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN
18 * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
19 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
20 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
21 * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
22 * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
23 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
24 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 * You should have received a copy of the GNU General Public License along
27 * with this program; if not, write to the Free Software Foundation, Inc.,
28 * 675 Mass Ave, Cambridge, MA 02139, USA.
30 * Version 1.0 08/22/02 -Armin
38 * Keep in order, please
41 /* Vendor IDs 0x0001 - 0xFFFF copied from pci_ids.h */
43 #define OCP_VENDOR_INVALID 0x0000
44 #define OCP_VENDOR_ARM 0x0004
45 #define OCP_VENDOR_IBM 0x1014
46 #define OCP_VENDOR_MOTOROLA 0x1057
47 #define OCP_VENDOR_XILINX 0x10ee
48 #define OCP_VENDOR_UNKNOWN 0xFFFF
50 /* device identification */
53 #define OCP_FUNC_INVALID 0x0000
55 /* system 0x0001 - 0x001F */
56 #define OCP_FUNC_UIC 0x0001
58 /* Timers 0x0020 - 0x002F */
59 #define OCP_FUNC_GPT 0x0020 /* General purpose timers */
60 #define OCP_FUNC_RTC 0x0021
62 /* Serial 0x0030 - 0x006F*/
63 #define OCP_FUNC_16550 0x0031
64 #define OCP_FUNC_SSP 0x0032 /* sync serial port */
65 #define OCP_FUNC_SCP 0x0033 /* serial controller port */
66 #define OCP_FUNC_SCC 0x0034 /* serial contoller */
67 #define OCP_FUNC_SCI 0x0035 /* Smart card */
68 #define OCP_FUNC_IIC 0x0040
69 #define OCP_FUNC_USB 0x0050
70 #define OCP_FUNC_IR 0x0060
72 /* Memory devices 0x0090 - 0x009F */
73 #define OCP_FUNC_SDRAM 0x0091
74 #define OCP_FUNC_DMA 0x0092
76 /* Display 0x00A0 - 0x00AF */
77 #define OCP_FUNC_VIDEO 0x00A0
78 #define OCP_FUNC_LED 0x00A1
79 #define OCP_FUNC_LCD 0x00A2
81 /* Sound 0x00B0 - 0x00BF */
82 #define OCP_FUNC_AUDIO 0x00B0
84 /* Mass Storage 0x00C0 - 0xxCF */
85 #define OCP_FUNC_IDE 0x00C0
87 /* Misc 0x00D0 - 0x00DF*/
88 #define OCP_FUNC_GPIO 0x00D0
89 #define OCP_FUNC_ZMII 0x00D1
91 /* Network 0x0200 - 0x02FF */
92 #define OCP_FUNC_EMAC 0x0200
94 /* Bridge devices 0xE00 - 0xEFF */
95 #define OCP_FUNC_HOST 0x0E00
96 #define OCP_FUNC_DCR 0x0E01
97 #define OCP_FUNC_OPB 0x0E02
98 #define OCP_FUNC_PHY 0x0E03
99 #define OCP_FUNC_EXT 0x0E04
100 #define OCP_FUNC_PCI 0x0E05
101 #define OCP_FUNC_PLB 0x0E06
103 #define OCP_FUNC_UNKNOWN 0xFFFF