source: rtems/bsps/powerpc/include/mpc55xx/siu.h @ 2afb22b

5
Last change on this file since 2afb22b was 2afb22b, checked in by Chris Johns <chrisj@…>, on 12/23/17 at 07:18:56

Remove make preinstall

A speciality of the RTEMS build system was the make preinstall step. It
copied header files from arbitrary locations into the build tree. The
header files were included via the -Bsome/build/tree/path GCC command
line option.

This has at least seven problems:

  • The make preinstall step itself needs time and disk space.
  • Errors in header files show up in the build tree copy. This makes it hard for editors to open the right file to fix the error.
  • There is no clear relationship between source and build tree header files. This makes an audit of the build process difficult.
  • The visibility of all header files in the build tree makes it difficult to enforce API barriers. For example it is discouraged to use BSP-specifics in the cpukit.
  • An introduction of a new build system is difficult.
  • Include paths specified by the -B option are system headers. This may suppress warnings.
  • The parallel build had sporadic failures on some hosts.

This patch removes the make preinstall step. All installed header
files are moved to dedicated include directories in the source tree.
Let @RTEMS_CPU@ be the target architecture, e.g. arm, powerpc, sparc,
etc. Let @RTEMS_BSP_FAMILIY@ be a BSP family base directory, e.g.
erc32, imx, qoriq, etc.

The new cpukit include directories are:

  • cpukit/include
  • cpukit/score/cpu/@RTEMS_CPU@/include
  • cpukit/libnetworking

The new BSP include directories are:

  • bsps/include
  • bsps/@RTEMS_CPU@/include
  • bsps/@RTEMS_CPU@/@RTEMS_BSP_FAMILIY@/include

There are build tree include directories for generated files.

The include directory order favours the most general header file, e.g.
it is not possible to override general header files via the include path
order.

The "bootstrap -p" option was removed. The new "bootstrap -H" option
should be used to regenerate the "headers.am" files.

Update #3254.

  • Property mode set to 100644
File size: 9.8 KB
Line 
1/**
2 * @file
3 *
4 * @ingroup mpc55xx
5 *
6 * @brief System Integration Unit Access (SIU).
7 */
8
9/*
10 * Copyright (c) 2010-2013 embedded brains GmbH.  All rights reserved.
11 *
12 *  embedded brains GmbH
13 *  Dornierstr. 4
14 *  82178 Puchheim
15 *  Germany
16 *  <rtems@embedded-brains.de>
17 *
18 * The license and distribution terms for this file may be
19 * found in the file LICENSE in this distribution or at
20 * http://www.rtems.org/license/LICENSE.
21 */
22
23#ifndef LIBCPU_POWERPC_MPC55XX_SIU_H
24#define LIBCPU_POWERPC_MPC55XX_SIU_H
25
26#include <rtems.h>
27
28#include <mpc55xx/regs.h>
29
30#ifdef __cplusplus
31extern "C" {
32#endif /* __cplusplus */
33
34typedef enum {
35  #if MPC55XX_CHIP_FAMILY == 567
36    PCR_MDO4_GPIO75 = 75,
37    PCR_MDO5_GPIO76 = 76,
38    PCR_MDO6_GPIO77 = 77,
39    PCR_MDO7_GPIO78 = 78,
40    PCR_MDO8_GPIO79 = 79,
41    PCR_MDO9_GPIO80 = 80,
42    PCR_MDO10_GPIO81 = 81,
43    PCR_MDO11_GPIO82 = 82,
44    PCR_CNTXA_TXDA_GPIO83 = 83,
45    PCR_CNRXA_RXDA_GPIO84 = 84,
46    PCR_CNTXB_PCSC3_GPIO85 = 85,
47    PCR_CNRXB_PCSC4_GPIO86 = 86,
48    PCR_CNTXC_PCSD3_GPIO87 = 87,
49    PCR_CNRXC_PCSD4_GPIO88 = 88,
50    PCR_TXDA_GPIO89 = 89,
51    PCR_RXDA_GPIO90 = 90,
52    PCR_TXDB_PCSD1_GPIO91 = 91,
53    PCR_RXDB_PCSD5_GPIO92 = 92,
54    PCR_SCKA_PCSC1_GPIO93 = 93,
55    PCR_SINA_PCSC2_GPIO94 = 94,
56    PCR_SOUTA_PCSC5_GPIO95 = 95,
57    PCR_PCSA0_PCSD2_GPIO96 = 96,
58    PCR_PCSA1_GPIO97 = 97,
59    PCR_PCSA2_GPIO98 = 98,
60    PCR_PCSA3_GPIO99 = 99,
61    PCR_PCSA4_GPIO100 = 100,
62    PCR_PCSA5_ETRIG1_GPIO101 = 101,
63    PCR_SCKB_GPIO102 = 102,
64    PCR_SINB_GPIO103 = 103,
65    PCR_SOUTB_GPIO104 = 104,
66    PCR_PCSB0_PCSD2_GPIO105 = 105,
67    PCR_PCSB1_PCSD0_GPIO106 = 106,
68    PCR_PCSB2_SOUTC_GPIO107 = 107,
69    PCR_PCSB3_SINC_GPIO108 = 108,
70    PCR_PCSB4_SCKC_GPIO109 = 109,
71    PCR_PCSB5_PCSC0_GPIO110 = 110,
72    PCR_TCRCLKA_IRQ7_GPIO113 = 113,
73    PCR_ETPUA0_ETPUA12_GPIO114 = 114,
74    PCR_ETPUA1_ETPUA13_GPIO115 = 115,
75    PCR_ETPUA2_ETPUA14_GPIO116 = 116,
76    PCR_ETPUA3_ETPUA15_GPIO117 = 117,
77    PCR_ETPUA4_ETPUA16_GPIO118 = 118,
78    PCR_ETPUA5_ETPUA17_GPIO119 = 119,
79    PCR_ETPUA6_ETPUA18_GPIO120 = 120,
80    PCR_ETPUA7_ETPUA19_GPIO121 = 121,
81    PCR_ETPUA8_ETPUA20_GPIO122 = 122,
82    PCR_ETPUA9_ETPUA21_GPIO123 = 123,
83    PCR_ETPUA10_ETPUA22_GPIO124 = 124,
84    PCR_ETPUA11_ETPUA23_GPIO125 = 125,
85    PCR_ETPUA12_PCSB1_GPIO126 = 126,
86    PCR_ETPUA13_PCSB3_GPIO127 = 127,
87    PCR_ETPUA14_PCSB4_GPIO128 = 128,
88    PCR_ETPUA15_PCSB5_GPIO129 = 129,
89    PCR_ETPUA16_PCSD1_GPIO130 = 130,
90    PCR_ETPUA17_PCSD2_GPIO131 = 131,
91    PCR_ETPUA18_PCSD3_GPIO132 = 132,
92    PCR_ETPUA19_PCSD4_GPIO133 = 133,
93    PCR_ETPUA20_IRQ8_GPIO134 = 134,
94    PCR_ETPUA21_IRQ9_GPIO135 = 135,
95    PCR_ETPUA22_IRQ10_GPIO136 = 136,
96    PCR_ETPUA23_IRQ11_GPIO137 = 137,
97    PCR_ETPUA24_IRQ12_GPIO138 = 138,
98    PCR_ETPUA25_IRQ13_GPIO139 = 139,
99    PCR_ETPUA26_IRQ14_GPIO140 = 140,
100    PCR_ETPUA27_IRQ15_GPIO141 = 141,
101    PCR_ETPUA28_PCSC1_GPIO142 = 142,
102    PCR_ETPUA29_PCSC2_GPIO143 = 143,
103    PCR_ETPUA30_PCSC3_GPIO144 = 144,
104    PCR_ETPUA31_PCSC4_GPIO145 = 145,
105    PCR_TCRCLKB_IRQ6_GPIO146 = 146,
106    PCR_ETPUB0_ETPUB16_GPIO147 = 147,
107    PCR_ETPUB1_ETPUB17_GPIO148 = 148,
108    PCR_ETPUB2_ETPUB18_GPIO149 = 149,
109    PCR_ETPUB3_ETPUB19_GPIO150 = 150,
110    PCR_ETPUB4_ETPUB20_GPIO151 = 151,
111    PCR_ETPUB5_ETPUB21_GPIO152 = 152,
112    PCR_ETPUB6_ETPUB22_GPIO153 = 153,
113    PCR_ETPUB7_ETPUB23_GPIO154 = 154,
114    PCR_ETPUB8_ETPUB24_GPIO155 = 155,
115    PCR_ETPUB9_ETPUB25_GPIO156 = 156,
116    PCR_ETPUB10_ETPUB26_GPIO157 = 157,
117    PCR_ETPUB11_ETPUB27_GPIO158 = 158,
118    PCR_ETPUB12_ETPUB28_GPIO159 = 159,
119    PCR_ETPUB13_ETPUB29_GPIO160 = 160,
120    PCR_ETPUB14_ETPUB30_GPIO161 = 161,
121    PCR_ETPUB15_ETPUB31_GPIO162 = 162,
122    PCR_ETPUB16_PCSA1_GPIO163 = 163,
123    PCR_ETPUB17_PCSA2_GPIO164 = 164,
124    PCR_ETPUB18_PCSA3_GPIO165 = 165,
125    PCR_ETPUB19_PCSA4_GPIO166 = 166,
126    PCR_ETPUB20_GPIO167 = 167,
127    PCR_ETPUB21_GPIO168 = 168,
128    PCR_ETPUB22_GPIO169 = 169,
129    PCR_ETPUB23_GPIO170 = 170,
130    PCR_ETPUB24_GPIO171 = 171,
131    PCR_ETPUB25_GPIO172 = 172,
132    PCR_ETPUB26_GPIO173 = 173,
133    PCR_ETPUB27_GPIO174 = 174,
134    PCR_ETPUB28_GPIO175 = 175,
135    PCR_ETPUB29_GPIO176 = 176,
136    PCR_ETPUB30_GPIO177 = 177,
137    PCR_ETPUB31_GPIO178 = 178,
138    PCR_EMIOS0_ETPUA0_GPIO179 = 179,
139    PCR_EMIOS1_ETPUA1_GPIO180 = 180,
140    PCR_EMIOS2_ETPUA2_GPIO181 = 181,
141    PCR_EMIOS3_ETPUA3_GPIO182 = 182,
142    PCR_EMIOS4_ETPUA4_GPIO183 = 183,
143    PCR_EMIOS5_ETPUA5_GPIO184 = 184,
144    PCR_EMIOS6_ETPUA6_GPIO185 = 185,
145    PCR_EMIOS7_ETPUA7_GPIO186 = 186,
146    PCR_EMIOS8_ETPUA8_GPIO187 = 187,
147    PCR_EMIOS9_ETPUA9_GPIO188 = 188,
148    PCR_EMIOS10_SCKD_GPIO189 = 189,
149    PCR_EMIOS11_SIND_GPIO190 = 190,
150    PCR_EMIOS12_SOUTC_GPIO191 = 191,
151    PCR_EMIOS13_SOUTD_GPIO192 = 192,
152    PCR_EMIOS14_IRQ0_GPIO193 = 193,
153    PCR_EMIOS15_IRQ1_GPIO194 = 194,
154    PCR_EMIOS16_ETPUB0_GPIO195 = 195,
155    PCR_EMIOS17_ETPUB1_GPIO196 = 196,
156    PCR_EMIOS18_ETPUB2_GPIO197 = 197,
157    PCR_EMIOS19_ETPUB3_GPIO198 = 198,
158    PCR_EMIOS20_ETPUB4_GPIO199 = 199,
159    PCR_EMIOS21_ETPUB5_GPIO200 = 200,
160    PCR_EMIOS22_ETPUB6_GPIO201 = 201,
161    PCR_EMIOS23_ETPUB7_GPIO202 = 202,
162    PCR_EMIOS24_PCSB0_GPIO203 = 203,
163    PCR_EMIOS25_PCSB1_GPIO204 = 204,
164    PCR_PLLCFG0_IRQ4_GPIO208 = 208,
165    PCR_PLLCFG1_IRQ5_GPIO209 = 209,
166    PCR_BOOTCFG0_IRQ2_GPIO211 = 211,
167    PCR_BOOTCFG1_IRQ3_GPIO212 = 212,
168    PCR_WKPCFG_NMI_GPIO213 = 213,
169    PCR_ENGCLK = 214,
170    PCR_MCKO = 219,
171    PCR_MDO0_GPIO220 = 220,
172    PCR_MDO1_GPIO221 = 221,
173    PCR_MDO2_GPIO222 = 222,
174    PCR_MDO3_GPIO223 = 223,
175    PCR_MSEO0 = 224,
176    PCR_MSEO1 = 225,
177    PCR_RDY = 226,
178    PCR_TDO = 228,
179    PCR_D_CLKOUT = 229,
180    PCR_RSTOUT = 230,
181    PCR_MDO12_GPIO231 = 231,
182    PCR_MDO13_GPIO232 = 232,
183    PCR_MDO14_GPIO233 = 233,
184    PCR_MDO15_GPIO234 = 234,
185    PCR_SCKC_SCK_C_LVDSP_GPIO235 = 235,
186    PCR_SINC_SCK_C_LVDSM_GPIO236 = 236,
187    PCR_SOUTC_SOUT_C_LVDSP_GPIO237 = 237,
188    PCR_PCSC0_SOUT_C_LVDSM_GPIO238 = 238,
189    PCR_PCSC1_GPIO239 = 239,
190    PCR_PCSC2_GPIO240 = 240,
191    PCR_PCSC3_GPIO241 = 241,
192    PCR_PCSC4_GPIO242 = 242,
193    PCR_PCSC5_GPIO243 = 243,
194    PCR_TXDC_ETRIG0_GPIO244 = 244,
195    PCR_RXDC_GPIO245 = 245,
196    PCR_CNTXD_GPIO246 = 246,
197    PCR_CNRXD_GPIO247 = 247,
198    PCR_FR_A_TX_GPIO248 = 248,
199    PCR_FR_A_RX_GPIO249 = 249,
200    PCR_FR_A_TX_EN_GPIO250 = 250,
201    PCR_FR_B_TX_GPIO251 = 251,
202    PCR_FR_B_RX_GPIO252 = 252,
203    PCR_FR_B_TX_EN_GPIO253 = 253,
204    PCR_D_CS0_GPIO256 = 256,
205    PCR_D_CS2_D_ADD_DAT31_GPIO257 = 257,
206    PCR_D_CS3_D_TEA_GPIO258 = 258,
207    PCR_D_ADD12_GPIO259 = 259,
208    PCR_D_ADD13_GPIO260 = 260,
209    PCR_D_ADD14_GPIO261 = 261,
210    PCR_D_ADD15_GPIO262 = 262,
211    PCR_D_ADD16_D_ADD_DAT16_GPIO263 = 263,
212    PCR_D_ADD17_D_ADD_DAT17_GPIO264 = 264,
213    PCR_D_ADD18_D_ADD_DAT18_GPIO265 = 265,
214    PCR_D_ADD19_D_ADD_DAT19_GPIO266 = 266,
215    PCR_D_ADD20_D_ADD_DAT20_GPIO267 = 267,
216    PCR_D_ADD21_D_ADD_DAT21_GPIO268 = 268,
217    PCR_D_ADD22_D_ADD_DAT22_GPIO269 = 269,
218    PCR_D_ADD23_D_ADD_DAT23_GPIO270 = 270,
219    PCR_D_ADD24_D_ADD_DAT24_GPIO271 = 271,
220    PCR_D_ADD25_D_ADD_DAT25_GPIO272 = 272,
221    PCR_D_ADD26_D_ADD_DAT26_GPIO273 = 273,
222    PCR_D_ADD27_D_ADD_DAT27_GPIO274 = 274,
223    PCR_D_ADD28_D_ADD_DAT28_GPIO275 = 275,
224    PCR_D_ADD29_D_ADD_DAT29_GPIO276 = 276,
225    PCR_D_ADD30_D_ADD_DAT30_GPIO277 = 277,
226    PCR_D_ADD_DAT0_GPIO278 = 278,
227    PCR_D_ADD_DAT1_GPIO279 = 279,
228    PCR_D_ADD_DAT2_GPIO280 = 280,
229    PCR_D_ADD_DAT3_GPIO281 = 281,
230    PCR_D_ADD_DAT4_GPIO282 = 282,
231    PCR_D_ADD_DAT5_GPIO283 = 283,
232    PCR_D_ADD_DAT6_GPIO284 = 284,
233    PCR_D_ADD_DAT7_GPIO285 = 285,
234    PCR_D_ADD_DAT8_GPIO286 = 286,
235    PCR_D_ADD_DAT9_GPIO287 = 287,
236    PCR_D_ADD_DAT10_GPIO288 = 288,
237    PCR_D_ADD_DAT11_GPIO289 = 289,
238    PCR_D_ADD_DAT12_GPIO290 = 290,
239    PCR_D_ADD_DAT13_GPIO291 = 291,
240    PCR_D_ADD_DAT14_GPIO292 = 292,
241    PCR_D_ADD_DAT15_GPIO293 = 293,
242    PCR_D_RD_WR_GPIO294 = 294,
243    PCR_D_WE0_GPIO295 = 295,
244    PCR_D_WE1_GPIO296 = 296,
245    PCR_D_OE_GPIO297 = 297,
246    PCR_D_TS_GPIO298 = 298,
247    PCR_D_ALE_GPIO299 = 299,
248    PCR_D_TA_GPIO300 = 300,
249    PCR_D_CS1_GPIO301 = 301,
250    PCR_D_BDIP_GPIO302 = 302,
251    PCR_D_WE2_GPIO303 = 303,
252    PCR_D_WE3_GPIO304 = 304,
253    PCR_D_ADD9_GPIO305 = 305,
254    PCR_D_ADD10_GPIO306 = 306,
255    PCR_D_ADD11_GPIO307 = 307,
256    PCR_EMIOS26_PCSB2_GPIO432 = 432,
257    PCR_EMIOS27_PCSB3_GPIO433 = 433,
258    PCR_EMIOS28_PCSC0_GPIO434 = 434,
259    PCR_EMIOS29_PCSC1_GPIO435 = 435,
260    PCR_EMIOS30_PCSC2_GPIO436 = 436,
261    PCR_EMIOS31_PCSC5_GPIO437 = 437,
262    PCR_TCRCLKC_GPIO440 = 440,
263    PCR_ETPUC0_GPIO441 = 441,
264    PCR_ETPUC1_GPIO442 = 442,
265    PCR_ETPUC2_GPIO443 = 443,
266    PCR_ETPUC3_GPIO444 = 444,
267    PCR_ETPUC4_GPIO445 = 445,
268    PCR_ETPUC5_GPIO446 = 446,
269    PCR_ETPUC6_GPIO447 = 447,
270    PCR_ETPUC7_GPIO448 = 448,
271    PCR_ETPUC8_GPIO449 = 449,
272    PCR_ETPUC9_IRQ0_GPIO450 = 450,
273    PCR_ETPUC10__IRQ1_GPIO451 = 451,
274    PCR_ETPUC11_IRQ2_GPIO452 = 452,
275    PCR_ETPUC12_IRQ3_GPIO453 = 453,
276    PCR_ETPUC13_3_IRQ4_GPIO454 = 454,
277    PCR_ETPUC14_4_IRQ5_GPIO455 = 455,
278    PCR_ETPUC15__GPIO456 = 456,
279    PCR_ETPUC16_FR_A_TX_GPIO457 = 457,
280    PCR_ETPUC17_FR_A_RX_GPIO458 = 458,
281    PCR_ETPUC18_FR_A_TX_EN_GPIO459 = 459,
282    PCR_ETPUC19_TXDA_GPIO460 = 460,
283    PCR_ETPUC20_RXDA_GPIO461 = 461,
284    PCR_ETPUC21_TXDB_GPIO462 = 462,
285    PCR_ETPUC22_RXDB_GPIO463 = 463,
286    PCR_ETPUC23_PCSD5_GPIO464 = 464,
287    PCR_ETPUC24_PCSD4_GPIO465 = 465,
288    PCR_ETPUC25_PCSD3_GPIO466 = 466,
289    PCR_ETPUC26_PCSD2_GPIO467 = 467,
290    PCR_ETPUC27_PCSD1_GPIO468 = 468,
291    PCR_ETPUC28_PCSD0_GPIO469 = 469,
292    PCR_ETPUC29_SCKD_GPIO470 = 470,
293    PCR_ETPUC30_SOUTD_GPIO471 = 471,
294    PCR_ETPUC31_SIND_GPIO472 = 472
295  #else
296    PCR_TODO
297  #endif
298} pcr_index;
299
300typedef struct mpc55xx_siu_pcr_entry {
301  uint16_t          pcr_idx; /* first PCR index for this entry      */
302  uint16_t          pcr_cnt; /* PCR count using this entry          */
303  union SIU_PCR_tag pcr_val; /* value to write to the PCR[idx++val] */
304} mpc55xx_siu_pcr_entry_t;
305
306rtems_status_code mpc55xx_siu_pcr_init(volatile struct SIU_tag *siu,
307                                       const mpc55xx_siu_pcr_entry_t *pcr_entry);
308
309#ifdef __cplusplus
310}
311#endif /* __cplusplus */
312
313#endif /* LIBCPU_POWERPC_MPC55XX_SIU_H */
Note: See TracBrowser for help on using the repository browser.