1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef __ASM_SH7785_H__
3 #define __ASM_SH7785_H__
4 
5 /* Boot Mode Pins:
6  *
7  * MODE0: CPG - Initial Pck/Bck Frequency [FRQMR1]
8  * MODE1: CPG - Initial Uck/SHck/DDRck Frequency [FRQMR1]
9  * MODE2: CPG - Reserved (L: Normal operation)
10  * MODE3: CPG - Reserved (L: Normal operation)
11  * MODE4: CPG - Initial PLL setting (72x/36x)
12  * MODE5: LBSC - Area0 Memory Type / Bus Width [CS0BCR.8]
13  * MODE6: LBSC - Area0 Memory Type / Bus Width [CS0BCR.9]
14  * MODE7: LBSC - Area0 Memory Type / Bus Width [CS0BCR.3]
15  * MODE8: LBSC - Endian Mode (L: Big, H: Little) [BCR.31]
16  * MODE9: LBSC - Master/Slave Mode (L: Slave) [BCR.30]
17  * MODE10: CPG - Clock Input (L: Ext Clk, H: Crystal)
18  * MODE11: PCI - Pin Mode (LL: PCI host, LH: PCI slave)
19  * MODE12: PCI - Pin Mode (HL: Local bus, HH: DU)
20  * MODE13: Boot Address Mode (L: 29-bit, H: 32-bit)
21  * MODE14: Reserved (H: Normal operation)
22  *
23  * More information in sh7785 manual Rev.1.00, page 1628.
24  */
25 
26 /* Pin Function Controller:
27  * GPIO_FN_xx - GPIO used to select pin function
28  * GPIO_Pxx - GPIO mapped to real I/O pin on CPU
29  */
30 enum {
31 	/* PA */
32 	GPIO_PA7, GPIO_PA6, GPIO_PA5, GPIO_PA4,
33 	GPIO_PA3, GPIO_PA2, GPIO_PA1, GPIO_PA0,
34 
35 	/* PB */
36 	GPIO_PB7, GPIO_PB6, GPIO_PB5, GPIO_PB4,
37 	GPIO_PB3, GPIO_PB2, GPIO_PB1, GPIO_PB0,
38 
39 	/* PC */
40 	GPIO_PC7, GPIO_PC6, GPIO_PC5, GPIO_PC4,
41 	GPIO_PC3, GPIO_PC2, GPIO_PC1, GPIO_PC0,
42 
43 	/* PD */
44 	GPIO_PD7, GPIO_PD6, GPIO_PD5, GPIO_PD4,
45 	GPIO_PD3, GPIO_PD2, GPIO_PD1, GPIO_PD0,
46 
47 	/* PE */
48 	GPIO_PE5, GPIO_PE4, GPIO_PE3, GPIO_PE2,
49 	GPIO_PE1, GPIO_PE0,
50 
51 	/* PF */
52 	GPIO_PF7, GPIO_PF6, GPIO_PF5, GPIO_PF4,
53 	GPIO_PF3, GPIO_PF2, GPIO_PF1, GPIO_PF0,
54 
55 	/* PG */
56 	GPIO_PG7, GPIO_PG6, GPIO_PG5, GPIO_PG4,
57 	GPIO_PG3, GPIO_PG2, GPIO_PG1, GPIO_PG0,
58 
59 	/* PH */
60 	GPIO_PH7, GPIO_PH6, GPIO_PH5, GPIO_PH4,
61 	GPIO_PH3, GPIO_PH2, GPIO_PH1, GPIO_PH0,
62 
63 	/* PJ */
64 	GPIO_PJ7, GPIO_PJ6, GPIO_PJ5, GPIO_PJ4,
65 	GPIO_PJ3, GPIO_PJ2, GPIO_PJ1, GPIO_PJ0,
66 
67 	/* PK */
68 	GPIO_PK7, GPIO_PK6, GPIO_PK5, GPIO_PK4,
69 	GPIO_PK3, GPIO_PK2, GPIO_PK1, GPIO_PK0,
70 
71 	/* PL */
72 	GPIO_PL7, GPIO_PL6, GPIO_PL5, GPIO_PL4,
73 	GPIO_PL3, GPIO_PL2, GPIO_PL1, GPIO_PL0,
74 
75 	/* PM */
76 	GPIO_PM1, GPIO_PM0,
77 
78 	/* PN */
79 	GPIO_PN7, GPIO_PN6, GPIO_PN5, GPIO_PN4,
80 	GPIO_PN3, GPIO_PN2, GPIO_PN1, GPIO_PN0,
81 
82 	/* PP */
83 	GPIO_PP5, GPIO_PP4,
84 	GPIO_PP3, GPIO_PP2, GPIO_PP1, GPIO_PP0,
85 
86 	/* PQ */
87 	GPIO_PQ4,
88 	GPIO_PQ3, GPIO_PQ2, GPIO_PQ1, GPIO_PQ0,
89 
90 	/* PR */
91 	GPIO_PR3, GPIO_PR2, GPIO_PR1, GPIO_PR0,
92 
93 	GPIO_FN_D63_AD31,
94 	GPIO_FN_D62_AD30,
95 	GPIO_FN_D61_AD29,
96 	GPIO_FN_D60_AD28,
97 	GPIO_FN_D59_AD27,
98 	GPIO_FN_D58_AD26,
99 	GPIO_FN_D57_AD25,
100 	GPIO_FN_D56_AD24,
101 	GPIO_FN_D55_AD23,
102 	GPIO_FN_D54_AD22,
103 	GPIO_FN_D53_AD21,
104 	GPIO_FN_D52_AD20,
105 	GPIO_FN_D51_AD19,
106 	GPIO_FN_D50_AD18,
107 	GPIO_FN_D49_AD17_DB5,
108 	GPIO_FN_D48_AD16_DB4,
109 	GPIO_FN_D47_AD15_DB3,
110 	GPIO_FN_D46_AD14_DB2,
111 	GPIO_FN_D45_AD13_DB1,
112 	GPIO_FN_D44_AD12_DB0,
113 	GPIO_FN_D43_AD11_DG5,
114 	GPIO_FN_D42_AD10_DG4,
115 	GPIO_FN_D41_AD9_DG3,
116 	GPIO_FN_D40_AD8_DG2,
117 	GPIO_FN_D39_AD7_DG1,
118 	GPIO_FN_D38_AD6_DG0,
119 	GPIO_FN_D37_AD5_DR5,
120 	GPIO_FN_D36_AD4_DR4,
121 	GPIO_FN_D35_AD3_DR3,
122 	GPIO_FN_D34_AD2_DR2,
123 	GPIO_FN_D33_AD1_DR1,
124 	GPIO_FN_D32_AD0_DR0,
125 	GPIO_FN_REQ1,
126 	GPIO_FN_REQ2,
127 	GPIO_FN_REQ3,
128 	GPIO_FN_GNT1,
129 	GPIO_FN_GNT2,
130 	GPIO_FN_GNT3,
131 	GPIO_FN_MMCCLK,
132 	GPIO_FN_D31,
133 	GPIO_FN_D30,
134 	GPIO_FN_D29,
135 	GPIO_FN_D28,
136 	GPIO_FN_D27,
137 	GPIO_FN_D26,
138 	GPIO_FN_D25,
139 	GPIO_FN_D24,
140 	GPIO_FN_D23,
141 	GPIO_FN_D22,
142 	GPIO_FN_D21,
143 	GPIO_FN_D20,
144 	GPIO_FN_D19,
145 	GPIO_FN_D18,
146 	GPIO_FN_D17,
147 	GPIO_FN_D16,
148 	GPIO_FN_SCIF1_SCK,
149 	GPIO_FN_SCIF1_RXD,
150 	GPIO_FN_SCIF1_TXD,
151 	GPIO_FN_SCIF0_CTS,
152 	GPIO_FN_INTD,
153 	GPIO_FN_FCE,
154 	GPIO_FN_SCIF0_RTS,
155 	GPIO_FN_HSPI_CS,
156 	GPIO_FN_FSE,
157 	GPIO_FN_SCIF0_SCK,
158 	GPIO_FN_HSPI_CLK,
159 	GPIO_FN_FRE,
160 	GPIO_FN_SCIF0_RXD,
161 	GPIO_FN_HSPI_RX,
162 	GPIO_FN_FRB,
163 	GPIO_FN_SCIF0_TXD,
164 	GPIO_FN_HSPI_TX,
165 	GPIO_FN_FWE,
166 	GPIO_FN_SCIF5_TXD,
167 	GPIO_FN_HAC1_SYNC,
168 	GPIO_FN_SSI1_WS,
169 	GPIO_FN_SIOF_TXD_PJ,
170 	GPIO_FN_HAC0_SDOUT,
171 	GPIO_FN_SSI0_SDATA,
172 	GPIO_FN_SIOF_RXD_PJ,
173 	GPIO_FN_HAC0_SDIN,
174 	GPIO_FN_SSI0_SCK,
175 	GPIO_FN_SIOF_SYNC_PJ,
176 	GPIO_FN_HAC0_SYNC,
177 	GPIO_FN_SSI0_WS,
178 	GPIO_FN_SIOF_MCLK_PJ,
179 	GPIO_FN_HAC_RES,
180 	GPIO_FN_SIOF_SCK_PJ,
181 	GPIO_FN_HAC0_BITCLK,
182 	GPIO_FN_SSI0_CLK,
183 	GPIO_FN_HAC1_BITCLK,
184 	GPIO_FN_SSI1_CLK,
185 	GPIO_FN_TCLK,
186 	GPIO_FN_IOIS16,
187 	GPIO_FN_STATUS0,
188 	GPIO_FN_DRAK0_PK3,
189 	GPIO_FN_STATUS1,
190 	GPIO_FN_DRAK1_PK2,
191 	GPIO_FN_DACK2,
192 	GPIO_FN_SCIF2_TXD,
193 	GPIO_FN_MMCCMD,
194 	GPIO_FN_SIOF_TXD_PK,
195 	GPIO_FN_DACK3,
196 	GPIO_FN_SCIF2_SCK,
197 	GPIO_FN_MMCDAT,
198 	GPIO_FN_SIOF_SCK_PK,
199 	GPIO_FN_DREQ0,
200 	GPIO_FN_DREQ1,
201 	GPIO_FN_DRAK0_PK1,
202 	GPIO_FN_DRAK1_PK0,
203 	GPIO_FN_DREQ2,
204 	GPIO_FN_INTB,
205 	GPIO_FN_DREQ3,
206 	GPIO_FN_INTC,
207 	GPIO_FN_DRAK2,
208 	GPIO_FN_CE2A,
209 	GPIO_FN_IRL4,
210 	GPIO_FN_FD4,
211 	GPIO_FN_IRL5,
212 	GPIO_FN_FD5,
213 	GPIO_FN_IRL6,
214 	GPIO_FN_FD6,
215 	GPIO_FN_IRL7,
216 	GPIO_FN_FD7,
217 	GPIO_FN_DRAK3,
218 	GPIO_FN_CE2B,
219 	GPIO_FN_BREQ_BSACK,
220 	GPIO_FN_BACK_BSREQ,
221 	GPIO_FN_SCIF5_RXD,
222 	GPIO_FN_HAC1_SDIN,
223 	GPIO_FN_SSI1_SCK,
224 	GPIO_FN_SCIF5_SCK,
225 	GPIO_FN_HAC1_SDOUT,
226 	GPIO_FN_SSI1_SDATA,
227 	GPIO_FN_SCIF3_TXD,
228 	GPIO_FN_FCLE,
229 	GPIO_FN_SCIF3_RXD,
230 	GPIO_FN_FALE,
231 	GPIO_FN_SCIF3_SCK,
232 	GPIO_FN_FD0,
233 	GPIO_FN_SCIF4_TXD,
234 	GPIO_FN_FD1,
235 	GPIO_FN_SCIF4_RXD,
236 	GPIO_FN_FD2,
237 	GPIO_FN_SCIF4_SCK,
238 	GPIO_FN_FD3,
239 	GPIO_FN_DEVSEL_DCLKOUT,
240 	GPIO_FN_STOP_CDE,
241 	GPIO_FN_LOCK_ODDF,
242 	GPIO_FN_TRDY_DISPL,
243 	GPIO_FN_IRDY_HSYNC,
244 	GPIO_FN_PCIFRAME_VSYNC,
245 	GPIO_FN_INTA,
246 	GPIO_FN_GNT0_GNTIN,
247 	GPIO_FN_REQ0_REQOUT,
248 	GPIO_FN_PERR,
249 	GPIO_FN_SERR,
250 	GPIO_FN_WE7_CBE3,
251 	GPIO_FN_WE6_CBE2,
252 	GPIO_FN_WE5_CBE1,
253 	GPIO_FN_WE4_CBE0,
254 	GPIO_FN_SCIF2_RXD,
255 	GPIO_FN_SIOF_RXD,
256 	GPIO_FN_MRESETOUT,
257 	GPIO_FN_IRQOUT,
258 };
259 
260 #endif /* __ASM_SH7785_H__ */
261