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