1*4882a593SmuzhiyunBroadcom NSP (Northstar plus) IOMUX Controller 2*4882a593Smuzhiyun 3*4882a593SmuzhiyunThe NSP IOMUX controller supports group based mux configuration. In 4*4882a593Smuzhiyunaddition, certain pins can be muxed to GPIO function individually. 5*4882a593Smuzhiyun 6*4882a593SmuzhiyunRequired properties: 7*4882a593Smuzhiyun- compatible: 8*4882a593Smuzhiyun Must be "brcm,nsp-pinmux" 9*4882a593Smuzhiyun 10*4882a593Smuzhiyun- reg: 11*4882a593Smuzhiyun Should contain the register physical address and length for each of 12*4882a593Smuzhiyun GPIO_CONTROL0, GP_AUX_SEL and IPROC_CONFIG IOMUX registers 13*4882a593Smuzhiyun 14*4882a593SmuzhiyunProperties in subnodes: 15*4882a593Smuzhiyun- function: 16*4882a593Smuzhiyun The mux function to select 17*4882a593Smuzhiyun 18*4882a593Smuzhiyun- groups: 19*4882a593Smuzhiyun The list of groups to select with a given function 20*4882a593Smuzhiyun 21*4882a593SmuzhiyunFor more details, refer to 22*4882a593SmuzhiyunDocumentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt 23*4882a593Smuzhiyun 24*4882a593SmuzhiyunFor example: 25*4882a593Smuzhiyun 26*4882a593Smuzhiyun pinmux: pinmux@1803f1c0 { 27*4882a593Smuzhiyun compatible = "brcm,nsp-pinmux"; 28*4882a593Smuzhiyun reg = <0x1803f1c0 0x04>, 29*4882a593Smuzhiyun <0x18030028 0x04>, 30*4882a593Smuzhiyun <0x1803f408 0x04>; 31*4882a593Smuzhiyun 32*4882a593Smuzhiyun pinctrl-names = "default"; 33*4882a593Smuzhiyun pinctrl-0 = <&pwm &gpio_b &nand_sel>; 34*4882a593Smuzhiyun 35*4882a593Smuzhiyun pwm: pwm { 36*4882a593Smuzhiyun function = "pwm"; 37*4882a593Smuzhiyun groups = "pwm0_grp", "pwm1_grp"; 38*4882a593Smuzhiyun }; 39*4882a593Smuzhiyun 40*4882a593Smuzhiyun gpio_b: gpio_b { 41*4882a593Smuzhiyun function = "gpio_b"; 42*4882a593Smuzhiyun groups = "gpio_b_0_grp", "gpio_b_1_grp"; 43*4882a593Smuzhiyun }; 44*4882a593Smuzhiyun 45*4882a593Smuzhiyun nand_sel: nand_sel { 46*4882a593Smuzhiyun function = "nand"; 47*4882a593Smuzhiyun groups = "nand_grp"; 48*4882a593Smuzhiyun }; 49*4882a593Smuzhiyun }; 50*4882a593Smuzhiyun 51*4882a593SmuzhiyunList of supported functions and groups in Northstar Plus: 52*4882a593Smuzhiyun 53*4882a593Smuzhiyun"spi": "spi_grp" 54*4882a593Smuzhiyun 55*4882a593Smuzhiyun"i2c": "i2c_grp" 56*4882a593Smuzhiyun 57*4882a593Smuzhiyun"mdio": "mdio_grp" 58*4882a593Smuzhiyun 59*4882a593Smuzhiyun"pwm": "pwm0_grp", "pwm1_grp", "pwm2_grp", "pwm3_grp" 60*4882a593Smuzhiyun 61*4882a593Smuzhiyun"gpio_b": "gpio_b_0_grp", "gpio_b_1_grp", "gpio_b_2_grp", "gpio_b_3_grp" 62*4882a593Smuzhiyun 63*4882a593Smuzhiyun"uart1": "uart1_grp" 64*4882a593Smuzhiyun 65*4882a593Smuzhiyun"uart2": "uart2_grp" 66*4882a593Smuzhiyun 67*4882a593Smuzhiyun"synce": "synce_grp" 68*4882a593Smuzhiyun 69*4882a593Smuzhiyun"sata_led_grps": "sata0_led_grp", "sata1_led_grp" 70*4882a593Smuzhiyun 71*4882a593Smuzhiyun"xtal_out": "xtal_out_grp" 72*4882a593Smuzhiyun 73*4882a593Smuzhiyun"sdio": "sdio_pwr_grp", "sdio_1p8v_grp" 74*4882a593Smuzhiyun 75*4882a593Smuzhiyun"switch_led": "switch_p05_led0_grp", "switch_p05_led1_grp" 76*4882a593Smuzhiyun 77*4882a593Smuzhiyun"nand": "nand_grp" 78*4882a593Smuzhiyun 79*4882a593Smuzhiyun"emmc": "emmc_grp" 80