0001
0002
0003
0004
0005
0006
0007
0008
0009
0010 #ifndef __ASM_ARCH_REGS_GPIO_H
0011 #define __ASM_ARCH_REGS_GPIO_H
0012
0013 #include "map-s3c.h"
0014
0015 #define S3C24XX_MISCCR S3C24XX_GPIOREG2(0x80)
0016
0017
0018
0019 #define S3C2410_GPIO_LEAVE (0xFFFFFFFF)
0020 #define S3C2410_GPIO_INPUT (0xFFFFFFF0)
0021 #define S3C2410_GPIO_OUTPUT (0xFFFFFFF1)
0022 #define S3C2410_GPIO_IRQ (0xFFFFFFF2)
0023 #define S3C2410_GPIO_SFN2 (0xFFFFFFF2)
0024 #define S3C2410_GPIO_SFN3 (0xFFFFFFF3)
0025
0026
0027
0028
0029
0030 #define S3C2410_GPIOREG(x) ((x) + S3C24XX_VA_GPIO)
0031 #define S3C24XX_GPIOREG2(x) ((x) + S3C24XX_VA_GPIO2)
0032
0033
0034
0035
0036
0037
0038
0039 #define S3C2410_GPACON S3C2410_GPIOREG(0x00)
0040 #define S3C2410_GPADAT S3C2410_GPIOREG(0x04)
0041
0042 #define S3C2410_GPA0_ADDR0 (1<<0)
0043 #define S3C2410_GPA1_ADDR16 (1<<1)
0044 #define S3C2410_GPA2_ADDR17 (1<<2)
0045 #define S3C2410_GPA3_ADDR18 (1<<3)
0046 #define S3C2410_GPA4_ADDR19 (1<<4)
0047 #define S3C2410_GPA5_ADDR20 (1<<5)
0048 #define S3C2410_GPA6_ADDR21 (1<<6)
0049 #define S3C2410_GPA7_ADDR22 (1<<7)
0050 #define S3C2410_GPA8_ADDR23 (1<<8)
0051 #define S3C2410_GPA9_ADDR24 (1<<9)
0052 #define S3C2410_GPA10_ADDR25 (1<<10)
0053 #define S3C2410_GPA11_ADDR26 (1<<11)
0054 #define S3C2410_GPA12_nGCS1 (1<<12)
0055 #define S3C2410_GPA13_nGCS2 (1<<13)
0056 #define S3C2410_GPA14_nGCS3 (1<<14)
0057 #define S3C2410_GPA15_nGCS4 (1<<15)
0058 #define S3C2410_GPA16_nGCS5 (1<<16)
0059 #define S3C2410_GPA17_CLE (1<<17)
0060 #define S3C2410_GPA18_ALE (1<<18)
0061 #define S3C2410_GPA19_nFWE (1<<19)
0062 #define S3C2410_GPA20_nFRE (1<<20)
0063 #define S3C2410_GPA21_nRSTOUT (1<<21)
0064 #define S3C2410_GPA22_nFCE (1<<22)
0065
0066
0067
0068
0069
0070
0071
0072
0073
0074
0075
0076
0077 #define S3C2410_GPBCON S3C2410_GPIOREG(0x10)
0078 #define S3C2410_GPBDAT S3C2410_GPIOREG(0x14)
0079 #define S3C2410_GPBUP S3C2410_GPIOREG(0x18)
0080
0081
0082
0083 #define S3C2410_GPB0_TOUT0 (0x02 << 0)
0084
0085 #define S3C2410_GPB1_TOUT1 (0x02 << 2)
0086
0087 #define S3C2410_GPB2_TOUT2 (0x02 << 4)
0088
0089 #define S3C2410_GPB3_TOUT3 (0x02 << 6)
0090
0091 #define S3C2410_GPB4_TCLK0 (0x02 << 8)
0092 #define S3C2410_GPB4_MASK (0x03 << 8)
0093
0094 #define S3C2410_GPB5_nXBACK (0x02 << 10)
0095 #define S3C2443_GPB5_XBACK (0x03 << 10)
0096
0097 #define S3C2410_GPB6_nXBREQ (0x02 << 12)
0098 #define S3C2443_GPB6_XBREQ (0x03 << 12)
0099
0100 #define S3C2410_GPB7_nXDACK1 (0x02 << 14)
0101 #define S3C2443_GPB7_XDACK1 (0x03 << 14)
0102
0103 #define S3C2410_GPB8_nXDREQ1 (0x02 << 16)
0104
0105 #define S3C2410_GPB9_nXDACK0 (0x02 << 18)
0106 #define S3C2443_GPB9_XDACK0 (0x03 << 18)
0107
0108 #define S3C2410_GPB10_nXDRE0 (0x02 << 20)
0109 #define S3C2443_GPB10_XDREQ0 (0x03 << 20)
0110
0111 #define S3C2410_GPB_PUPDIS(x) (1<<(x))
0112
0113
0114
0115
0116
0117
0118
0119 #define S3C2410_GPCCON S3C2410_GPIOREG(0x20)
0120 #define S3C2410_GPCDAT S3C2410_GPIOREG(0x24)
0121 #define S3C2410_GPCUP S3C2410_GPIOREG(0x28)
0122 #define S3C2410_GPC0_LEND (0x02 << 0)
0123 #define S3C2410_GPC1_VCLK (0x02 << 2)
0124 #define S3C2410_GPC2_VLINE (0x02 << 4)
0125 #define S3C2410_GPC3_VFRAME (0x02 << 6)
0126 #define S3C2410_GPC4_VM (0x02 << 8)
0127 #define S3C2410_GPC5_LCDVF0 (0x02 << 10)
0128 #define S3C2410_GPC6_LCDVF1 (0x02 << 12)
0129 #define S3C2410_GPC7_LCDVF2 (0x02 << 14)
0130 #define S3C2410_GPC8_VD0 (0x02 << 16)
0131 #define S3C2410_GPC9_VD1 (0x02 << 18)
0132 #define S3C2410_GPC10_VD2 (0x02 << 20)
0133 #define S3C2410_GPC11_VD3 (0x02 << 22)
0134 #define S3C2410_GPC12_VD4 (0x02 << 24)
0135 #define S3C2410_GPC13_VD5 (0x02 << 26)
0136 #define S3C2410_GPC14_VD6 (0x02 << 28)
0137 #define S3C2410_GPC15_VD7 (0x02 << 30)
0138 #define S3C2410_GPC_PUPDIS(x) (1<<(x))
0139
0140
0141
0142
0143
0144
0145
0146
0147
0148
0149 #define S3C2410_GPDCON S3C2410_GPIOREG(0x30)
0150 #define S3C2410_GPDDAT S3C2410_GPIOREG(0x34)
0151 #define S3C2410_GPDUP S3C2410_GPIOREG(0x38)
0152
0153 #define S3C2410_GPD0_VD8 (0x02 << 0)
0154 #define S3C2442_GPD0_nSPICS1 (0x03 << 0)
0155
0156 #define S3C2410_GPD1_VD9 (0x02 << 2)
0157 #define S3C2442_GPD1_SPICLK1 (0x03 << 2)
0158
0159 #define S3C2410_GPD2_VD10 (0x02 << 4)
0160
0161 #define S3C2410_GPD3_VD11 (0x02 << 6)
0162
0163 #define S3C2410_GPD4_VD12 (0x02 << 8)
0164
0165 #define S3C2410_GPD5_VD13 (0x02 << 10)
0166
0167 #define S3C2410_GPD6_VD14 (0x02 << 12)
0168
0169 #define S3C2410_GPD7_VD15 (0x02 << 14)
0170
0171 #define S3C2410_GPD8_VD16 (0x02 << 16)
0172 #define S3C2440_GPD8_SPIMISO1 (0x03 << 16)
0173
0174 #define S3C2410_GPD9_VD17 (0x02 << 18)
0175 #define S3C2440_GPD9_SPIMOSI1 (0x03 << 18)
0176
0177 #define S3C2410_GPD10_VD18 (0x02 << 20)
0178 #define S3C2440_GPD10_SPICLK1 (0x03 << 20)
0179
0180 #define S3C2410_GPD11_VD19 (0x02 << 22)
0181
0182 #define S3C2410_GPD12_VD20 (0x02 << 24)
0183
0184 #define S3C2410_GPD13_VD21 (0x02 << 26)
0185
0186 #define S3C2410_GPD14_VD22 (0x02 << 28)
0187 #define S3C2410_GPD14_nSS1 (0x03 << 28)
0188
0189 #define S3C2410_GPD15_VD23 (0x02 << 30)
0190 #define S3C2410_GPD15_nSS0 (0x03 << 30)
0191
0192 #define S3C2410_GPD_PUPDIS(x) (1<<(x))
0193
0194
0195
0196
0197
0198
0199
0200
0201
0202
0203 #define S3C2410_GPECON S3C2410_GPIOREG(0x40)
0204 #define S3C2410_GPEDAT S3C2410_GPIOREG(0x44)
0205 #define S3C2410_GPEUP S3C2410_GPIOREG(0x48)
0206
0207 #define S3C2410_GPE0_I2SLRCK (0x02 << 0)
0208 #define S3C2443_GPE0_AC_nRESET (0x03 << 0)
0209 #define S3C2410_GPE0_MASK (0x03 << 0)
0210
0211 #define S3C2410_GPE1_I2SSCLK (0x02 << 2)
0212 #define S3C2443_GPE1_AC_SYNC (0x03 << 2)
0213 #define S3C2410_GPE1_MASK (0x03 << 2)
0214
0215 #define S3C2410_GPE2_CDCLK (0x02 << 4)
0216 #define S3C2443_GPE2_AC_BITCLK (0x03 << 4)
0217
0218 #define S3C2410_GPE3_I2SSDI (0x02 << 6)
0219 #define S3C2443_GPE3_AC_SDI (0x03 << 6)
0220 #define S3C2410_GPE3_nSS0 (0x03 << 6)
0221 #define S3C2410_GPE3_MASK (0x03 << 6)
0222
0223 #define S3C2410_GPE4_I2SSDO (0x02 << 8)
0224 #define S3C2443_GPE4_AC_SDO (0x03 << 8)
0225 #define S3C2410_GPE4_I2SSDI (0x03 << 8)
0226 #define S3C2410_GPE4_MASK (0x03 << 8)
0227
0228 #define S3C2410_GPE5_SDCLK (0x02 << 10)
0229 #define S3C2443_GPE5_SD1_CLK (0x02 << 10)
0230 #define S3C2443_GPE5_AC_BITCLK (0x03 << 10)
0231
0232 #define S3C2410_GPE6_SDCMD (0x02 << 12)
0233 #define S3C2443_GPE6_SD1_CMD (0x02 << 12)
0234 #define S3C2443_GPE6_AC_SDI (0x03 << 12)
0235
0236 #define S3C2410_GPE7_SDDAT0 (0x02 << 14)
0237 #define S3C2443_GPE5_SD1_DAT0 (0x02 << 14)
0238 #define S3C2443_GPE7_AC_SDO (0x03 << 14)
0239
0240 #define S3C2410_GPE8_SDDAT1 (0x02 << 16)
0241 #define S3C2443_GPE8_SD1_DAT1 (0x02 << 16)
0242 #define S3C2443_GPE8_AC_SYNC (0x03 << 16)
0243
0244 #define S3C2410_GPE9_SDDAT2 (0x02 << 18)
0245 #define S3C2443_GPE9_SD1_DAT2 (0x02 << 18)
0246 #define S3C2443_GPE9_AC_nRESET (0x03 << 18)
0247
0248 #define S3C2410_GPE10_SDDAT3 (0x02 << 20)
0249 #define S3C2443_GPE10_SD1_DAT3 (0x02 << 20)
0250
0251 #define S3C2410_GPE11_SPIMISO0 (0x02 << 22)
0252
0253 #define S3C2410_GPE12_SPIMOSI0 (0x02 << 24)
0254
0255 #define S3C2410_GPE13_SPICLK0 (0x02 << 26)
0256
0257 #define S3C2410_GPE14_IICSCL (0x02 << 28)
0258 #define S3C2410_GPE14_MASK (0x03 << 28)
0259
0260 #define S3C2410_GPE15_IICSDA (0x02 << 30)
0261 #define S3C2410_GPE15_MASK (0x03 << 30)
0262
0263 #define S3C2440_GPE0_ACSYNC (0x03 << 0)
0264 #define S3C2440_GPE1_ACBITCLK (0x03 << 2)
0265 #define S3C2440_GPE2_ACRESET (0x03 << 4)
0266 #define S3C2440_GPE3_ACIN (0x03 << 6)
0267 #define S3C2440_GPE4_ACOUT (0x03 << 8)
0268
0269 #define S3C2410_GPE_PUPDIS(x) (1<<(x))
0270
0271
0272
0273
0274
0275
0276
0277
0278
0279
0280
0281
0282
0283
0284 #define S3C2410_GPFCON S3C2410_GPIOREG(0x50)
0285 #define S3C2410_GPFDAT S3C2410_GPIOREG(0x54)
0286 #define S3C2410_GPFUP S3C2410_GPIOREG(0x58)
0287
0288 #define S3C2410_GPF0_EINT0 (0x02 << 0)
0289 #define S3C2410_GPF1_EINT1 (0x02 << 2)
0290 #define S3C2410_GPF2_EINT2 (0x02 << 4)
0291 #define S3C2410_GPF3_EINT3 (0x02 << 6)
0292 #define S3C2410_GPF4_EINT4 (0x02 << 8)
0293 #define S3C2410_GPF5_EINT5 (0x02 << 10)
0294 #define S3C2410_GPF6_EINT6 (0x02 << 12)
0295 #define S3C2410_GPF7_EINT7 (0x02 << 14)
0296 #define S3C2410_GPF_PUPDIS(x) (1<<(x))
0297
0298
0299
0300
0301
0302
0303
0304
0305
0306
0307 #define S3C2410_GPGCON S3C2410_GPIOREG(0x60)
0308 #define S3C2410_GPGDAT S3C2410_GPIOREG(0x64)
0309 #define S3C2410_GPGUP S3C2410_GPIOREG(0x68)
0310
0311 #define S3C2410_GPG0_EINT8 (0x02 << 0)
0312
0313 #define S3C2410_GPG1_EINT9 (0x02 << 2)
0314
0315 #define S3C2410_GPG2_EINT10 (0x02 << 4)
0316 #define S3C2410_GPG2_nSS0 (0x03 << 4)
0317
0318 #define S3C2410_GPG3_EINT11 (0x02 << 6)
0319 #define S3C2410_GPG3_nSS1 (0x03 << 6)
0320
0321 #define S3C2410_GPG4_EINT12 (0x02 << 8)
0322 #define S3C2410_GPG4_LCDPWREN (0x03 << 8)
0323 #define S3C2443_GPG4_LCDPWRDN (0x03 << 8)
0324
0325 #define S3C2410_GPG5_EINT13 (0x02 << 10)
0326 #define S3C2410_GPG5_SPIMISO1 (0x03 << 10)
0327
0328 #define S3C2410_GPG6_EINT14 (0x02 << 12)
0329 #define S3C2410_GPG6_SPIMOSI1 (0x03 << 12)
0330
0331 #define S3C2410_GPG7_EINT15 (0x02 << 14)
0332 #define S3C2410_GPG7_SPICLK1 (0x03 << 14)
0333
0334 #define S3C2410_GPG8_EINT16 (0x02 << 16)
0335
0336 #define S3C2410_GPG9_EINT17 (0x02 << 18)
0337
0338 #define S3C2410_GPG10_EINT18 (0x02 << 20)
0339
0340 #define S3C2410_GPG11_EINT19 (0x02 << 22)
0341 #define S3C2410_GPG11_TCLK1 (0x03 << 22)
0342 #define S3C2443_GPG11_CF_nIREQ (0x03 << 22)
0343
0344 #define S3C2410_GPG12_EINT20 (0x02 << 24)
0345 #define S3C2410_GPG12_XMON (0x03 << 24)
0346 #define S3C2442_GPG12_nSPICS0 (0x03 << 24)
0347 #define S3C2443_GPG12_nINPACK (0x03 << 24)
0348
0349 #define S3C2410_GPG13_EINT21 (0x02 << 26)
0350 #define S3C2410_GPG13_nXPON (0x03 << 26)
0351 #define S3C2443_GPG13_CF_nREG (0x03 << 26)
0352
0353 #define S3C2410_GPG14_EINT22 (0x02 << 28)
0354 #define S3C2410_GPG14_YMON (0x03 << 28)
0355 #define S3C2443_GPG14_CF_RESET (0x03 << 28)
0356
0357 #define S3C2410_GPG15_EINT23 (0x02 << 30)
0358 #define S3C2410_GPG15_nYPON (0x03 << 30)
0359 #define S3C2443_GPG15_CF_PWR (0x03 << 30)
0360
0361 #define S3C2410_GPG_PUPDIS(x) (1<<(x))
0362
0363
0364
0365
0366
0367
0368
0369
0370
0371 #define S3C2410_GPHCON S3C2410_GPIOREG(0x70)
0372 #define S3C2410_GPHDAT S3C2410_GPIOREG(0x74)
0373 #define S3C2410_GPHUP S3C2410_GPIOREG(0x78)
0374
0375 #define S3C2410_GPH0_nCTS0 (0x02 << 0)
0376 #define S3C2416_GPH0_TXD0 (0x02 << 0)
0377
0378 #define S3C2410_GPH1_nRTS0 (0x02 << 2)
0379 #define S3C2416_GPH1_RXD0 (0x02 << 2)
0380
0381 #define S3C2410_GPH2_TXD0 (0x02 << 4)
0382 #define S3C2416_GPH2_TXD1 (0x02 << 4)
0383
0384 #define S3C2410_GPH3_RXD0 (0x02 << 6)
0385 #define S3C2416_GPH3_RXD1 (0x02 << 6)
0386
0387 #define S3C2410_GPH4_TXD1 (0x02 << 8)
0388 #define S3C2416_GPH4_TXD2 (0x02 << 8)
0389
0390 #define S3C2410_GPH5_RXD1 (0x02 << 10)
0391 #define S3C2416_GPH5_RXD2 (0x02 << 10)
0392
0393 #define S3C2410_GPH6_TXD2 (0x02 << 12)
0394 #define S3C2416_GPH6_TXD3 (0x02 << 12)
0395 #define S3C2410_GPH6_nRTS1 (0x03 << 12)
0396 #define S3C2416_GPH6_nRTS2 (0x03 << 12)
0397
0398 #define S3C2410_GPH7_RXD2 (0x02 << 14)
0399 #define S3C2416_GPH7_RXD3 (0x02 << 14)
0400 #define S3C2410_GPH7_nCTS1 (0x03 << 14)
0401 #define S3C2416_GPH7_nCTS2 (0x03 << 14)
0402
0403 #define S3C2410_GPH8_UCLK (0x02 << 16)
0404 #define S3C2416_GPH8_nCTS0 (0x02 << 16)
0405
0406 #define S3C2410_GPH9_CLKOUT0 (0x02 << 18)
0407 #define S3C2442_GPH9_nSPICS0 (0x03 << 18)
0408 #define S3C2416_GPH9_nRTS0 (0x02 << 18)
0409
0410 #define S3C2410_GPH10_CLKOUT1 (0x02 << 20)
0411 #define S3C2416_GPH10_nCTS1 (0x02 << 20)
0412
0413 #define S3C2416_GPH11_nRTS1 (0x02 << 22)
0414
0415 #define S3C2416_GPH12_EXTUARTCLK (0x02 << 24)
0416
0417 #define S3C2416_GPH13_CLKOUT0 (0x02 << 26)
0418
0419 #define S3C2416_GPH14_CLKOUT1 (0x02 << 28)
0420
0421
0422
0423
0424
0425
0426
0427
0428
0429
0430
0431
0432
0433
0434 #define S3C2413_GPJCON S3C2410_GPIOREG(0x80)
0435 #define S3C2413_GPJDAT S3C2410_GPIOREG(0x84)
0436 #define S3C2413_GPJUP S3C2410_GPIOREG(0x88)
0437 #define S3C2413_GPJSLPCON S3C2410_GPIOREG(0x8C)
0438
0439
0440 #define S3C2440_GPJCON S3C2410_GPIOREG(0xD0)
0441 #define S3C2440_GPJDAT S3C2410_GPIOREG(0xD4)
0442 #define S3C2440_GPJUP S3C2410_GPIOREG(0xD8)
0443
0444 #define S3C2443_GPKCON S3C2410_GPIOREG(0xE0)
0445 #define S3C2443_GPKDAT S3C2410_GPIOREG(0xE4)
0446 #define S3C2443_GPKUP S3C2410_GPIOREG(0xE8)
0447
0448 #define S3C2443_GPLCON S3C2410_GPIOREG(0xF0)
0449 #define S3C2443_GPLDAT S3C2410_GPIOREG(0xF4)
0450 #define S3C2443_GPLUP S3C2410_GPIOREG(0xF8)
0451
0452 #define S3C2443_GPMCON S3C2410_GPIOREG(0x100)
0453 #define S3C2443_GPMDAT S3C2410_GPIOREG(0x104)
0454 #define S3C2443_GPMUP S3C2410_GPIOREG(0x108)
0455
0456
0457 #define S3C2410_MISCCR S3C2410_GPIOREG(0x80)
0458
0459
0460
0461
0462 #define S3C2410_MISCCR_SPUCR_HEN (0<<0)
0463 #define S3C2410_MISCCR_SPUCR_HDIS (1<<0)
0464 #define S3C2410_MISCCR_SPUCR_LEN (0<<1)
0465 #define S3C2410_MISCCR_SPUCR_LDIS (1<<1)
0466
0467 #define S3C2410_MISCCR_USBDEV (0<<3)
0468 #define S3C2410_MISCCR_USBHOST (1<<3)
0469
0470 #define S3C2410_MISCCR_CLK0_MPLL (0<<4)
0471 #define S3C2410_MISCCR_CLK0_UPLL (1<<4)
0472 #define S3C2410_MISCCR_CLK0_FCLK (2<<4)
0473 #define S3C2410_MISCCR_CLK0_HCLK (3<<4)
0474 #define S3C2410_MISCCR_CLK0_PCLK (4<<4)
0475 #define S3C2410_MISCCR_CLK0_DCLK0 (5<<4)
0476 #define S3C2410_MISCCR_CLK0_MASK (7<<4)
0477
0478 #define S3C2412_MISCCR_CLK0_RTC (2<<4)
0479
0480 #define S3C2410_MISCCR_CLK1_MPLL (0<<8)
0481 #define S3C2410_MISCCR_CLK1_UPLL (1<<8)
0482 #define S3C2410_MISCCR_CLK1_FCLK (2<<8)
0483 #define S3C2410_MISCCR_CLK1_HCLK (3<<8)
0484 #define S3C2410_MISCCR_CLK1_PCLK (4<<8)
0485 #define S3C2410_MISCCR_CLK1_DCLK1 (5<<8)
0486 #define S3C2410_MISCCR_CLK1_MASK (7<<8)
0487
0488 #define S3C2412_MISCCR_CLK1_CLKsrc (0<<8)
0489
0490 #define S3C2410_MISCCR_USBSUSPND0 (1<<12)
0491 #define S3C2416_MISCCR_SEL_SUSPND (1<<12)
0492 #define S3C2410_MISCCR_USBSUSPND1 (1<<13)
0493
0494 #define S3C2410_MISCCR_nRSTCON (1<<16)
0495
0496 #define S3C2410_MISCCR_nEN_SCLK0 (1<<17)
0497 #define S3C2410_MISCCR_nEN_SCLK1 (1<<18)
0498 #define S3C2410_MISCCR_nEN_SCLKE (1<<19)
0499 #define S3C2410_MISCCR_SDSLEEP (7<<17)
0500
0501 #define S3C2416_MISCCR_FLT_I2C (1<<24)
0502 #define S3C2416_MISCCR_HSSPI_EN2 (1<<31)
0503
0504
0505
0506
0507
0508
0509
0510
0511
0512
0513 #define S3C2410_EXTINT0 S3C2410_GPIOREG(0x88)
0514 #define S3C2410_EXTINT1 S3C2410_GPIOREG(0x8C)
0515 #define S3C2410_EXTINT2 S3C2410_GPIOREG(0x90)
0516
0517 #define S3C24XX_EXTINT0 S3C24XX_GPIOREG2(0x88)
0518 #define S3C24XX_EXTINT1 S3C24XX_GPIOREG2(0x8C)
0519 #define S3C24XX_EXTINT2 S3C24XX_GPIOREG2(0x90)
0520
0521
0522 #define S3C2410_EINFLT0 S3C2410_GPIOREG(0x94)
0523 #define S3C2410_EINFLT1 S3C2410_GPIOREG(0x98)
0524 #define S3C2410_EINFLT2 S3C2410_GPIOREG(0x9C)
0525 #define S3C2410_EINFLT3 S3C2410_GPIOREG(0xA0)
0526
0527 #define S3C24XX_EINFLT0 S3C24XX_GPIOREG2(0x94)
0528 #define S3C24XX_EINFLT1 S3C24XX_GPIOREG2(0x98)
0529 #define S3C24XX_EINFLT2 S3C24XX_GPIOREG2(0x9C)
0530 #define S3C24XX_EINFLT3 S3C24XX_GPIOREG2(0xA0)
0531
0532
0533 #define S3C2410_EINTFLT_PCLK (0x00)
0534 #define S3C2410_EINTFLT_EXTCLK (1<<7)
0535 #define S3C2410_EINTFLT_WIDTHMSK(x) ((x) & 0x3f)
0536
0537
0538
0539
0540
0541
0542
0543
0544 #define S3C2410_GSTATUS0 S3C2410_GPIOREG(0x0AC)
0545 #define S3C2410_GSTATUS1 S3C2410_GPIOREG(0x0B0)
0546 #define S3C2410_GSTATUS2 S3C2410_GPIOREG(0x0B4)
0547 #define S3C2410_GSTATUS3 S3C2410_GPIOREG(0x0B8)
0548 #define S3C2410_GSTATUS4 S3C2410_GPIOREG(0x0BC)
0549
0550 #define S3C2412_GSTATUS0 S3C2410_GPIOREG(0x0BC)
0551 #define S3C2412_GSTATUS1 S3C2410_GPIOREG(0x0C0)
0552 #define S3C2412_GSTATUS2 S3C2410_GPIOREG(0x0C4)
0553 #define S3C2412_GSTATUS3 S3C2410_GPIOREG(0x0C8)
0554 #define S3C2412_GSTATUS4 S3C2410_GPIOREG(0x0CC)
0555
0556 #define S3C24XX_GSTATUS0 S3C24XX_GPIOREG2(0x0AC)
0557 #define S3C24XX_GSTATUS1 S3C24XX_GPIOREG2(0x0B0)
0558 #define S3C24XX_GSTATUS2 S3C24XX_GPIOREG2(0x0B4)
0559 #define S3C24XX_GSTATUS3 S3C24XX_GPIOREG2(0x0B8)
0560 #define S3C24XX_GSTATUS4 S3C24XX_GPIOREG2(0x0BC)
0561
0562 #define S3C2410_GSTATUS0_nWAIT (1<<3)
0563 #define S3C2410_GSTATUS0_NCON (1<<2)
0564 #define S3C2410_GSTATUS0_RnB (1<<1)
0565 #define S3C2410_GSTATUS0_nBATTFLT (1<<0)
0566
0567 #define S3C2410_GSTATUS1_IDMASK (0xffff0000)
0568 #define S3C2410_GSTATUS1_2410 (0x32410000)
0569 #define S3C2410_GSTATUS1_2412 (0x32412001)
0570 #define S3C2410_GSTATUS1_2416 (0x32416003)
0571 #define S3C2410_GSTATUS1_2440 (0x32440000)
0572 #define S3C2410_GSTATUS1_2442 (0x32440aaa)
0573
0574 #define S3C2410_GSTATUS1_2450 (0x32450003)
0575
0576 #define S3C2410_GSTATUS2_WTRESET (1<<2)
0577 #define S3C2410_GSTATUS2_OFFRESET (1<<1)
0578 #define S3C2410_GSTATUS2_PONRESET (1<<0)
0579
0580
0581
0582 #define S3C2412_GPBSLPCON S3C2410_GPIOREG(0x1C)
0583 #define S3C2412_GPCSLPCON S3C2410_GPIOREG(0x2C)
0584 #define S3C2412_GPDSLPCON S3C2410_GPIOREG(0x3C)
0585 #define S3C2412_GPFSLPCON S3C2410_GPIOREG(0x5C)
0586 #define S3C2412_GPGSLPCON S3C2410_GPIOREG(0x6C)
0587 #define S3C2412_GPHSLPCON S3C2410_GPIOREG(0x7C)
0588
0589
0590 #define S3C2412_GPIO_SLPCON_LOW ( 0x00 )
0591 #define S3C2412_GPIO_SLPCON_HIGH ( 0x01 )
0592 #define S3C2412_GPIO_SLPCON_IN ( 0x02 )
0593 #define S3C2412_GPIO_SLPCON_PULL ( 0x03 )
0594
0595 #define S3C2412_SLPCON_LOW(x) ( 0x00 << ((x) * 2))
0596 #define S3C2412_SLPCON_HIGH(x) ( 0x01 << ((x) * 2))
0597 #define S3C2412_SLPCON_IN(x) ( 0x02 << ((x) * 2))
0598 #define S3C2412_SLPCON_PULL(x) ( 0x03 << ((x) * 2))
0599 #define S3C2412_SLPCON_EINT(x) ( 0x02 << ((x) * 2))
0600 #define S3C2412_SLPCON_MASK(x) ( 0x03 << ((x) * 2))
0601
0602 #define S3C2412_SLPCON_ALL_LOW (0x0)
0603 #define S3C2412_SLPCON_ALL_HIGH (0x11111111 | 0x44444444)
0604 #define S3C2412_SLPCON_ALL_IN (0x22222222 | 0x88888888)
0605 #define S3C2412_SLPCON_ALL_PULL (0x33333333)
0606
0607 #endif
0608