12241bfd6SKever Yang /* 22241bfd6SKever Yang * (C) Copyright 2017 Rockchip Electronics Co., Ltd 32241bfd6SKever Yang * 42241bfd6SKever Yang * SPDX-License-Identifier: GPL-2.0+ 52241bfd6SKever Yang */ 62241bfd6SKever Yang #ifndef _ASM_ARCH_GRF_RK3128_H 72241bfd6SKever Yang #define _ASM_ARCH_GRF_RK3128_H 82241bfd6SKever Yang 92241bfd6SKever Yang #include <common.h> 102241bfd6SKever Yang 112241bfd6SKever Yang struct rk3128_grf { 122241bfd6SKever Yang unsigned int reserved[0x2a]; 132241bfd6SKever Yang unsigned int gpio0a_iomux; 142241bfd6SKever Yang unsigned int gpio0b_iomux; 152241bfd6SKever Yang unsigned int gpio0c_iomux; 162241bfd6SKever Yang unsigned int gpio0d_iomux; 172241bfd6SKever Yang unsigned int gpio1a_iomux; 182241bfd6SKever Yang unsigned int gpio1b_iomux; 192241bfd6SKever Yang unsigned int gpio1c_iomux; 202241bfd6SKever Yang unsigned int gpio1d_iomux; 212241bfd6SKever Yang unsigned int gpio2a_iomux; 222241bfd6SKever Yang unsigned int gpio2b_iomux; 232241bfd6SKever Yang unsigned int gpio2c_iomux; 242241bfd6SKever Yang unsigned int gpio2d_iomux; 252241bfd6SKever Yang unsigned int gpio3a_iomux; 262241bfd6SKever Yang unsigned int gpio3b_iomux; 272241bfd6SKever Yang unsigned int gpio3c_iomux; 282241bfd6SKever Yang unsigned int gpio3d_iomux; 292241bfd6SKever Yang unsigned int gpio2c_iomux2; 302241bfd6SKever Yang unsigned int grf_cif_iomux; 312241bfd6SKever Yang unsigned int grf_cif_iomux1; 322241bfd6SKever Yang unsigned int reserved1[(0x118 - 0xf0) / 4 - 1]; 332241bfd6SKever Yang unsigned int gpio0l_pull; 342241bfd6SKever Yang unsigned int gpio0h_pull; 352241bfd6SKever Yang unsigned int gpio1l_pull; 362241bfd6SKever Yang unsigned int gpio1h_pull; 372241bfd6SKever Yang unsigned int gpio2l_pull; 382241bfd6SKever Yang unsigned int gpio2h_pull; 392241bfd6SKever Yang unsigned int gpio3l_pull; 402241bfd6SKever Yang unsigned int gpio3h_pull; 412241bfd6SKever Yang unsigned int reserved2; 422241bfd6SKever Yang unsigned int soc_con0; 432241bfd6SKever Yang unsigned int soc_con1; 442241bfd6SKever Yang unsigned int soc_con2; 452241bfd6SKever Yang unsigned int soc_status0; 462241bfd6SKever Yang unsigned int reserved3[6]; 472241bfd6SKever Yang unsigned int mac_con0; 482241bfd6SKever Yang unsigned int mac_con1; 492241bfd6SKever Yang unsigned int reserved4[4]; 502241bfd6SKever Yang unsigned int uoc0_con0; 512241bfd6SKever Yang unsigned int reserved5; 522241bfd6SKever Yang unsigned int uoc1_con1; 532241bfd6SKever Yang unsigned int uoc1_con2; 542241bfd6SKever Yang unsigned int uoc1_con3; 552241bfd6SKever Yang unsigned int uoc1_con4; 562241bfd6SKever Yang unsigned int uoc1_con5; 572241bfd6SKever Yang unsigned int reserved6; 582241bfd6SKever Yang unsigned int ddrc_stat; 592241bfd6SKever Yang unsigned int reserved9; 602241bfd6SKever Yang unsigned int soc_status1; 612241bfd6SKever Yang unsigned int cpu_con0; 622241bfd6SKever Yang unsigned int cpu_con1; 632241bfd6SKever Yang unsigned int cpu_con2; 642241bfd6SKever Yang unsigned int cpu_con3; 652241bfd6SKever Yang unsigned int reserved10; 662241bfd6SKever Yang unsigned int reserved11; 672241bfd6SKever Yang unsigned int cpu_status0; 682241bfd6SKever Yang unsigned int cpu_status1; 692241bfd6SKever Yang unsigned int os_reg[8]; 702241bfd6SKever Yang unsigned int reserved12[(0x280 - 0x1e4) / 4 - 1]; 712241bfd6SKever Yang unsigned int usbphy0_con[8]; 722241bfd6SKever Yang unsigned int usbphy1_con[8]; 732241bfd6SKever Yang unsigned int uoc_status0; 742241bfd6SKever Yang unsigned int reserved13[(0x300 - 0x2c0) / 4 - 1]; 752241bfd6SKever Yang unsigned int chip_tag; 762241bfd6SKever Yang unsigned int sdmmc_det_cnt; 772241bfd6SKever Yang }; 782241bfd6SKever Yang check_member(rk3128_grf, sdmmc_det_cnt, 0x304); 792241bfd6SKever Yang 802241bfd6SKever Yang struct rk3128_pmu { 812241bfd6SKever Yang unsigned int wakeup_cfg; 822241bfd6SKever Yang unsigned int pwrdn_con; 832241bfd6SKever Yang unsigned int pwrdn_st; 842241bfd6SKever Yang unsigned int idle_req; 852241bfd6SKever Yang unsigned int idle_st; 862241bfd6SKever Yang unsigned int pwrmode_con; 872241bfd6SKever Yang unsigned int pwr_state; 882241bfd6SKever Yang unsigned int osc_cnt; 892241bfd6SKever Yang unsigned int core_pwrdwn_cnt; 902241bfd6SKever Yang unsigned int core_pwrup_cnt; 912241bfd6SKever Yang unsigned int sft_con; 922241bfd6SKever Yang unsigned int ddr_sref_st; 932241bfd6SKever Yang unsigned int int_con; 942241bfd6SKever Yang unsigned int int_st; 952241bfd6SKever Yang unsigned int sys_reg[4]; 962241bfd6SKever Yang }; 972241bfd6SKever Yang check_member(rk3128_pmu, int_st, 0x34); 982241bfd6SKever Yang 992241bfd6SKever Yang /* GRF_GPIO0A_IOMUX */ 1002241bfd6SKever Yang enum { 1012241bfd6SKever Yang GPIO0A7_SHIFT = 14, 1022241bfd6SKever Yang GPIO0A7_MASK = 3 << GPIO0A7_SHIFT, 1032241bfd6SKever Yang GPIO0A7_GPIO = 0, 1042241bfd6SKever Yang GPIO0A7_I2C3_SDA, 1052241bfd6SKever Yang 1062241bfd6SKever Yang GPIO0A6_SHIFT = 12, 1072241bfd6SKever Yang GPIO0A6_MASK = 3 << GPIO0A6_SHIFT, 1082241bfd6SKever Yang GPIO0A6_GPIO = 0, 1092241bfd6SKever Yang GPIO0A6_I2C3_SCL, 1102241bfd6SKever Yang 1112241bfd6SKever Yang GPIO0A3_SHIFT = 6, 1122241bfd6SKever Yang GPIO0A3_MASK = 3 << GPIO0A3_SHIFT, 1132241bfd6SKever Yang GPIO0A3_GPIO = 0, 1142241bfd6SKever Yang GPIO0A3_I2C1_SDA, 1152241bfd6SKever Yang 1162241bfd6SKever Yang GPIO0A2_SHIFT = 4, 1172241bfd6SKever Yang GPIO0A2_MASK = 1 << GPIO0A2_SHIFT, 1182241bfd6SKever Yang GPIO0A2_GPIO = 0, 1192241bfd6SKever Yang GPIO0A2_I2C1_SCL, 1202241bfd6SKever Yang 1212241bfd6SKever Yang GPIO0A1_SHIFT = 2, 1222241bfd6SKever Yang GPIO0A1_MASK = 1 << GPIO0A1_SHIFT, 1232241bfd6SKever Yang GPIO0A1_GPIO = 0, 1242241bfd6SKever Yang GPIO0A1_I2C0_SDA, 1252241bfd6SKever Yang 1262241bfd6SKever Yang GPIO0A0_SHIFT = 0, 1272241bfd6SKever Yang GPIO0A0_MASK = 1 << GPIO0A0_SHIFT, 1282241bfd6SKever Yang GPIO0A0_GPIO = 0, 1292241bfd6SKever Yang GPIO0A0_I2C0_SCL, 1302241bfd6SKever Yang }; 1312241bfd6SKever Yang 1322241bfd6SKever Yang /* GRF_GPIO0B_IOMUX */ 1332241bfd6SKever Yang enum { 1342241bfd6SKever Yang GPIO0B6_SHIFT = 12, 1352241bfd6SKever Yang GPIO0B6_MASK = 3 << GPIO0B6_SHIFT, 1362241bfd6SKever Yang GPIO0B6_GPIO = 0, 1372241bfd6SKever Yang GPIO0B6_I2S_SDI, 1382241bfd6SKever Yang GPIO0B6_SPI_CSN0, 1392241bfd6SKever Yang 1402241bfd6SKever Yang GPIO0B5_SHIFT = 10, 1412241bfd6SKever Yang GPIO0B5_MASK = 3 << GPIO0B5_SHIFT, 1422241bfd6SKever Yang GPIO0B5_GPIO = 0, 1432241bfd6SKever Yang GPIO0B5_I2S_SDO, 1442241bfd6SKever Yang GPIO0B5_SPI_RXD, 1452241bfd6SKever Yang 1462241bfd6SKever Yang GPIO0B4_SHIFT = 8, 1472241bfd6SKever Yang GPIO0B4_MASK = 1 << GPIO0B4_SHIFT, 1482241bfd6SKever Yang GPIO0B4_GPIO = 0, 1492241bfd6SKever Yang GPIO0B4_I2S_LRCKTX, 1502241bfd6SKever Yang 1512241bfd6SKever Yang GPIO0B3_SHIFT = 6, 1522241bfd6SKever Yang GPIO0B3_MASK = 3 << GPIO0B3_SHIFT, 1532241bfd6SKever Yang GPIO0B3_GPIO = 0, 1542241bfd6SKever Yang GPIO0B3_I2S_LRCKRX, 1552241bfd6SKever Yang GPIO0B3_SPI_TXD, 1562241bfd6SKever Yang 1572241bfd6SKever Yang GPIO0B1_SHIFT = 2, 1582241bfd6SKever Yang GPIO0B1_MASK = 3, 1592241bfd6SKever Yang GPIO0B1_GPIO = 0, 1602241bfd6SKever Yang GPIO0B1_I2S_SCLK, 1612241bfd6SKever Yang GPIO0B1_SPI_CLK, 1622241bfd6SKever Yang 1632241bfd6SKever Yang GPIO0B0_SHIFT = 0, 1642241bfd6SKever Yang GPIO0B0_MASK = 3, 1652241bfd6SKever Yang GPIO0B0_GPIO = 0, 1662241bfd6SKever Yang GPIO0B0_I2S1_MCLK, 1672241bfd6SKever Yang }; 1682241bfd6SKever Yang 1692241bfd6SKever Yang /* GRF_GPIO0D_IOMUX */ 1702241bfd6SKever Yang enum { 1712241bfd6SKever Yang GPIO0D4_SHIFT = 8, 1722241bfd6SKever Yang GPIO0D4_MASK = 1 << GPIO0D4_SHIFT, 1732241bfd6SKever Yang GPIO0D4_GPIO = 0, 1742241bfd6SKever Yang GPIO0D4_PWM2, 1752241bfd6SKever Yang 1762241bfd6SKever Yang GPIO0D3_SHIFT = 6, 1772241bfd6SKever Yang GPIO0D3_MASK = 1 << GPIO0D3_SHIFT, 1782241bfd6SKever Yang GPIO0D3_GPIO = 0, 1792241bfd6SKever Yang GPIO0D3_PWM1, 1802241bfd6SKever Yang 1812241bfd6SKever Yang GPIO0D2_SHIFT = 4, 1822241bfd6SKever Yang GPIO0D2_MASK = 1 << GPIO0D2_SHIFT, 1832241bfd6SKever Yang GPIO0D2_GPIO = 0, 1842241bfd6SKever Yang GPIO0D2_PWM0, 1852241bfd6SKever Yang 1862241bfd6SKever Yang GPIO0D1_SHIFT = 2, 1872241bfd6SKever Yang GPIO0D1_MASK = 1 << GPIO0D1_SHIFT, 1882241bfd6SKever Yang GPIO0D1_GPIO = 0, 1892241bfd6SKever Yang GPIO0D1_UART2_CTSN, 1902241bfd6SKever Yang 1912241bfd6SKever Yang GPIO0D0_SHIFT = 0, 1922241bfd6SKever Yang GPIO0D0_MASK = 3 << GPIO0D0_SHIFT, 1932241bfd6SKever Yang GPIO0D0_GPIO = 0, 1942241bfd6SKever Yang GPIO0D0_UART2_RTSN, 1952241bfd6SKever Yang GPIO0D0_PMIC_SLEEP, 1962241bfd6SKever Yang }; 1972241bfd6SKever Yang 1982241bfd6SKever Yang /* GRF_GPIO1A_IOMUX */ 1992241bfd6SKever Yang enum { 2002241bfd6SKever Yang GPIO1A5_SHIFT = 10, 2012241bfd6SKever Yang GPIO1A5_MASK = 3 << GPIO1A5_SHIFT, 2022241bfd6SKever Yang GPIO1A5_GPIO = 0, 2032241bfd6SKever Yang GPIO1A5_I2S_SDI, 2042241bfd6SKever Yang GPIO1A5_SDMMC_DATA3, 2052241bfd6SKever Yang 2062241bfd6SKever Yang GPIO1A4_SHIFT = 8, 2072241bfd6SKever Yang GPIO1A4_MASK = 3 << GPIO1A4_SHIFT, 2082241bfd6SKever Yang GPIO1A4_GPIO = 0, 2092241bfd6SKever Yang GPIO1A4_I2S_SD0, 2102241bfd6SKever Yang GPIO1A4_SDMMC_DATA2, 2112241bfd6SKever Yang 2122241bfd6SKever Yang GPIO1A3_SHIFT = 6, 2132241bfd6SKever Yang GPIO1A3_MASK = 1 << GPIO1A3_SHIFT, 2142241bfd6SKever Yang GPIO1A3_GPIO = 0, 2152241bfd6SKever Yang GPIO1A3_I2S_LRCKTX, 2162241bfd6SKever Yang 2172241bfd6SKever Yang GPIO1A2_SHIFT = 4, 2182241bfd6SKever Yang GPIO1A2_MASK = 3 << GPIO1A2_SHIFT, 2192241bfd6SKever Yang GPIO1A2_GPIO = 0, 2202241bfd6SKever Yang GPIO1A2_I2S_LRCKRX, 2212241bfd6SKever Yang GPIO1A2_SDMMC_DATA1, 2222241bfd6SKever Yang 2232241bfd6SKever Yang GPIO1A1_SHIFT = 2, 2242241bfd6SKever Yang GPIO1A1_MASK = 3 << GPIO1A1_SHIFT, 2252241bfd6SKever Yang GPIO1A1_GPIO = 0, 2262241bfd6SKever Yang GPIO1A1_I2S_SCLK, 2272241bfd6SKever Yang GPIO1A1_SDMMC_DATA0, 2282241bfd6SKever Yang GPIO1A1_PMIC_SLEEP, 2292241bfd6SKever Yang 2302241bfd6SKever Yang GPIO1A0_SHIFT = 0, 2312241bfd6SKever Yang GPIO1A0_MASK = 3, 2322241bfd6SKever Yang GPIO1A0_GPIO = 0, 2332241bfd6SKever Yang GPIO1A0_I2S_MCLK, 2342241bfd6SKever Yang GPIO1A0_SDMMC_CLKOUT, 2352241bfd6SKever Yang GPIO1A0_XIN32K, 2362241bfd6SKever Yang 2372241bfd6SKever Yang }; 2382241bfd6SKever Yang 2392241bfd6SKever Yang /* GRF_GPIO1B_IOMUX */ 2402241bfd6SKever Yang enum { 2412241bfd6SKever Yang GPIO1B7_SHIFT = 14, 2422241bfd6SKever Yang GPIO1B7_MASK = 1 << GPIO1B7_SHIFT, 2432241bfd6SKever Yang GPIO1B7_GPIO = 0, 2442241bfd6SKever Yang GPIO1B7_MMC0_CMD, 2452241bfd6SKever Yang 2462241bfd6SKever Yang GPIO1B6_SHIFT = 12, 2472241bfd6SKever Yang GPIO1B6_MASK = 1 << GPIO1B6_SHIFT, 2482241bfd6SKever Yang GPIO1B6_GPIO = 0, 2492241bfd6SKever Yang GPIO1B6_MMC_PWREN, 2502241bfd6SKever Yang 2512241bfd6SKever Yang GPIO1B2_SHIFT = 4, 2522241bfd6SKever Yang GPIO1B2_MASK = 3 << GPIO1B2_SHIFT, 2532241bfd6SKever Yang GPIO1B2_GPIO = 0, 2542241bfd6SKever Yang GPIO1B2_SPI_RXD, 2552241bfd6SKever Yang GPIO1B2_UART1_SIN, 2562241bfd6SKever Yang 2572241bfd6SKever Yang GPIO1B1_SHIFT = 2, 2582241bfd6SKever Yang GPIO1B1_MASK = 3 << GPIO1B1_SHIFT, 2592241bfd6SKever Yang GPIO1B1_GPIO = 0, 2602241bfd6SKever Yang GPIO1B1_SPI_TXD, 2612241bfd6SKever Yang GPIO1B1_UART1_SOUT, 2622241bfd6SKever Yang 2632241bfd6SKever Yang GPIO1B0_SHIFT = 0, 2642241bfd6SKever Yang GPIO1B0_MASK = 3 << GPIO1B0_SHIFT, 2652241bfd6SKever Yang GPIO1B0_GPIO = 0, 2662241bfd6SKever Yang GPIO1B0_SPI_CLK, 2672241bfd6SKever Yang GPIO1B0_UART1_CTSN 2682241bfd6SKever Yang }; 2692241bfd6SKever Yang 2702241bfd6SKever Yang /* GRF_GPIO1C_IOMUX */ 2712241bfd6SKever Yang enum { 2722241bfd6SKever Yang GPIO1C6_SHIFT = 12, 2732241bfd6SKever Yang GPIO1C6_MASK = 3 << GPIO1C6_SHIFT, 2742241bfd6SKever Yang GPIO1C6_GPIO = 0, 2752241bfd6SKever Yang GPIO1C6_NAND_CS2, 2762241bfd6SKever Yang GPIO1C6_EMMC_CMD, 2772241bfd6SKever Yang 2782241bfd6SKever Yang GPIO1C5_SHIFT = 10, 2792241bfd6SKever Yang GPIO1C5_MASK = 3 << GPIO1C5_SHIFT, 2802241bfd6SKever Yang GPIO1C5_GPIO = 0, 2812241bfd6SKever Yang GPIO1C5_MMC0_D3, 2822241bfd6SKever Yang GPIO1C5_JTAG_TMS, 2832241bfd6SKever Yang 2842241bfd6SKever Yang GPIO1C4_SHIFT = 8, 2852241bfd6SKever Yang GPIO1C4_MASK = 3 << GPIO1C4_SHIFT, 2862241bfd6SKever Yang GPIO1C4_GPIO = 0, 2872241bfd6SKever Yang GPIO1C4_MMC0_D2, 2882241bfd6SKever Yang GPIO1C4_JTAG_TCK, 2892241bfd6SKever Yang 2902241bfd6SKever Yang GPIO1C3_SHIFT = 6, 2912241bfd6SKever Yang GPIO1C3_MASK = 3 << GPIO1C3_SHIFT, 2922241bfd6SKever Yang GPIO1C3_GPIO = 0, 2932241bfd6SKever Yang GPIO1C3_MMC0_D1, 2942241bfd6SKever Yang GPIO1C3_UART2_RX, 2952241bfd6SKever Yang 2962241bfd6SKever Yang GPIO1C2_SHIFT = 4, 2972241bfd6SKever Yang GPIO1C2_MASK = 3 << GPIO1C2_SHIFT , 2982241bfd6SKever Yang GPIO1C2_GPIO = 0, 2992241bfd6SKever Yang GPIO1C2_MMC0_D0, 3002241bfd6SKever Yang GPIO1C2_UART2_TX, 3012241bfd6SKever Yang 3022241bfd6SKever Yang GPIO1C1_SHIFT = 2, 3032241bfd6SKever Yang GPIO1C1_MASK = 1 << GPIO1C1_SHIFT, 3042241bfd6SKever Yang GPIO1C1_GPIO = 0, 3052241bfd6SKever Yang GPIO1C1_MMC0_DETN, 3062241bfd6SKever Yang 3072241bfd6SKever Yang GPIO1C0_SHIFT = 0, 3082241bfd6SKever Yang GPIO1C0_MASK = 1 << GPIO1C0_SHIFT, 3092241bfd6SKever Yang GPIO1C0_GPIO = 0, 3102241bfd6SKever Yang GPIO1C0_MMC0_CLKOUT, 3112241bfd6SKever Yang }; 3122241bfd6SKever Yang 3132241bfd6SKever Yang /* GRF_GPIO1D_IOMUX */ 3142241bfd6SKever Yang enum { 3152241bfd6SKever Yang GPIO1D7_SHIFT = 14, 3162241bfd6SKever Yang GPIO1D7_MASK = 3 << GPIO1D7_SHIFT, 3172241bfd6SKever Yang GPIO1D7_GPIO = 0, 3182241bfd6SKever Yang GPIO1D7_NAND_D7, 3192241bfd6SKever Yang GPIO1D7_EMMC_D7, 3202241bfd6SKever Yang GPIO1D7_SPI_CSN1, 3212241bfd6SKever Yang 3222241bfd6SKever Yang GPIO1D6_SHIFT = 12, 3232241bfd6SKever Yang GPIO1D6_MASK = 3 << GPIO1D6_SHIFT, 3242241bfd6SKever Yang GPIO1D6_GPIO = 0, 3252241bfd6SKever Yang GPIO1D6_NAND_D6, 3262241bfd6SKever Yang GPIO1D6_EMMC_D6, 3272241bfd6SKever Yang GPIO1D6_SPI_CSN0, 3282241bfd6SKever Yang 3292241bfd6SKever Yang GPIO1D5_SHIFT = 10, 3302241bfd6SKever Yang GPIO1D5_MASK = 3 << GPIO1D5_SHIFT, 3312241bfd6SKever Yang GPIO1D5_GPIO = 0, 3322241bfd6SKever Yang GPIO1D5_NAND_D5, 3332241bfd6SKever Yang GPIO1D5_EMMC_D5, 3342241bfd6SKever Yang GPIO1D5_SPI_TXD1, 3352241bfd6SKever Yang 3362241bfd6SKever Yang GPIO1D4_SHIFT = 8, 3372241bfd6SKever Yang GPIO1D4_MASK = 3 << GPIO1D4_SHIFT, 3382241bfd6SKever Yang GPIO1D4_GPIO = 0, 3392241bfd6SKever Yang GPIO1D4_NAND_D4, 3402241bfd6SKever Yang GPIO1D4_EMMC_D4, 3412241bfd6SKever Yang GPIO1D4_SPI_RXD1, 3422241bfd6SKever Yang 3432241bfd6SKever Yang GPIO1D3_SHIFT = 6, 3442241bfd6SKever Yang GPIO1D3_MASK = 3 << GPIO1D3_SHIFT, 3452241bfd6SKever Yang GPIO1D3_GPIO = 0, 3462241bfd6SKever Yang GPIO1D3_NAND_D3, 3472241bfd6SKever Yang GPIO1D3_EMMC_D3, 3482241bfd6SKever Yang GPIO1D3_SFC_SIO3, 3492241bfd6SKever Yang 3502241bfd6SKever Yang GPIO1D2_SHIFT = 4, 3512241bfd6SKever Yang GPIO1D2_MASK = 3 << GPIO1D2_SHIFT, 3522241bfd6SKever Yang GPIO1D2_GPIO = 0, 3532241bfd6SKever Yang GPIO1D2_NAND_D2, 3542241bfd6SKever Yang GPIO1D2_EMMC_D2, 3552241bfd6SKever Yang GPIO1D2_SFC_SIO2, 3562241bfd6SKever Yang 3572241bfd6SKever Yang GPIO1D1_SHIFT = 2, 3582241bfd6SKever Yang GPIO1D1_MASK = 3 << GPIO1D1_SHIFT, 3592241bfd6SKever Yang GPIO1D1_GPIO = 0, 3602241bfd6SKever Yang GPIO1D1_NAND_D1, 3612241bfd6SKever Yang GPIO1D1_EMMC_D1, 3622241bfd6SKever Yang GPIO1D1_SFC_SIO1, 3632241bfd6SKever Yang 3642241bfd6SKever Yang GPIO1D0_SHIFT = 0, 3652241bfd6SKever Yang GPIO1D0_MASK = 3 << GPIO1D0_SHIFT, 3662241bfd6SKever Yang GPIO1D0_GPIO = 0, 3672241bfd6SKever Yang GPIO1D0_NAND_D0, 3682241bfd6SKever Yang GPIO1D0_EMMC_D0, 3692241bfd6SKever Yang GPIO1D0_SFC_SIO0, 3702241bfd6SKever Yang }; 3712241bfd6SKever Yang 3722241bfd6SKever Yang /* GRF_GPIO2A_IOMUX */ 3732241bfd6SKever Yang enum { 3742241bfd6SKever Yang GPIO2A7_SHIFT = 14, 3752241bfd6SKever Yang GPIO2A7_MASK = 3 << GPIO2A7_SHIFT, 3762241bfd6SKever Yang GPIO2A7_GPIO = 0, 3772241bfd6SKever Yang GPIO2A7_NAND_DQS, 3782241bfd6SKever Yang GPIO2A7_EMMC_CLKOUT, 3792241bfd6SKever Yang 3802241bfd6SKever Yang GPIO2A6_SHIFT = 12, 3812241bfd6SKever Yang GPIO2A6_MASK = 1 << GPIO2A6_SHIFT, 3822241bfd6SKever Yang GPIO2A6_GPIO = 0, 3832241bfd6SKever Yang GPIO2A6_NAND_CS0, 3842241bfd6SKever Yang 3852241bfd6SKever Yang GPIO2A5_SHIFT = 10, 3862241bfd6SKever Yang GPIO2A5_MASK = 3 << GPIO2A5_SHIFT, 3872241bfd6SKever Yang GPIO2A5_GPIO = 0, 3882241bfd6SKever Yang GPIO2A5_NAND_WP, 3892241bfd6SKever Yang GPIO2A5_EMMC_PWREN, 3902241bfd6SKever Yang 3912241bfd6SKever Yang GPIO2A4_SHIFT = 8, 3922241bfd6SKever Yang GPIO2A4_MASK = 3 << GPIO2A4_SHIFT, 3932241bfd6SKever Yang GPIO2A4_GPIO = 0, 3942241bfd6SKever Yang GPIO2A4_NAND_RDY, 3952241bfd6SKever Yang GPIO2A4_EMMC_CMD, 3962241bfd6SKever Yang GPIO2A3_SFC_CLK, 3972241bfd6SKever Yang 3982241bfd6SKever Yang GPIO2A3_SHIFT = 6, 3992241bfd6SKever Yang GPIO2A3_MASK = 3 << GPIO2A3_SHIFT, 4002241bfd6SKever Yang GPIO2A3_GPIO = 0, 4012241bfd6SKever Yang GPIO2A3_NAND_RDN, 4022241bfd6SKever Yang GPIO2A4_SFC_CSN1, 4032241bfd6SKever Yang 4042241bfd6SKever Yang GPIO2A2_SHIFT = 4, 4052241bfd6SKever Yang GPIO2A2_MASK = 3 << GPIO2A2_SHIFT, 4062241bfd6SKever Yang GPIO2A2_GPIO = 0, 4072241bfd6SKever Yang GPIO2A2_NAND_WRN, 4082241bfd6SKever Yang GPIO2A4_SFC_CSN0, 4092241bfd6SKever Yang 4102241bfd6SKever Yang GPIO2A1_SHIFT = 2, 4112241bfd6SKever Yang GPIO2A1_MASK = 3 << GPIO2A1_SHIFT, 4122241bfd6SKever Yang GPIO2A1_GPIO = 0, 4132241bfd6SKever Yang GPIO2A1_NAND_CLE, 4142241bfd6SKever Yang GPIO2A1_EMMC_CLKOUT, 4152241bfd6SKever Yang 4162241bfd6SKever Yang GPIO2A0_SHIFT = 0, 4172241bfd6SKever Yang GPIO2A0_MASK = 3 << GPIO2A0_SHIFT, 4182241bfd6SKever Yang GPIO2A0_GPIO = 0, 4192241bfd6SKever Yang GPIO2A0_NAND_ALE, 4202241bfd6SKever Yang GPIO2A0_SPI_CLK, 4212241bfd6SKever Yang }; 4222241bfd6SKever Yang 4232241bfd6SKever Yang /* GRF_GPIO2B_IOMUX */ 4242241bfd6SKever Yang enum { 4252241bfd6SKever Yang GPIO2B7_SHIFT = 14, 4262241bfd6SKever Yang GPIO2B7_MASK = 3 << GPIO2B7_SHIFT, 4272241bfd6SKever Yang GPIO2B7_GPIO = 0, 4282241bfd6SKever Yang GPIO2B7_LCDC0_D13, 4292241bfd6SKever Yang GPIO2B7_EBC_SDCE5, 4302241bfd6SKever Yang GPIO2B7_GMAC_RXER, 4312241bfd6SKever Yang 4322241bfd6SKever Yang GPIO2B6_SHIFT = 12, 4332241bfd6SKever Yang GPIO2B6_MASK = 3 << GPIO2B6_SHIFT, 4342241bfd6SKever Yang GPIO2B6_GPIO = 0, 4352241bfd6SKever Yang GPIO2B6_LCDC0_D12, 4362241bfd6SKever Yang GPIO2B6_EBC_SDCE4, 4372241bfd6SKever Yang GPIO2B6_GMAC_CLK, 4382241bfd6SKever Yang 4392241bfd6SKever Yang GPIO2B5_SHIFT = 10, 4402241bfd6SKever Yang GPIO2B5_MASK = 3 << GPIO2B5_SHIFT, 4412241bfd6SKever Yang GPIO2B5_GPIO = 0, 4422241bfd6SKever Yang GPIO2B5_LCDC0_D11, 4432241bfd6SKever Yang GPIO2B5_EBC_SDCE3, 4442241bfd6SKever Yang GPIO2B5_GMAC_TXEN, 4452241bfd6SKever Yang 4462241bfd6SKever Yang GPIO2B4_SHIFT = 8, 4472241bfd6SKever Yang GPIO2B4_MASK = 3 << GPIO2B4_SHIFT, 4482241bfd6SKever Yang GPIO2B4_GPIO = 0, 4492241bfd6SKever Yang GPIO2B4_LCDC0_D10, 4502241bfd6SKever Yang GPIO2B4_EBC_SDCE2, 4512241bfd6SKever Yang GPIO2B4_GMAC_MDIO, 4522241bfd6SKever Yang 4532241bfd6SKever Yang GPIO2B3_SHIFT = 6, 4542241bfd6SKever Yang GPIO2B3_MASK = 3 << GPIO2B3_SHIFT, 4552241bfd6SKever Yang GPIO2B3_GPIO = 0, 4562241bfd6SKever Yang GPIO2B3_LCDC0_DEN, 4572241bfd6SKever Yang GPIO2B3_EBC_GDCLK, 4582241bfd6SKever Yang GPIO2B3_GMAC_RXCLK, 4592241bfd6SKever Yang 4602241bfd6SKever Yang GPIO2B2_SHIFT = 4, 4612241bfd6SKever Yang GPIO2B2_MASK = 3 << GPIO2B2_SHIFT, 4622241bfd6SKever Yang GPIO2B2_GPIO = 0, 4632241bfd6SKever Yang GPIO2B2_LCDC0_VSYNC, 4642241bfd6SKever Yang GPIO2B2_EBC_SDOE, 4652241bfd6SKever Yang GPIO2B2_GMAC_CRS, 4662241bfd6SKever Yang 4672241bfd6SKever Yang GPIO2B1_SHIFT = 2, 4682241bfd6SKever Yang GPIO2B1_MASK = 3 << GPIO2B1_SHIFT, 4692241bfd6SKever Yang GPIO2B1_GPIO = 0, 4702241bfd6SKever Yang GPIO2B1_LCDC0_HSYNC, 4712241bfd6SKever Yang GPIO2B1_EBC_SDLE, 4722241bfd6SKever Yang GPIO2B1_GMAC_TXCLK, 4732241bfd6SKever Yang 4742241bfd6SKever Yang GPIO2B0_SHIFT = 0, 4752241bfd6SKever Yang GPIO2B0_MASK = 3 << GPIO2B0_SHIFT, 4762241bfd6SKever Yang GPIO2B0_GPIO = 0, 4772241bfd6SKever Yang GPIO2B0_LCDC0_DCLK, 4782241bfd6SKever Yang GPIO2B0_EBC_SDCLK, 4792241bfd6SKever Yang GPIO2B0_GMAC_RXDV, 4802241bfd6SKever Yang }; 4812241bfd6SKever Yang 4822241bfd6SKever Yang /* GRF_GPIO2C_IOMUX */ 4832241bfd6SKever Yang enum { 4842241bfd6SKever Yang GPIO2C3_SHIFT = 6, 4852241bfd6SKever Yang GPIO2C3_MASK = 3 << GPIO2C3_SHIFT, 4862241bfd6SKever Yang GPIO2C3_GPIO = 0, 4872241bfd6SKever Yang GPIO2C3_LCDC0_D17, 4882241bfd6SKever Yang GPIO2C3_EBC_GDPWR0, 4892241bfd6SKever Yang GPIO2C3_GMAC_TXD0, 4902241bfd6SKever Yang 4912241bfd6SKever Yang GPIO2C2_SHIFT = 4, 4922241bfd6SKever Yang GPIO2C2_MASK = 3 << GPIO2C2_SHIFT, 4932241bfd6SKever Yang GPIO2C2_GPIO = 0, 4942241bfd6SKever Yang GPIO2C2_LCDC0_D16, 4952241bfd6SKever Yang GPIO2C2_EBC_GDSP, 4962241bfd6SKever Yang GPIO2C2_GMAC_TXD1, 4972241bfd6SKever Yang 4982241bfd6SKever Yang GPIO2C1_SHIFT = 2, 4992241bfd6SKever Yang GPIO2C1_MASK = 3 << GPIO2C1_SHIFT, 5002241bfd6SKever Yang GPIO2C1_GPIO = 0, 5012241bfd6SKever Yang GPIO2C1_LCDC0_D15, 5022241bfd6SKever Yang GPIO2C1_EBC_GDOE, 5032241bfd6SKever Yang GPIO2C1_GMAC_RXD0, 5042241bfd6SKever Yang 5052241bfd6SKever Yang GPIO2C0_SHIFT = 0, 5062241bfd6SKever Yang GPIO2C0_MASK = 3 << GPIO2C0_SHIFT, 5072241bfd6SKever Yang GPIO2C0_GPIO = 0, 5082241bfd6SKever Yang GPIO2C0_LCDC0_D14, 5092241bfd6SKever Yang GPIO2C0_EBC_VCOM, 5102241bfd6SKever Yang GPIO2C0_GMAC_RXD1, 5112241bfd6SKever Yang }; 5122241bfd6SKever Yang 5132241bfd6SKever Yang /* GRF_GPIO2D_IOMUX */ 5142241bfd6SKever Yang enum { 5152241bfd6SKever Yang GPIO2D6_SHIFT = 12, 5162241bfd6SKever Yang GPIO2D6_MASK = 3 << GPIO2D6_SHIFT, 5172241bfd6SKever Yang GPIO2D6_GPIO = 0, 5182241bfd6SKever Yang GPIO2D6_LCDC0_D22, 5192241bfd6SKever Yang GPIO2D6_GMAC_COL = 4, 5202241bfd6SKever Yang 5212241bfd6SKever Yang GPIO2D1_SHIFT = 2, 5222241bfd6SKever Yang GPIO2D1_MASK = 3 << GPIO2D1_SHIFT, 5232241bfd6SKever Yang GPIO2D1_GPIO = 0, 5242241bfd6SKever Yang GPIO2D1_GMAC_MDC = 3, 5252241bfd6SKever Yang }; 5262241bfd6SKever Yang 5272241bfd6SKever Yang /* GRF_GPIO2C_IOMUX2 */ 5282241bfd6SKever Yang enum { 5292241bfd6SKever Yang GPIO2C7_SHIFT = 12, 5302241bfd6SKever Yang GPIO2C7_MASK = 7 << GPIO2C7_SHIFT, 5312241bfd6SKever Yang GPIO2C7_GPIO = 0, 5322241bfd6SKever Yang GPIO2C7_GMAC_TXD3 = 4, 5332241bfd6SKever Yang 5342241bfd6SKever Yang GPIO2C6_SHIFT = 12, 5352241bfd6SKever Yang GPIO2C6_MASK = 7 << GPIO2C6_SHIFT, 5362241bfd6SKever Yang GPIO2C6_GPIO = 0, 5372241bfd6SKever Yang GPIO2C6_GMAC_TXD2 = 4, 5382241bfd6SKever Yang 539*9f9d0158SJoseph Chen GPIO2C5_SHIFT = 4, 5402241bfd6SKever Yang GPIO2C5_MASK = 7 << GPIO2C5_SHIFT, 5412241bfd6SKever Yang GPIO2C5_GPIO = 0, 5422241bfd6SKever Yang GPIO2C5_I2C2_SCL = 3, 5432241bfd6SKever Yang GPIO2C5_GMAC_RXD2, 5442241bfd6SKever Yang 545*9f9d0158SJoseph Chen GPIO2C4_SHIFT = 0, 5462241bfd6SKever Yang GPIO2C4_MASK = 7 << GPIO2C4_SHIFT, 5472241bfd6SKever Yang GPIO2C4_GPIO = 0, 5482241bfd6SKever Yang GPIO2C4_I2C2_SDA = 3, 5492241bfd6SKever Yang GPIO2C4_GMAC_RXD2, 5502241bfd6SKever Yang }; 5512241bfd6SKever Yang #endif 552