| /* |
| * Copyright 2013 Linaro Ltd. |
| * |
| * The code contained herein is licensed under the GNU General Public |
| * License. You may obtain a copy of the GNU General Public License |
| * Version 2 or later at the following locations: |
| * |
| * http://www.opensource.org/licenses/gpl-license.html |
| * http://www.gnu.org/copyleft/gpl.html |
| */ |
| |
| #include "ste-nomadik-pinctrl.dtsi" |
| |
| / { |
| soc { |
| pinctrl { |
| /* Settings for all UART default and sleep states */ |
| uart0 { |
| uart0_default_mode: uart0_default { |
| default_mux { |
| ste,function = "u0"; |
| ste,pins = "u0_a_1"; |
| }; |
| default_cfg1 { |
| ste,pins = "GPIO0_AJ5", "GPIO2_AH4"; /* CTS+RXD */ |
| ste,config = <&in_pu>; |
| }; |
| |
| default_cfg2 { |
| ste,pins = "GPIO1_AJ3", "GPIO3_AH3"; /* RTS+TXD */ |
| ste,config = <&out_hi>; |
| }; |
| }; |
| |
| uart0_sleep_mode: uart0_sleep { |
| sleep_cfg1 { |
| ste,pins = "GPIO0_AJ5", "GPIO2_AH4"; /* CTS+RXD */ |
| ste,config = <&slpm_in_wkup_pdis>; |
| }; |
| |
| sleep_cfg2 { |
| ste,pins = "GPIO1_AJ3"; /* RTS */ |
| ste,config = <&slpm_out_hi_wkup_pdis>; |
| }; |
| |
| sleep_cfg3 { |
| ste,pins = "GPIO3_AH3"; /* TXD */ |
| ste,config = <&slpm_out_wkup_pdis>; |
| }; |
| }; |
| }; |
| |
| uart1 { |
| uart1_default_mode: uart1_default { |
| default_mux { |
| ste,function = "u1"; |
| ste,pins = "u1rxtx_a_1"; |
| }; |
| default_cfg1 { |
| ste,pins = "GPIO4_AH6"; /* RXD */ |
| ste,config = <&in_pu>; |
| }; |
| |
| default_cfg2 { |
| ste,pins = "GPIO5_AG6"; /* TXD */ |
| ste,config = <&out_hi>; |
| }; |
| }; |
| |
| uart1_sleep_mode: uart1_sleep { |
| sleep_cfg1 { |
| ste,pins = "GPIO4_AH6"; /* RXD */ |
| ste,config = <&slpm_in_wkup_pdis>; |
| }; |
| |
| sleep_cfg2 { |
| ste,pins = "GPIO5_AG6"; /* TXD */ |
| ste,config = <&slpm_out_wkup_pdis>; |
| }; |
| }; |
| }; |
| |
| uart2 { |
| uart2_default_mode: uart2_default { |
| default_mux { |
| ste,function = "u2"; |
| ste,pins = "u2rxtx_c_1"; |
| }; |
| default_cfg1 { |
| ste,pins = "GPIO29_W2"; /* RXD */ |
| ste,config = <&in_pu>; |
| }; |
| |
| default_cfg2 { |
| ste,pins = "GPIO30_W3"; /* TXD */ |
| ste,config = <&out_hi>; |
| }; |
| }; |
| |
| uart2_sleep_mode: uart2_sleep { |
| sleep_cfg1 { |
| ste,pins = "GPIO29_W2"; /* RXD */ |
| ste,config = <&in_wkup_pdis>; |
| }; |
| |
| sleep_cfg2 { |
| ste,pins = "GPIO30_W3"; /* TXD */ |
| ste,config = <&out_wkup_pdis>; |
| }; |
| }; |
| }; |
| |
| /* Settings for all I2C default and sleep states */ |
| i2c0 { |
| i2c0_default_mode: i2c_default { |
| default_mux { |
| ste,function = "i2c0"; |
| ste,pins = "i2c0_a_1"; |
| }; |
| default_cfg1 { |
| ste,pins = "GPIO147_C15", "GPIO148_B16"; /* SDA/SCL */ |
| ste,config = <&in_pu>; |
| }; |
| }; |
| |
| i2c0_sleep_mode: i2c_sleep { |
| sleep_cfg1 { |
| ste,pins = "GPIO147_C15", "GPIO148_B16"; /* SDA/SCL */ |
| ste,config = <&slpm_in_wkup_pdis>; |
| }; |
| }; |
| }; |
| |
| i2c1 { |
| i2c1_default_mode: i2c_default { |
| default_mux { |
| ste,function = "i2c1"; |
| ste,pins = "i2c1_b_2"; |
| }; |
| default_cfg1 { |
| ste,pins = "GPIO16_AD3", "GPIO17_AD4"; /* SDA/SCL */ |
| ste,config = <&in_pu>; |
| }; |
| }; |
| |
| i2c1_sleep_mode: i2c_sleep { |
| sleep_cfg1 { |
| ste,pins = "GPIO16_AD3", "GPIO17_AD4"; /* SDA/SCL */ |
| ste,config = <&slpm_in_wkup_pdis>; |
| }; |
| }; |
| }; |
| |
| i2c2 { |
| i2c2_default_mode: i2c_default { |
| default_mux { |
| ste,function = "i2c2"; |
| ste,pins = "i2c2_b_2"; |
| }; |
| default_cfg1 { |
| ste,pins = "GPIO10_AF5", "GPIO11_AG4"; /* SDA/SCL */ |
| ste,config = <&in_pu>; |
| }; |
| }; |
| |
| i2c2_sleep_mode: i2c_sleep { |
| sleep_cfg1 { |
| ste,pins = "GPIO10_AF5", "GPIO11_AG4"; /* SDA/SCL */ |
| ste,config = <&slpm_in_wkup_pdis>; |
| }; |
| }; |
| }; |
| |
| i2c3 { |
| i2c3_default_mode: i2c_default { |
| default_mux { |
| ste,function = "i2c3"; |
| ste,pins = "i2c3_c_2"; |
| }; |
| default_cfg1 { |
| ste,pins = "GPIO229_AG7", "GPIO230_AF7"; /* SDA/SCL */ |
| ste,config = <&in_pu>; |
| }; |
| }; |
| |
| i2c3_sleep_mode: i2c_sleep { |
| sleep_cfg1 { |
| ste,pins = "GPIO229_AG7", "GPIO230_AF7"; /* SDA/SCL */ |
| ste,config = <&slpm_in_wkup_pdis>; |
| }; |
| }; |
| }; |
| |
| /* |
| * Activating I2C4 will conflict with UART1 about the same pins so do not |
| * enable I2C4 and UART1 at the same time. |
| */ |
| i2c4 { |
| i2c4_default_mode: i2c_default { |
| default_mux { |
| ste,function = "i2c4"; |
| ste,pins = "i2c4_b_1"; |
| }; |
| default_cfg1 { |
| ste,pins = "GPIO4_AH6", "GPIO5_AG6"; /* SDA/SCL */ |
| ste,config = <&in_pu>; |
| }; |
| }; |
| |
| i2c4_sleep_mode: i2c_sleep { |
| sleep_cfg1 { |
| ste,pins = "GPIO4_AH6", "GPIO5_AG6"; /* SDA/SCL */ |
| ste,config = <&slpm_in_wkup_pdis>; |
| }; |
| }; |
| }; |
| |
| /* Settings for all MMC/SD/SDIO default and sleep states */ |
| sdi0 { |
| /* This is the external SD card slot, 4 bits wide */ |
| sdi0_default_mode: sdi0_default { |
| default_mux { |
| ste,function = "mc0"; |
| ste,pins = "mc0_a_1"; |
| }; |
| default_cfg1 { |
| ste,pins = |
| "GPIO18_AC2", /* CMDDIR */ |
| "GPIO19_AC1", /* DAT0DIR */ |
| "GPIO20_AB4"; /* DAT2DIR */ |
| ste,config = <&out_hi>; |
| }; |
| default_cfg2 { |
| ste,pins = "GPIO22_AA3"; /* FBCLK */ |
| ste,config = <&in_nopull>; |
| }; |
| default_cfg3 { |
| ste,pins = "GPIO23_AA4"; /* CLK */ |
| ste,config = <&out_lo>; |
| }; |
| default_cfg4 { |
| ste,pins = |
| "GPIO24_AB2", /* CMD */ |
| "GPIO25_Y4", /* DAT0 */ |
| "GPIO26_Y2", /* DAT1 */ |
| "GPIO27_AA2", /* DAT2 */ |
| "GPIO28_AA1"; /* DAT3 */ |
| ste,config = <&in_pu>; |
| }; |
| }; |
| |
| sdi0_sleep_mode: sdi0_sleep { |
| sleep_cfg1 { |
| ste,pins = |
| "GPIO18_AC2", /* CMDDIR */ |
| "GPIO19_AC1", /* DAT0DIR */ |
| "GPIO20_AB4"; /* DAT2DIR */ |
| ste,config = <&slpm_out_hi_wkup_pdis>; |
| }; |
| sleep_cfg2 { |
| ste,pins = |
| "GPIO22_AA3", /* FBCLK */ |
| "GPIO24_AB2", /* CMD */ |
| "GPIO25_Y4", /* DAT0 */ |
| "GPIO26_Y2", /* DAT1 */ |
| "GPIO27_AA2", /* DAT2 */ |
| "GPIO28_AA1"; /* DAT3 */ |
| ste,config = <&slpm_in_wkup_pdis>; |
| }; |
| sleep_cfg3 { |
| ste,pins = "GPIO23_AA4"; /* CLK */ |
| ste,config = <&slpm_out_lo_wkup_pdis>; |
| }; |
| }; |
| }; |
| |
| sdi1 { |
| /* This is the WLAN SDIO 4 bits wide */ |
| sdi1_default_mode: sdi1_default { |
| default_mux { |
| ste,function = "mc1"; |
| ste,pins = "mc1_a_1"; |
| }; |
| default_cfg1 { |
| ste,pins = "GPIO208_AH16"; /* CLK */ |
| ste,config = <&out_lo>; |
| }; |
| default_cfg2 { |
| ste,pins = "GPIO209_AG15"; /* FBCLK */ |
| ste,config = <&in_nopull>; |
| }; |
| default_cfg3 { |
| ste,pins = |
| "GPIO210_AJ15", /* CMD */ |
| "GPIO211_AG14", /* DAT0 */ |
| "GPIO212_AF13", /* DAT1 */ |
| "GPIO213_AG13", /* DAT2 */ |
| "GPIO214_AH15"; /* DAT3 */ |
| ste,config = <&in_pu>; |
| }; |
| }; |
| |
| sdi1_sleep_mode: sdi1_sleep { |
| sleep_cfg1 { |
| ste,pins = "GPIO208_AH16"; /* CLK */ |
| ste,config = <&slpm_out_lo_wkup_pdis>; |
| }; |
| sleep_cfg2 { |
| ste,pins = |
| "GPIO209_AG15", /* FBCLK */ |
| "GPIO210_AJ15", /* CMD */ |
| "GPIO211_AG14", /* DAT0 */ |
| "GPIO212_AF13", /* DAT1 */ |
| "GPIO213_AG13", /* DAT2 */ |
| "GPIO214_AH15"; /* DAT3 */ |
| ste,config = <&slpm_in_wkup_pdis>; |
| }; |
| }; |
| }; |
| |
| sdi2 { |
| /* This is the eMMC 8 bits wide, usually PoP eMMC */ |
| sdi2_default_mode: sdi2_default { |
| default_mux { |
| ste,function = "mc2"; |
| ste,pins = "mc2_a_1"; |
| }; |
| default_cfg1 { |
| ste,pins = "GPIO128_A5"; /* CLK */ |
| ste,config = <&out_lo>; |
| }; |
| default_cfg2 { |
| ste,pins = "GPIO130_C8"; /* FBCLK */ |
| ste,config = <&in_nopull>; |
| }; |
| default_cfg3 { |
| ste,pins = |
| "GPIO129_B4", /* CMD */ |
| "GPIO131_A12", /* DAT0 */ |
| "GPIO132_C10", /* DAT1 */ |
| "GPIO133_B10", /* DAT2 */ |
| "GPIO134_B9", /* DAT3 */ |
| "GPIO135_A9", /* DAT4 */ |
| "GPIO136_C7", /* DAT5 */ |
| "GPIO137_A7", /* DAT6 */ |
| "GPIO138_C5"; /* DAT7 */ |
| ste,config = <&in_pu>; |
| }; |
| }; |
| |
| sdi2_sleep_mode: sdi2_sleep { |
| sleep_cfg1 { |
| ste,pins = "GPIO128_A5"; /* CLK */ |
| ste,config = <&out_lo_wkup_pdis>; |
| }; |
| sleep_cfg2 { |
| ste,pins = |
| "GPIO130_C8", /* FBCLK */ |
| "GPIO129_B4"; /* CMD */ |
| ste,config = <&in_wkup_pdis_en>; |
| }; |
| sleep_cfg3 { |
| ste,pins = |
| "GPIO131_A12", /* DAT0 */ |
| "GPIO132_C10", /* DAT1 */ |
| "GPIO133_B10", /* DAT2 */ |
| "GPIO134_B9", /* DAT3 */ |
| "GPIO135_A9", /* DAT4 */ |
| "GPIO136_C7", /* DAT5 */ |
| "GPIO137_A7", /* DAT6 */ |
| "GPIO138_C5"; /* DAT7 */ |
| ste,config = <&in_wkup_pdis>; |
| }; |
| }; |
| }; |
| |
| sdi4 { |
| /* This is the eMMC 8 bits wide, usually PCB-mounted eMMC */ |
| sdi4_default_mode: sdi4_default { |
| default_mux { |
| ste,function = "mc4"; |
| ste,pins = "mc4_a_1"; |
| }; |
| default_cfg1 { |
| ste,pins = "GPIO203_AE23"; /* CLK */ |
| ste,config = <&out_lo>; |
| }; |
| default_cfg2 { |
| ste,pins = "GPIO202_AF25"; /* FBCLK */ |
| ste,config = <&in_nopull>; |
| }; |
| default_cfg3 { |
| ste,pins = |
| "GPIO201_AF24", /* CMD */ |
| "GPIO200_AH26", /* DAT0 */ |
| "GPIO199_AH23", /* DAT1 */ |
| "GPIO198_AG25", /* DAT2 */ |
| "GPIO197_AH24", /* DAT3 */ |
| "GPIO207_AJ23", /* DAT4 */ |
| "GPIO206_AG24", /* DAT5 */ |
| "GPIO205_AG23", /* DAT6 */ |
| "GPIO204_AF23"; /* DAT7 */ |
| ste,config = <&in_pu>; |
| }; |
| }; |
| |
| sdi4_sleep_mode: sdi4_sleep { |
| sleep_cfg1 { |
| ste,pins = "GPIO203_AE23"; /* CLK */ |
| ste,config = <&out_lo_wkup_pdis>; |
| }; |
| sleep_cfg2 { |
| ste,pins = |
| "GPIO202_AF25", /* FBCLK */ |
| "GPIO201_AF24", /* CMD */ |
| "GPIO200_AH26", /* DAT0 */ |
| "GPIO199_AH23", /* DAT1 */ |
| "GPIO198_AG25", /* DAT2 */ |
| "GPIO197_AH24", /* DAT3 */ |
| "GPIO207_AJ23", /* DAT4 */ |
| "GPIO206_AG24", /* DAT5 */ |
| "GPIO205_AG23", /* DAT6 */ |
| "GPIO204_AF23"; /* DAT7 */ |
| ste,config = <&slpm_in_wkup_pdis>; |
| }; |
| }; |
| }; |
| }; |
| }; |
| }; |