Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
sh73a0.h
Go to the documentation of this file.
1 #ifndef __ASM_SH73A0_H__
2 #define __ASM_SH73A0_H__
3 
4 /* Pin Function Controller:
5  * GPIO_FN_xx - GPIO used to select pin function and MSEL switch
6  * GPIO_PORTxx - GPIO mapped to real I/O pin on CPU
7  */
8 enum {
9  /* Hardware manual Table 25-1 (GPIO) */
12 
15 
18 
21 
24 
27 
30 
33 
36 
39 
42 
45 
47 
50 
53 
56 
58 
61 
64 
67 
70 
73 
76 
79 
82 
85 
87 
89 
92 
95 
96  /* Table 25-1 (Function 0-7) */
111  GPIO_FN_PORT16_VIO_CKOR,
123  GPIO_FN_MFG0_OUT1, GPIO_FN_PORT27_IROUT,
125  GPIO_FN_PORT28_TPU1TO1,
147  GPIO_FN_FSIAOMC,
149 
153  GPIO_FN_FSIBSPDIF, GPIO_FN_PORT53_FSICSPDIF,
155  GPIO_FN_FSIBOMC, GPIO_FN_FSICCK, GPIO_FN_FSICOMC,
216  GPIO_FN_PORT115_I2C_SCL3,
218  GPIO_FN_PORT116_I2C_SDA3,
222  GPIO_FN_LCD2D0,
223 
225  GPIO_FN_VIO2_HD, GPIO_FN_LCD2D1,
228  GPIO_FN_PORT131_KEYOUT11, GPIO_FN_LCD2D11,
230  GPIO_FN_PORT132_KEYOUT10, GPIO_FN_LCD2D12,
237  GPIO_FN_LCD2D6,
239  GPIO_FN_LCD2D7,
243  GPIO_FN_LCD2D2,
245  GPIO_FN_VIO2_D5, GPIO_FN_LCD2D3,
247  GPIO_FN_LCD2D4,
249  GPIO_FN_PORT145_LCD2RS, GPIO_FN_VIO2_D7, GPIO_FN_LCD2D5,
251  GPIO_FN_VIO2_CLK, GPIO_FN_LCD2D18,
255  GPIO_FN_PORT149_KEYOUT9,
270  GPIO_FN_TPU3TO0,
277  GPIO_FN_TPU2TO1,
300  GPIO_FN_PORT218_VIO_CKOR,
303  GPIO_FN_LCD2DCK_2,
307  GPIO_FN_PORT221_LCD2HSYN,
310 
321  GPIO_FN_LCD2D20,
323  GPIO_FN_LCD2D21,
330  GPIO_FN_TPU4TO0,
334  GPIO_FN_PORT244_SCIFB_CTS_, GPIO_FN_MSIOF2R_RXD,
336  GPIO_FN_PORT245_SCIFB_RTS_, GPIO_FN_MSIOF2R_TXD,
338  GPIO_FN_PORT246_SCIFB_RXD, GPIO_FN_TPU1TO0,
340  GPIO_FN_PORT247_SCIFB_TXD, GPIO_FN_TPU3TO1,
342  GPIO_FN_PORT248_SCIFB_SCK, GPIO_FN_TPU2TO0, \
343  GPIO_FN_PORT248_I2C_SCL3, GPIO_FN_MSIOF2R_TSCK,
345  GPIO_FN_PORT249_I2C_SDA3, GPIO_FN_MSIOF2R_TSYNC,
388 
398 
399  /* MSEL2 special case */
425 
426  /* MSEL3 special cases */
433 
434  /* MSEL4 special cases */
444 
445  /* Functions with pull-ups */
485 
486  /* end of GPIO */
488 };
489 
490 /* DMA slave IDs */
491 enum {
526 };
527 
528 /*
529  * SH73A0 IRQ LOCATION TABLE
530  *
531  * 416 -----------------------------------------
532  * IRQ0-IRQ15
533  * 431 -----------------------------------------
534  * ...
535  * 448 -----------------------------------------
536  * sh73a0-intcs
537  * sh73a0-intca-irq-pins
538  * 680 -----------------------------------------
539  * ...
540  * 700 -----------------------------------------
541  * sh73a0-pint0
542  * 731 -----------------------------------------
543  * 732 -----------------------------------------
544  * sh73a0-pint1
545  * 739 -----------------------------------------
546  * ...
547  * 800 -----------------------------------------
548  * IRQ16-IRQ31
549  * 815 -----------------------------------------
550  * ...
551  * 928 -----------------------------------------
552  * sh73a0-intca-irq-pins
553  * 943 -----------------------------------------
554  */
555 
556 /* PINT interrupts are located at Linux IRQ 700 and up */
557 #define SH73A0_PINT0_IRQ(irq) ((irq) + 700)
558 #define SH73A0_PINT1_IRQ(irq) ((irq) + 732)
559 
560 extern struct smp_operations sh73a0_smp_ops;
561 
562 #endif /* __ASM_SH73A0_H__ */