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