18c2ecf20Sopenharmony_ciBroadcom Cygnus IOMUX Controller 28c2ecf20Sopenharmony_ci 38c2ecf20Sopenharmony_ciThe Cygnus IOMUX controller supports group based mux configuration. In 48c2ecf20Sopenharmony_ciaddition, certain pins can be muxed to GPIO function individually. 58c2ecf20Sopenharmony_ci 68c2ecf20Sopenharmony_ciRequired properties: 78c2ecf20Sopenharmony_ci 88c2ecf20Sopenharmony_ci- compatible: 98c2ecf20Sopenharmony_ci Must be "brcm,cygnus-pinmux" 108c2ecf20Sopenharmony_ci 118c2ecf20Sopenharmony_ci- reg: 128c2ecf20Sopenharmony_ci Define the base and range of the I/O address space that contains the Cygnus 138c2ecf20Sopenharmony_ciIOMUX registers 148c2ecf20Sopenharmony_ci 158c2ecf20Sopenharmony_ciProperties in subnodes: 168c2ecf20Sopenharmony_ci 178c2ecf20Sopenharmony_ci- function: 188c2ecf20Sopenharmony_ci The mux function to select 198c2ecf20Sopenharmony_ci 208c2ecf20Sopenharmony_ci- groups: 218c2ecf20Sopenharmony_ci The list of groups to select with a given function 228c2ecf20Sopenharmony_ci 238c2ecf20Sopenharmony_ciFor more details, refer to 248c2ecf20Sopenharmony_ciDocumentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt 258c2ecf20Sopenharmony_ci 268c2ecf20Sopenharmony_ciFor example: 278c2ecf20Sopenharmony_ci 288c2ecf20Sopenharmony_ci pinmux: pinmux@0301d0c8 { 298c2ecf20Sopenharmony_ci compatible = "brcm,cygnus-pinmux"; 308c2ecf20Sopenharmony_ci reg = <0x0301d0c8 0x1b0>; 318c2ecf20Sopenharmony_ci 328c2ecf20Sopenharmony_ci pinctrl-names = "default"; 338c2ecf20Sopenharmony_ci pinctrl-0 = <&i2s0_default>; 348c2ecf20Sopenharmony_ci 358c2ecf20Sopenharmony_ci i2s0_default: i2s0_default { 368c2ecf20Sopenharmony_ci mux { 378c2ecf20Sopenharmony_ci function = "i2s0"; 388c2ecf20Sopenharmony_ci groups = "i2s0_0_grp", "i2s0_1_grp"; 398c2ecf20Sopenharmony_ci }; 408c2ecf20Sopenharmony_ci }; 418c2ecf20Sopenharmony_ci }; 428c2ecf20Sopenharmony_ci 438c2ecf20Sopenharmony_ciList of supported functions and groups in Cygnus: 448c2ecf20Sopenharmony_ci 458c2ecf20Sopenharmony_ci"i2s0": "i2s0_0_grp", "i2s0_1_grp" 468c2ecf20Sopenharmony_ci 478c2ecf20Sopenharmony_ci"i2s1": "i2s1_0_grp", "i2s1_1_grp" 488c2ecf20Sopenharmony_ci 498c2ecf20Sopenharmony_ci"i2s2": "i2s2_0_grp", "i2s2_1_grp", "i2s2_2_grp", "i2s2_3_grp", "i2s2_4_grp" 508c2ecf20Sopenharmony_ci 518c2ecf20Sopenharmony_ci"spdif": "spdif_grp" 528c2ecf20Sopenharmony_ci 538c2ecf20Sopenharmony_ci"pwm0": "pwm0_grp" 548c2ecf20Sopenharmony_ci 558c2ecf20Sopenharmony_ci"pwm1": "pwm1_grp" 568c2ecf20Sopenharmony_ci 578c2ecf20Sopenharmony_ci"pwm2": "pwm2_grp" 588c2ecf20Sopenharmony_ci 598c2ecf20Sopenharmony_ci"pwm3": "pwm3_grp" 608c2ecf20Sopenharmony_ci 618c2ecf20Sopenharmony_ci"pwm4": "pwm4_grp" 628c2ecf20Sopenharmony_ci 638c2ecf20Sopenharmony_ci"pwm5": "pwm5_grp" 648c2ecf20Sopenharmony_ci 658c2ecf20Sopenharmony_ci"key": "key0_grp", "key1_grp", "key2_grp", "key3_grp", "key4_grp", "key5_grp", 668c2ecf20Sopenharmony_ci"key6_grp", "key7_grp", "key8_grp", "key9_grp", "key10_grp", "key11_grp", 678c2ecf20Sopenharmony_ci"key12_grp", "key13_grp", "key14_grp", "key15_grp" 688c2ecf20Sopenharmony_ci 698c2ecf20Sopenharmony_ci"audio_dte": "audio_dte0_grp", "audio_dte1_grp", "audio_dte2_grp", "audio_dte3_grp" 708c2ecf20Sopenharmony_ci 718c2ecf20Sopenharmony_ci"smart_card0": "smart_card0_grp", "smart_card0_fcb_grp" 728c2ecf20Sopenharmony_ci 738c2ecf20Sopenharmony_ci"smart_card1": "smart_card1_grp", "smart_card1_fcb_grp" 748c2ecf20Sopenharmony_ci 758c2ecf20Sopenharmony_ci"spi0": "spi0_grp" 768c2ecf20Sopenharmony_ci 778c2ecf20Sopenharmony_ci"spi1": "spi1_grp" 788c2ecf20Sopenharmony_ci 798c2ecf20Sopenharmony_ci"spi2": "spi2_grp" 808c2ecf20Sopenharmony_ci 818c2ecf20Sopenharmony_ci"spi3": "spi3_grp" 828c2ecf20Sopenharmony_ci 838c2ecf20Sopenharmony_ci"spi4": "spi4_0_grp", "spi4_1_grp" 848c2ecf20Sopenharmony_ci 858c2ecf20Sopenharmony_ci"spi5": "spi5_grp" 868c2ecf20Sopenharmony_ci 878c2ecf20Sopenharmony_ci"sw_led0": "sw_led0_0_grp", "sw_led0_1_grp" 888c2ecf20Sopenharmony_ci 898c2ecf20Sopenharmony_ci"sw_led1": "sw_led1_grp" 908c2ecf20Sopenharmony_ci 918c2ecf20Sopenharmony_ci"sw_led2": "sw_led2_0_grp", "sw_led2_1_grp" 928c2ecf20Sopenharmony_ci 938c2ecf20Sopenharmony_ci"d1w": "d1w_grp" 948c2ecf20Sopenharmony_ci 958c2ecf20Sopenharmony_ci"lcd": "lcd_grp" 968c2ecf20Sopenharmony_ci 978c2ecf20Sopenharmony_ci"sram": "sram_0_grp", "sram_1_grp" 988c2ecf20Sopenharmony_ci 998c2ecf20Sopenharmony_ci"uart0": "uart0_grp" 1008c2ecf20Sopenharmony_ci 1018c2ecf20Sopenharmony_ci"uart1": "uart1_grp", "uart1_dte_grp" 1028c2ecf20Sopenharmony_ci 1038c2ecf20Sopenharmony_ci"uart2": "uart2_grp" 1048c2ecf20Sopenharmony_ci 1058c2ecf20Sopenharmony_ci"uart3": "uart3_grp" 1068c2ecf20Sopenharmony_ci 1078c2ecf20Sopenharmony_ci"uart4": "uart4_grp" 1088c2ecf20Sopenharmony_ci 1098c2ecf20Sopenharmony_ci"qspi": "qspi_0_grp", "qspi_1_grp" 1108c2ecf20Sopenharmony_ci 1118c2ecf20Sopenharmony_ci"nand": "nand_grp" 1128c2ecf20Sopenharmony_ci 1138c2ecf20Sopenharmony_ci"sdio0": "sdio0_grp", "sdio0_cd_grp", "sdio0_mmc_grp" 1148c2ecf20Sopenharmony_ci 1158c2ecf20Sopenharmony_ci"sdio1": "sdio1_data_0_grp", "sdio1_data_1_grp", "sdio1_cd_grp", 1168c2ecf20Sopenharmony_ci"sdio1_led_grp", "sdio1_mmc_grp" 1178c2ecf20Sopenharmony_ci 1188c2ecf20Sopenharmony_ci"can0": "can0_grp" 1198c2ecf20Sopenharmony_ci 1208c2ecf20Sopenharmony_ci"can1": "can1_grp" 1218c2ecf20Sopenharmony_ci 1228c2ecf20Sopenharmony_ci"cam": "cam_led_grp", "cam_0_grp", "cam_1_grp" 1238c2ecf20Sopenharmony_ci 1248c2ecf20Sopenharmony_ci"bsc1": "bsc1_grp" 1258c2ecf20Sopenharmony_ci 1268c2ecf20Sopenharmony_ci"pcie_clkreq": "pcie_clkreq_grp" 1278c2ecf20Sopenharmony_ci 1288c2ecf20Sopenharmony_ci"usb0_oc": "usb0_oc_grp" 1298c2ecf20Sopenharmony_ci 1308c2ecf20Sopenharmony_ci"usb1_oc": "usb1_oc_grp" 1318c2ecf20Sopenharmony_ci 1328c2ecf20Sopenharmony_ci"usb2_oc": "usb2_oc_grp" 133