xref: /openbmc/linux/Documentation/devicetree/bindings/pinctrl/brcm,ns2-pinmux.txt (revision d0034a7a4ac7fae708146ac0059b9c47a1543f0d)
1d2d13ed0SYendapally Reddy Dhananjaya ReddyBroadcom Northstar2 IOMUX Controller
2d2d13ed0SYendapally Reddy Dhananjaya Reddy
3d2d13ed0SYendapally Reddy Dhananjaya ReddyThe Northstar2 IOMUX controller supports group based mux configuration. There
4d2d13ed0SYendapally Reddy Dhananjaya Reddyare some individual pins that support modifying the pinconf parameters.
5d2d13ed0SYendapally Reddy Dhananjaya Reddy
6d2d13ed0SYendapally Reddy Dhananjaya ReddyRequired properties:
7d2d13ed0SYendapally Reddy Dhananjaya Reddy
8d2d13ed0SYendapally Reddy Dhananjaya Reddy- compatible:
9d2d13ed0SYendapally Reddy Dhananjaya Reddy    Must be "brcm,ns2-pinmux"
10d2d13ed0SYendapally Reddy Dhananjaya Reddy
11d2d13ed0SYendapally Reddy Dhananjaya Reddy- reg:
12d2d13ed0SYendapally Reddy Dhananjaya Reddy    Define the base and range of the I/O address space that contains the
13d2d13ed0SYendapally Reddy Dhananjaya Reddy    Northstar2 IOMUX and pin configuration registers.
14d2d13ed0SYendapally Reddy Dhananjaya Reddy
15d2d13ed0SYendapally Reddy Dhananjaya ReddyProperties in sub nodes:
16d2d13ed0SYendapally Reddy Dhananjaya Reddy
17d2d13ed0SYendapally Reddy Dhananjaya Reddy- function:
18d2d13ed0SYendapally Reddy Dhananjaya Reddy    The mux function to select
19d2d13ed0SYendapally Reddy Dhananjaya Reddy
20d2d13ed0SYendapally Reddy Dhananjaya Reddy- groups:
21d2d13ed0SYendapally Reddy Dhananjaya Reddy    The list of groups to select with a given function
22d2d13ed0SYendapally Reddy Dhananjaya Reddy
23d2d13ed0SYendapally Reddy Dhananjaya Reddy- pins:
24d2d13ed0SYendapally Reddy Dhananjaya Reddy    List of pin names to change configuration
25d2d13ed0SYendapally Reddy Dhananjaya Reddy
26d2d13ed0SYendapally Reddy Dhananjaya ReddyThe generic properties bias-disable, bias-pull-down, bias-pull-up,
27d2d13ed0SYendapally Reddy Dhananjaya Reddydrive-strength, slew-rate, input-enable, input-disable are supported
28d2d13ed0SYendapally Reddy Dhananjaya Reddyfor some individual pins listed at the end.
29d2d13ed0SYendapally Reddy Dhananjaya Reddy
30d2d13ed0SYendapally Reddy Dhananjaya ReddyFor more details, refer to
31d2d13ed0SYendapally Reddy Dhananjaya ReddyDocumentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt
32d2d13ed0SYendapally Reddy Dhananjaya Reddy
33d2d13ed0SYendapally Reddy Dhananjaya ReddyFor example:
34d2d13ed0SYendapally Reddy Dhananjaya Reddy
35d2d13ed0SYendapally Reddy Dhananjaya Reddy	pinctrl: pinctrl@6501d130 {
36d2d13ed0SYendapally Reddy Dhananjaya Reddy		compatible = "brcm,ns2-pinmux";
37d2d13ed0SYendapally Reddy Dhananjaya Reddy		reg = <0x6501d130 0x08>,
38d2d13ed0SYendapally Reddy Dhananjaya Reddy		      <0x660a0028 0x04>,
39d2d13ed0SYendapally Reddy Dhananjaya Reddy		      <0x660009b0 0x40>;
40d2d13ed0SYendapally Reddy Dhananjaya Reddy
41d2d13ed0SYendapally Reddy Dhananjaya Reddy		pinctrl-names = "default";
42*74f2dd44SGeert Uytterhoeven		pinctrl-0 = <&nand_sel>, <&uart3_rx>, <&sdio0_d4>;
43d2d13ed0SYendapally Reddy Dhananjaya Reddy
44d2d13ed0SYendapally Reddy Dhananjaya Reddy		/* Select nand function */
45d2d13ed0SYendapally Reddy Dhananjaya Reddy		nand_sel: nand_sel {
46d2d13ed0SYendapally Reddy Dhananjaya Reddy			function = "nand";
47d2d13ed0SYendapally Reddy Dhananjaya Reddy			groups = "nand_grp";
48d2d13ed0SYendapally Reddy Dhananjaya Reddy		};
49d2d13ed0SYendapally Reddy Dhananjaya Reddy
50d2d13ed0SYendapally Reddy Dhananjaya Reddy		/* Pull up the uart3 rx pin */
51d2d13ed0SYendapally Reddy Dhananjaya Reddy		uart3_rx: uart3_rx {
52d2d13ed0SYendapally Reddy Dhananjaya Reddy			pins = "uart3_sin";
53d2d13ed0SYendapally Reddy Dhananjaya Reddy			bias-pull-up;
54d2d13ed0SYendapally Reddy Dhananjaya Reddy		};
55d2d13ed0SYendapally Reddy Dhananjaya Reddy
56d2d13ed0SYendapally Reddy Dhananjaya Reddy		/* Set the drive strength of sdio d4 pin */
57d2d13ed0SYendapally Reddy Dhananjaya Reddy		sdio0_d4: sdio0_d4 {
58d2d13ed0SYendapally Reddy Dhananjaya Reddy			pins = "sdio0_data4";
59d2d13ed0SYendapally Reddy Dhananjaya Reddy			drive-strength = <8>;
60d2d13ed0SYendapally Reddy Dhananjaya Reddy		};
61d2d13ed0SYendapally Reddy Dhananjaya Reddy	};
62d2d13ed0SYendapally Reddy Dhananjaya Reddy
63d2d13ed0SYendapally Reddy Dhananjaya ReddyList of supported functions and groups in Northstar2:
64d2d13ed0SYendapally Reddy Dhananjaya Reddy
65d2d13ed0SYendapally Reddy Dhananjaya Reddy"nand": "nand_grp"
66d2d13ed0SYendapally Reddy Dhananjaya Reddy
67d2d13ed0SYendapally Reddy Dhananjaya Reddy"nor": "nor_data_grp", "nor_adv_grp", "nor_addr_0_3_grp", "nor_addr_4_5_grp",
68d2d13ed0SYendapally Reddy Dhananjaya Reddy	"nor_addr_6_7_grp", "nor_addr_8_9_grp", "nor_addr_10_11_grp",
69d2d13ed0SYendapally Reddy Dhananjaya Reddy	"nor_addr_12_15_grp"
70d2d13ed0SYendapally Reddy Dhananjaya Reddy
71d2d13ed0SYendapally Reddy Dhananjaya Reddy"gpio": "gpio_0_1_grp", "gpio_2_5_grp", "gpio_6_7_grp", "gpio_8_9_grp",
72d2d13ed0SYendapally Reddy Dhananjaya Reddy	"gpio_10_11_grp", "gpio_12_13_grp", "gpio_14_17_grp", "gpio_18_19_grp",
73d2d13ed0SYendapally Reddy Dhananjaya Reddy	"gpio_20_21_grp", "gpio_22_23_grp", "gpio_24_25_grp", "gpio_26_27_grp",
74d2d13ed0SYendapally Reddy Dhananjaya Reddy	"gpio_28_29_grp", "gpio_30_31_grp"
75d2d13ed0SYendapally Reddy Dhananjaya Reddy
76d2d13ed0SYendapally Reddy Dhananjaya Reddy"pcie": "pcie_ab1_clk_wak_grp", "pcie_a3_clk_wak_grp", "pcie_b3_clk_wak_grp",
77d2d13ed0SYendapally Reddy Dhananjaya Reddy	"pcie_b2_clk_wak_grp", "pcie_a2_clk_wak_grp"
78d2d13ed0SYendapally Reddy Dhananjaya Reddy
79d2d13ed0SYendapally Reddy Dhananjaya Reddy"uart0": "uart0_modem_grp", "uart0_rts_cts_grp", "uart0_in_out_grp"
80d2d13ed0SYendapally Reddy Dhananjaya Reddy
81d2d13ed0SYendapally Reddy Dhananjaya Reddy"uart1": "uart1_ext_clk_grp", "uart1_dcd_dsr_grp", "uart1_ri_dtr_grp",
82d2d13ed0SYendapally Reddy Dhananjaya Reddy	"uart1_rts_cts_grp", "uart1_in_out_grp"
83d2d13ed0SYendapally Reddy Dhananjaya Reddy
84d2d13ed0SYendapally Reddy Dhananjaya Reddy"uart2": "uart2_rts_cts_grp"
85d2d13ed0SYendapally Reddy Dhananjaya Reddy
86d2d13ed0SYendapally Reddy Dhananjaya Reddy"pwm": "pwm_0_grp", "pwm_1_grp", "pwm_2_grp", "pwm_3_grp"
87d2d13ed0SYendapally Reddy Dhananjaya Reddy
88d2d13ed0SYendapally Reddy Dhananjaya Reddy
89d2d13ed0SYendapally Reddy Dhananjaya ReddyList of pins that support pinconf parameters:
90d2d13ed0SYendapally Reddy Dhananjaya Reddy
91d2d13ed0SYendapally Reddy Dhananjaya Reddy"qspi_wp", "qspi_hold", "qspi_cs", "qspi_sck", "uart3_sin", "uart3_sout",
92d2d13ed0SYendapally Reddy Dhananjaya Reddy"qspi_mosi", "qspi_miso", "spi0_fss", "spi0_rxd", "spi0_txd", "spi0_sck",
93d2d13ed0SYendapally Reddy Dhananjaya Reddy"spi1_fss", "spi1_rxd", "spi1_txd", "spi1_sck", "sdio0_data7",
94d2d13ed0SYendapally Reddy Dhananjaya Reddy"sdio0_emmc_rst", "sdio0_led_on", "sdio0_wp", "sdio0_data3", "sdio0_data4",
95d2d13ed0SYendapally Reddy Dhananjaya Reddy"sdio0_data5", "sdio0_data6", "sdio0_cmd", "sdio0_data0", "sdio0_data1",
96d2d13ed0SYendapally Reddy Dhananjaya Reddy"sdio0_data2", "sdio1_led_on", "sdio1_wp", "sdio0_cd_l", "sdio0_clk",
97d2d13ed0SYendapally Reddy Dhananjaya Reddy"sdio1_data5", "sdio1_data6", "sdio1_data7", "sdio1_emmc_rst", "sdio1_data1",
98d2d13ed0SYendapally Reddy Dhananjaya Reddy"sdio1_data2", "sdio1_data3", "sdio1_data4", "sdio1_cd_l", "sdio1_clk",
99d2d13ed0SYendapally Reddy Dhananjaya Reddy"sdio1_cmd", "sdio1_data0", "ext_mdio_0", "ext_mdc_0", "usb3_p1_vbus_ppc",
100d2d13ed0SYendapally Reddy Dhananjaya Reddy"usb3_p1_overcurrent", "usb3_p0_vbus_ppc", "usb3_p0_overcurrent",
101d2d13ed0SYendapally Reddy Dhananjaya Reddy"usb2_presence_indication", "usb2_vbus_present", "usb2_vbus_ppc",
102d2d13ed0SYendapally Reddy Dhananjaya Reddy"usb2_overcurrent", "sata_led1", "sata_led0"
103