18c2ecf20Sopenharmony_ciST Microelectronics, SPEAr pinmux controller 28c2ecf20Sopenharmony_ci 38c2ecf20Sopenharmony_ciRequired properties: 48c2ecf20Sopenharmony_ci- compatible : "st,spear300-pinmux" 58c2ecf20Sopenharmony_ci : "st,spear310-pinmux" 68c2ecf20Sopenharmony_ci : "st,spear320-pinmux" 78c2ecf20Sopenharmony_ci : "st,spear1310-pinmux" 88c2ecf20Sopenharmony_ci : "st,spear1340-pinmux" 98c2ecf20Sopenharmony_ci- reg : Address range of the pinctrl registers 108c2ecf20Sopenharmony_ci- st,pinmux-mode: Mandatory for SPEAr300 and SPEAr320 and invalid for others. 118c2ecf20Sopenharmony_ci - Its values for SPEAr300: 128c2ecf20Sopenharmony_ci - NAND_MODE : <0> 138c2ecf20Sopenharmony_ci - NOR_MODE : <1> 148c2ecf20Sopenharmony_ci - PHOTO_FRAME_MODE : <2> 158c2ecf20Sopenharmony_ci - LEND_IP_PHONE_MODE : <3> 168c2ecf20Sopenharmony_ci - HEND_IP_PHONE_MODE : <4> 178c2ecf20Sopenharmony_ci - LEND_WIFI_PHONE_MODE : <5> 188c2ecf20Sopenharmony_ci - HEND_WIFI_PHONE_MODE : <6> 198c2ecf20Sopenharmony_ci - ATA_PABX_WI2S_MODE : <7> 208c2ecf20Sopenharmony_ci - ATA_PABX_I2S_MODE : <8> 218c2ecf20Sopenharmony_ci - CAML_LCDW_MODE : <9> 228c2ecf20Sopenharmony_ci - CAMU_LCD_MODE : <10> 238c2ecf20Sopenharmony_ci - CAMU_WLCD_MODE : <11> 248c2ecf20Sopenharmony_ci - CAML_LCD_MODE : <12> 258c2ecf20Sopenharmony_ci - Its values for SPEAr320: 268c2ecf20Sopenharmony_ci - AUTO_NET_SMII_MODE : <0> 278c2ecf20Sopenharmony_ci - AUTO_NET_MII_MODE : <1> 288c2ecf20Sopenharmony_ci - AUTO_EXP_MODE : <2> 298c2ecf20Sopenharmony_ci - SMALL_PRINTERS_MODE : <3> 308c2ecf20Sopenharmony_ci - EXTENDED_MODE : <4> 318c2ecf20Sopenharmony_ci 328c2ecf20Sopenharmony_ciPlease refer to pinctrl-bindings.txt in this directory for details of the common 338c2ecf20Sopenharmony_cipinctrl bindings used by client devices. 348c2ecf20Sopenharmony_ci 358c2ecf20Sopenharmony_ciSPEAr's pinmux nodes act as a container for an arbitrary number of subnodes. Each 368c2ecf20Sopenharmony_ciof these subnodes represents muxing for a pin, a group, or a list of pins or 378c2ecf20Sopenharmony_cigroups. 388c2ecf20Sopenharmony_ci 398c2ecf20Sopenharmony_ciThe name of each subnode is not important; all subnodes should be enumerated 408c2ecf20Sopenharmony_ciand processed purely based on their content. 418c2ecf20Sopenharmony_ci 428c2ecf20Sopenharmony_ciRequired subnode-properties: 438c2ecf20Sopenharmony_ci- st,pins : An array of strings. Each string contains the name of a pin or 448c2ecf20Sopenharmony_ci group. 458c2ecf20Sopenharmony_ci- st,function: A string containing the name of the function to mux to the pin or 468c2ecf20Sopenharmony_ci group. See the SPEAr's TRM to determine which are valid for each pin or group. 478c2ecf20Sopenharmony_ci 488c2ecf20Sopenharmony_ci Valid values for group and function names can be found from looking at the 498c2ecf20Sopenharmony_ci group and function arrays in driver files: 508c2ecf20Sopenharmony_ci drivers/pinctrl/spear/pinctrl-spear3*0.c 518c2ecf20Sopenharmony_ci 528c2ecf20Sopenharmony_ciValid values for group names are: 538c2ecf20Sopenharmony_ciFor All SPEAr3xx machines: 548c2ecf20Sopenharmony_ci "firda_grp", "i2c0_grp", "ssp_cs_grp", "ssp0_grp", "mii0_grp", 558c2ecf20Sopenharmony_ci "gpio0_pin0_grp", "gpio0_pin1_grp", "gpio0_pin2_grp", "gpio0_pin3_grp", 568c2ecf20Sopenharmony_ci "gpio0_pin4_grp", "gpio0_pin5_grp", "uart0_ext_grp", "uart0_grp", 578c2ecf20Sopenharmony_ci "timer_0_1_grp", timer_0_1_pins, "timer_2_3_grp" 588c2ecf20Sopenharmony_ci 598c2ecf20Sopenharmony_ciFor SPEAr300 machines: 608c2ecf20Sopenharmony_ci "fsmc_2chips_grp", "fsmc_4chips_grp", "clcd_lcdmode_grp", 618c2ecf20Sopenharmony_ci "clcd_pfmode_grp", "tdm_grp", "i2c_clk_grp_grp", "caml_grp", "camu_grp", 628c2ecf20Sopenharmony_ci "dac_grp", "i2s_grp", "sdhci_4bit_grp", "sdhci_8bit_grp", 638c2ecf20Sopenharmony_ci "gpio1_0_to_3_grp", "gpio1_4_to_7_grp" 648c2ecf20Sopenharmony_ci 658c2ecf20Sopenharmony_ciFor SPEAr310 machines: 668c2ecf20Sopenharmony_ci "emi_cs_0_to_5_grp", "uart1_grp", "uart2_grp", "uart3_grp", "uart4_grp", 678c2ecf20Sopenharmony_ci "uart5_grp", "fsmc_grp", "rs485_0_grp", "rs485_1_grp", "tdm_grp" 688c2ecf20Sopenharmony_ci 698c2ecf20Sopenharmony_ciFor SPEAr320 machines: 708c2ecf20Sopenharmony_ci "clcd_grp", "emi_grp", "fsmc_8bit_grp", "fsmc_16bit_grp", "spp_grp", 718c2ecf20Sopenharmony_ci "sdhci_led_grp", "sdhci_cd_12_grp", "sdhci_cd_51_grp", "i2s_grp", 728c2ecf20Sopenharmony_ci "uart1_grp", "uart1_modem_2_to_7_grp", "uart1_modem_31_to_36_grp", 738c2ecf20Sopenharmony_ci "uart1_modem_34_to_45_grp", "uart1_modem_80_to_85_grp", "uart2_grp", 748c2ecf20Sopenharmony_ci "uart3_8_9_grp", "uart3_15_16_grp", "uart3_41_42_grp", 758c2ecf20Sopenharmony_ci "uart3_52_53_grp", "uart3_73_74_grp", "uart3_94_95_grp", 768c2ecf20Sopenharmony_ci "uart3_98_99_grp", "uart4_6_7_grp", "uart4_13_14_grp", 778c2ecf20Sopenharmony_ci "uart4_39_40_grp", "uart4_71_72_grp", "uart4_92_93_grp", 788c2ecf20Sopenharmony_ci "uart4_100_101_grp", "uart5_4_5_grp", "uart5_37_38_grp", 798c2ecf20Sopenharmony_ci "uart5_69_70_grp", "uart5_90_91_grp", "uart6_2_3_grp", 808c2ecf20Sopenharmony_ci "uart6_88_89_grp", "rs485_grp", "touchscreen_grp", "can0_grp", 818c2ecf20Sopenharmony_ci "can1_grp", "pwm0_1_pin_8_9_grp", "pwm0_1_pin_14_15_grp", 828c2ecf20Sopenharmony_ci "pwm0_1_pin_30_31_grp", "pwm0_1_pin_37_38_grp", "pwm0_1_pin_42_43_grp", 838c2ecf20Sopenharmony_ci "pwm0_1_pin_59_60_grp", "pwm0_1_pin_88_89_grp", "pwm2_pin_7_grp", 848c2ecf20Sopenharmony_ci "pwm2_pin_13_grp", "pwm2_pin_29_grp", "pwm2_pin_34_grp", 858c2ecf20Sopenharmony_ci "pwm2_pin_41_grp", "pwm2_pin_58_grp", "pwm2_pin_87_grp", 868c2ecf20Sopenharmony_ci "pwm3_pin_6_grp", "pwm3_pin_12_grp", "pwm3_pin_28_grp", 878c2ecf20Sopenharmony_ci "pwm3_pin_40_grp", "pwm3_pin_57_grp", "pwm3_pin_86_grp", 888c2ecf20Sopenharmony_ci "ssp1_17_20_grp", "ssp1_36_39_grp", "ssp1_48_51_grp", "ssp1_65_68_grp", 898c2ecf20Sopenharmony_ci "ssp1_94_97_grp", "ssp2_13_16_grp", "ssp2_32_35_grp", "ssp2_44_47_grp", 908c2ecf20Sopenharmony_ci "ssp2_61_64_grp", "ssp2_90_93_grp", "mii2_grp", "smii0_1_grp", 918c2ecf20Sopenharmony_ci "rmii0_1_grp", "i2c1_8_9_grp", "i2c1_98_99_grp", "i2c2_0_1_grp", 928c2ecf20Sopenharmony_ci "i2c2_2_3_grp", "i2c2_19_20_grp", "i2c2_75_76_grp", "i2c2_96_97_grp" 938c2ecf20Sopenharmony_ci 948c2ecf20Sopenharmony_ciFor SPEAr1310 machines: 958c2ecf20Sopenharmony_ci "i2c0_grp", "ssp0_grp", "ssp0_cs0_grp", "ssp0_cs1_2_grp", "i2s0_grp", 968c2ecf20Sopenharmony_ci "i2s1_grp", "clcd_grp", "clcd_high_res_grp", "arm_gpio_grp", 978c2ecf20Sopenharmony_ci "smi_2_chips_grp", "smi_4_chips_grp", "gmii_grp", "rgmii_grp", 988c2ecf20Sopenharmony_ci "smii_0_1_2_grp", "ras_mii_txclk_grp", "nand_8bit_grp", 998c2ecf20Sopenharmony_ci "nand_16bit_grp", "nand_4_chips_grp", "keyboard_6x6_grp", 1008c2ecf20Sopenharmony_ci "keyboard_rowcol6_8_grp", "uart0_grp", "uart0_modem_grp", 1018c2ecf20Sopenharmony_ci "gpt0_tmr0_grp", "gpt0_tmr1_grp", "gpt1_tmr0_grp", "gpt1_tmr1_grp", 1028c2ecf20Sopenharmony_ci "sdhci_grp", "cf_grp", "xd_grp", "touch_xy_grp", 1038c2ecf20Sopenharmony_ci "uart1_disable_i2c_grp", "uart1_disable_sd_grp", "uart2_3_grp", 1048c2ecf20Sopenharmony_ci "uart4_grp", "uart5_grp", "rs485_0_1_tdm_0_1_grp", "i2c_1_2_grp", 1058c2ecf20Sopenharmony_ci "i2c3_dis_smi_clcd_grp", "i2c3_dis_sd_i2s0_grp", "i2c_4_5_dis_smi_grp", 1068c2ecf20Sopenharmony_ci "i2c4_dis_sd_grp", "i2c5_dis_sd_grp", "i2c_6_7_dis_kbd_grp", 1078c2ecf20Sopenharmony_ci "i2c6_dis_sd_grp", "i2c7_dis_sd_grp", "can0_dis_nor_grp", 1088c2ecf20Sopenharmony_ci "can0_dis_sd_grp", "can1_dis_sd_grp", "can1_dis_kbd_grp", "pcie0_grp", 1098c2ecf20Sopenharmony_ci "pcie1_grp", "pcie2_grp", "sata0_grp", "sata1_grp", "sata2_grp", 1108c2ecf20Sopenharmony_ci "ssp1_dis_kbd_grp", "ssp1_dis_sd_grp", "gpt64_grp" 1118c2ecf20Sopenharmony_ci 1128c2ecf20Sopenharmony_ciFor SPEAr1340 machines: 1138c2ecf20Sopenharmony_ci "pads_as_gpio_grp", "fsmc_8bit_grp", "fsmc_16bit_grp", "fsmc_pnor_grp", 1148c2ecf20Sopenharmony_ci "keyboard_row_col_grp", "keyboard_col5_grp", "spdif_in_grp", 1158c2ecf20Sopenharmony_ci "spdif_out_grp", "gpt_0_1_grp", "pwm0_grp", "pwm1_grp", "pwm2_grp", 1168c2ecf20Sopenharmony_ci "pwm3_grp", "vip_mux_grp", "vip_mux_cam0_grp", "vip_mux_cam1_grp", 1178c2ecf20Sopenharmony_ci "vip_mux_cam2_grp", "vip_mux_cam3_grp", "cam0_grp", "cam1_grp", 1188c2ecf20Sopenharmony_ci "cam2_grp", "cam3_grp", "smi_grp", "ssp0_grp", "ssp0_cs1_grp", 1198c2ecf20Sopenharmony_ci "ssp0_cs2_grp", "ssp0_cs3_grp", "uart0_grp", "uart0_enh_grp", 1208c2ecf20Sopenharmony_ci "uart1_grp", "i2s_in_grp", "i2s_out_grp", "gmii_grp", "rgmii_grp", 1218c2ecf20Sopenharmony_ci "rmii_grp", "sgmii_grp", "i2c0_grp", "i2c1_grp", "cec0_grp", "cec1_grp", 1228c2ecf20Sopenharmony_ci "sdhci_grp", "cf_grp", "xd_grp", "clcd_grp", "arm_trace_grp", 1238c2ecf20Sopenharmony_ci "miphy_dbg_grp", "pcie_grp", "sata_grp" 1248c2ecf20Sopenharmony_ci 1258c2ecf20Sopenharmony_ciValid values for function names are: 1268c2ecf20Sopenharmony_ciFor All SPEAr3xx machines: 1278c2ecf20Sopenharmony_ci "firda", "i2c0", "ssp_cs", "ssp0", "mii0", "gpio0", "uart0_ext", 1288c2ecf20Sopenharmony_ci "uart0", "timer_0_1", "timer_2_3" 1298c2ecf20Sopenharmony_ci 1308c2ecf20Sopenharmony_ciFor SPEAr300 machines: 1318c2ecf20Sopenharmony_ci "fsmc", "clcd", "tdm", "i2c1", "cam", "dac", "i2s", "sdhci", "gpio1" 1328c2ecf20Sopenharmony_ci 1338c2ecf20Sopenharmony_ciFor SPEAr310 machines: 1348c2ecf20Sopenharmony_ci "emi", "uart1", "uart2", "uart3", "uart4", "uart5", "fsmc", "rs485_0", 1358c2ecf20Sopenharmony_ci "rs485_1", "tdm" 1368c2ecf20Sopenharmony_ci 1378c2ecf20Sopenharmony_ciFor SPEAr320 machines: 1388c2ecf20Sopenharmony_ci "clcd", "emi", "fsmc", "spp", "sdhci", "i2s", "uart1", "uart1_modem", 1398c2ecf20Sopenharmony_ci "uart2", "uart3", "uart4", "uart5", "uart6", "rs485", "touchscreen", 1408c2ecf20Sopenharmony_ci "can0", "can1", "pwm0_1", "pwm2", "pwm3", "ssp1", "ssp2", "mii2", 1418c2ecf20Sopenharmony_ci "mii0_1", "i2c1", "i2c2" 1428c2ecf20Sopenharmony_ci 1438c2ecf20Sopenharmony_ci 1448c2ecf20Sopenharmony_ciFor SPEAr1310 machines: 1458c2ecf20Sopenharmony_ci "i2c0", "ssp0", "i2s0", "i2s1", "clcd", "arm_gpio", "smi", "gmii", 1468c2ecf20Sopenharmony_ci "rgmii", "smii_0_1_2", "ras_mii_txclk", "nand", "keyboard", "uart0", 1478c2ecf20Sopenharmony_ci "gpt0", "gpt1", "sdhci", "cf", "xd", "touchscreen", "uart1", "uart2_3", 1488c2ecf20Sopenharmony_ci "uart4", "uart5", "rs485_0_1_tdm_0_1", "i2c_1_2", "i2c3_i2s1", 1498c2ecf20Sopenharmony_ci "i2c_4_5", "i2c_6_7", "can0", "can1", "pci", "sata", "ssp1", "gpt64" 1508c2ecf20Sopenharmony_ci 1518c2ecf20Sopenharmony_ciFor SPEAr1340 machines: 1528c2ecf20Sopenharmony_ci "pads_as_gpio", "fsmc", "keyboard", "spdif_in", "spdif_out", "gpt_0_1", 1538c2ecf20Sopenharmony_ci "pwm", "vip", "cam0", "cam1", "cam2", "cam3", "smi", "ssp0", "uart0", 1548c2ecf20Sopenharmony_ci "uart1", "i2s", "gmac", "i2c0", "i2c1", "cec0", "cec1", "sdhci", "cf", 1558c2ecf20Sopenharmony_ci "xd", "clcd", "arm_trace", "miphy_dbg", "pcie", "sata" 156