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