source: rtems/c/src/lib/libbsp/sparc/shared/include/ambapp_ids.h @ 9ea65119

4.115
Last change on this file since 9ea65119 was 9ea65119, checked in by Daniel Hellstrom <daniel@…>, on 04/17/12 at 14:25:38

LEON: updated AMBA PnP API

The old layer had some limitations/problems for multiple AHB
buses since the data structure containing all AMBA devices
were allocated before scanning.

The new layer create devices as they are found and memory is
allocated using malloc() or bsp_early_malloc() during booting.

The old 8 functions for finding a specific AHB-Slave or
APB-Slave device has been replaced with one function,
ambapp_for_each(), which iterates over all devices matching
the specified search options and calls a user provided
function. The new way lowers the footprint and makes searching
more flexible.

The frequency information is now supported, if the frequency
of one device is reported by the user.

More AHB-to-AHB bridges are supported.

The API has been split into several parts in order to lower the
footprint.

The API also introduces the AMBAPP CORE concept, where one
ambapp_core can be created from one AHB Master, AHB Slave
and one APB Slave, at least one device is required for creating
a core.

Signed-off-by: Daniel Hellstrom <daniel@…>

  • Property mode set to 100644
File size: 7.7 KB
Line 
1/*  AMBA Plug & Play Bus Vendor and Device IDs.
2 *
3 *  COPYRIGHT (c) 2008.
4 *  Gaisler Research
5 *
6 *  This header file provide all known VENDOR and DEVICE IDs available
7 *  in the AMBA Plug & Play information. Taken from GRLIB 3386.
8 *
9 *  The license and distribution terms for this file may be
10 *  found in the file LICENSE in this distribution or at
11 *  http://www.rtems.com/license/LICENSE.
12 *
13 */
14
15
16#ifndef __AMBAPP_DEVS_H__
17#define __AMBAPP_DEVS_H__
18
19/* Vendor codes */
20#define VENDOR_GAISLER       1
21#define VENDOR_PENDER        2
22#define VENDOR_ESA           4
23#define VENDOR_ASTRIUM       6
24#define VENDOR_OPENCHIP      7
25#define VENDOR_OPENCORES     8
26#define VENDOR_CONTRIB       9
27#define VENDOR_EONIC         11
28#define VENDOR_RADIONOR      15
29#define VENDOR_GLEICHMANN    16
30#define VENDOR_MENTA         17
31#define VENDOR_SUN           19
32#define VENDOR_MOVIDIA       20
33#define VENDOR_ORBITA        23
34#define VENDOR_SYNOPSYS      33
35#define VENDOR_NASA          34
36#define VENDOR_ACTEL         172
37#define VENDOR_CAL           202
38#define VENDOR_EMBEDDIT      234
39#define VENDOR_CETON         203
40
41/* Gaisler Research device id's */
42#define GAISLER_LEON2DSU     0x002
43#define GAISLER_LEON3        0x003
44#define GAISLER_LEON3DSU     0x004
45#define GAISLER_ETHAHB       0x005
46#define GAISLER_APBMST       0x006
47#define GAISLER_AHBUART      0x007
48#define GAISLER_SRCTRL       0x008
49#define GAISLER_SDCTRL       0x009
50#define GAISLER_SSRCTRL      0x00a
51#define GAISLER_APBUART      0x00c
52#define GAISLER_IRQMP        0x00d
53#define GAISLER_AHBRAM       0x00e
54#define GAISLER_AHBDPRAM     0x00f
55#define GAISLER_GPTIMER      0x011
56#define GAISLER_PCITRG       0x012
57#define GAISLER_PCISBRG      0x013
58#define GAISLER_PCIFBRG      0x014
59#define GAISLER_PCITRACE     0x015
60#define GAISLER_DMACTRL      0x016
61#define GAISLER_AHBTRACE     0x017
62#define GAISLER_DSUCTRL      0x018
63#define GAISLER_CANAHB       0x019
64#define GAISLER_GPIO         0x01a
65#define GAISLER_AHBROM       0x01b
66#define GAISLER_AHBJTAG      0x01c
67#define GAISLER_ETHMAC       0x01d
68#define GAISLER_SWNODE       0x01e
69#define GAISLER_SPW          0x01f
70#define GAISLER_AHB2AHB      0x020
71#define GAISLER_USBDC        0x021
72#define GAISLER_USB_DCL      0x022
73#define GAISLER_DDRMP        0x023
74#define GAISLER_ATACTRL      0x024
75#define GAISLER_DDRSP        0x025
76#define GAISLER_EHCI         0x026
77#define GAISLER_UHCI         0x027
78#define GAISLER_I2CMST       0x028
79#define GAISLER_SPW2         0x029
80#define GAISLER_AHBDMA       0x02a
81#define GAISLER_NUHOSP3      0x02b
82#define GAISLER_CLKGATE      0x02c
83#define GAISLER_SPICTRL      0x02d
84#define GAISLER_DDR2SP       0x02e
85#define GAISLER_SLINK        0x02f
86#define GAISLER_GRTM         0x030
87#define GAISLER_GRTC         0x031
88#define GAISLER_GRPW         0x032
89#define GAISLER_GRCTM        0x033
90#define GAISLER_GRHCAN       0x034
91#define GAISLER_GRFIFO       0x035
92#define GAISLER_GRADCDAC     0x036
93#define GAISLER_GRPULSE      0x037
94#define GAISLER_GRTIMER      0x038
95#define GAISLER_AHB2PP       0x039
96#define GAISLER_GRVERSION    0x03a
97#define GAISLER_APB2PW       0x03b
98#define GAISLER_PW2APB       0x03c
99#define GAISLER_GRCAN        0x03d
100#define GAISLER_I2CSLV       0x03e
101#define GAISLER_U16550       0x03f
102#define GAISLER_AHBMST_EM    0x040
103#define GAISLER_AHBSLV_EM    0x041
104#define GAISLER_GRTESTMOD    0x042
105#define GAISLER_ASCS         0x043
106#define GAISLER_IPMVBCTRL    0x044
107#define GAISLER_SPIMCTRL     0x045
108#define GAISLER_L4STAT       0x047
109#define GAISLER_LEON4        0x048
110#define GAISLER_LEON4DSU     0x049
111#define GAISLER_GRPWM        0x04a
112#define GAISLER_L2CACHE      0x04b
113#define GAISLER_GR1553B      0x04d
114#define GAISLER_GRIOMMU      0x04f
115#define GAISLER_FTAHBRAM     0x050
116#define GAISLER_FTSRCTRL     0x051
117#define GAISLER_AHBSTAT      0x052
118#define GAISLER_LEON3FT      0x053
119#define GAISLER_FTMCTRL      0x054
120#define GAISLER_FTSDCTRL     0x055
121#define GAISLER_FTSRCTRL8    0x056
122#define GAISLER_MEMSCRUB     0x057
123#define GAISLER_APBPS2       0x060
124#define GAISLER_VGACTRL      0x061
125#define GAISLER_LOGAN        0x062
126#define GAISLER_SVGACTRL     0x063
127#define GAISLER_T1AHB        0x064
128#define GAISLER_MP7WRAP      0x065
129#define GAISLER_GRSYSMON     0x066
130#define GAISLER_GRACECTRL    0x067
131#define GAISLER_B1553BC      0x070
132#define GAISLER_B1553RT      0x071
133#define GAISLER_B1553BRM     0x072
134#define GAISLER_GRAES        0x073
135#define GAISLER_SATCAN       0x080
136#define GAISLER_CANMUX       0x081
137#define GAISLER_GRTMRX       0x082
138#define GAISLER_GRTCTX       0x083
139#define GAISLER_GRTMDESC     0x084
140#define GAISLER_GRTMVC       0x085
141#define GAISLER_GEFFE        0x086
142#define GAISLER_AES          0x073
143#define GAISLER_ECC          0x074
144#define GAISLER_PCIF         0x075
145#define GAISLER_CLKMOD       0x076
146#define GAISLER_HAPSTRAK     0x077
147#define GAISLER_TEST_1X2     0x078
148#define GAISLER_WILD2AHB     0x079
149#define GAISLER_BIO1         0x07a
150#define GAISLER_GRAESDMA     0x07b
151#define GAISLER_GRPCI2       0x07c
152#define GAISLER_GRPCI2_DMA   0x07d
153#define GAISLER_SPWCUC       0x089
154#define GAISLER_SPW2_DMA     0x08a
155#define GAISLER_SPW_ROUTER   0x08b
156
157
158#define GAISLER_PIPEWRAPPER  0xffa
159#define GAISLER_L2TIME       0xffd  /* internal device: leon2 timer */
160#define GAISLER_L2C          0xffe  /* internal device: leon2compat */
161#define GAISLER_PLUGPLAY     0xfff  /* internal device: plug & play configarea */
162
163/* European Space Agency device id's */
164#define ESA_LEON2            0x002
165#define ESA_LEON2APB         0x003
166#define ESA_IRQ              0x005
167#define ESA_TIMER            0x006
168#define ESA_UART             0x007
169#define ESA_CFG              0x008
170#define ESA_IO               0x009
171#define ESA_MCTRL            0x00f
172#define ESA_PCIARB           0x010
173#define ESA_HURRICANE        0x011
174#define ESA_SPW_RMAP         0x012
175#define ESA_SPW2             0x012
176#define ESA_AHBUART          0x013
177#define ESA_SPWA             0x014
178#define ESA_BOSCHCAN         0x015
179#define ESA_IRQ2             0x016
180#define ESA_AHBSTAT          0x017
181#define ESA_WPROT            0x018
182#define ESA_WPROT2           0x019
183#define ESA_PDEC3AMBA        0x020
184#define ESA_PTME3AMBA        0x021
185
186#define OPENCHIP_APBGPIO     0x001
187#define OPENCHIP_APBI2C      0x002
188#define OPENCHIP_APBSPI      0x003
189#define OPENCHIP_APBCHARLCD  0x004
190#define OPENCHIP_APBPWM      0x005
191#define OPENCHIP_APBPS2      0x006
192#define OPENCHIP_APBMMCSD    0x007
193#define OPENCHIP_APBNAND     0x008
194#define OPENCHIP_APBLPC      0x009
195#define OPENCHIP_APBCF       0x00a
196#define OPENCHIP_APBSYSACE   0x00b
197#define OPENCHIP_APB1WIRE    0x00c
198#define OPENCHIP_APBJTAG     0x00d
199#define OPENCHIP_APBSUI      0x00e
200
201
202#define CONTRIB_CORE1        0x001
203#define CONTRIB_CORE2        0x002
204
205#define GLEICHMANN_CUSTOM    0x001
206#define GLEICHMANN_GEOLCD01  0x002
207#define GLEICHMANN_DAC       0x003
208#define GLEICHMANN_HPI       0x004
209#define GLEICHMANN_SPI       0x005
210#define GLEICHMANN_HIFC      0x006
211#define GLEICHMANN_ADCDAC    0x007
212#define GLEICHMANN_SPIOC     0x008
213#define GLEICHMANN_AC97      0x009
214
215#define SUN_T1               0x001
216#define SUN_S1               0x011
217
218#define ORBITA_1553B         0x001
219#define ORBITA_429           0x002
220#define ORBITA_SPI           0x003
221#define ORBITA_I2C           0x004
222#define ORBITA_SMARTCARD     0x064
223#define ORBITA_SDCARD        0x065
224#define ORBITA_UART16550     0x066
225#define ORBITA_CRYPTO        0x067
226#define ORBITA_SYSIF         0x068
227#define ORBITA_PIO           0x069
228#define ORBITA_RTC           0x0c8
229#define ORBITA_COLORLCD      0x12c
230#define ORBITA_PCI           0x190
231#define ORBITA_DSP           0x1f4
232#define ORBITA_USBHOST       0x258
233#define ORBITA_USBDEV        0x2bc
234
235#define NASA_EP32            0x001
236
237#define CAL_DDRCTRL          0x188
238
239#define ACTEL_COREMP7        0x001
240
241/* Opencores device id's */
242#define OPENCORES_PCIBR  0x4
243#define OPENCORES_ETHMAC 0x5
244
245#endif
Note: See TracBrowser for help on using the repository browser.