Commit | Line | Data |
---|---|---|
ad2db351 JH |
1 | * Microchip PIC32 Pin Controller |
2 | ||
3 | Please refer to pinctrl-bindings.txt, ../gpio/gpio.txt, and | |
4 | ../interrupt-controller/interrupts.txt for generic information regarding | |
5 | pin controller, GPIO, and interrupt bindings. | |
6 | ||
7 | PIC32 'pin configuration node' is a node of a group of pins which can be | |
8 | used for a specific device or function. This node represents configuraions of | |
9 | pins, optional function, and optional mux related configuration. | |
10 | ||
11 | Required properties for pin controller node: | |
12 | - compatible: "microchip,pic32mada-pinctrl" | |
13 | - reg: Address range of the pinctrl registers. | |
14 | - clocks: Clock specifier (see clock bindings for details) | |
15 | ||
16 | Required properties for pin configuration sub-nodes: | |
17 | - pins: List of pins to which the configuration applies. | |
18 | ||
19 | Optional properties for pin configuration sub-nodes: | |
20 | ---------------------------------------------------- | |
21 | - function: Mux function for the specified pins. | |
22 | - bias-pull-up: Enable weak pull-up. | |
23 | - bias-pull-down: Enable weak pull-down. | |
24 | - input-enable: Set the pin as an input. | |
25 | - output-low: Set the pin as an output level low. | |
26 | - output-high: Set the pin as an output level high. | |
27 | - microchip,digital: Enable digital I/O. | |
28 | - microchip,analog: Enable analog I/O. | |
29 | ||
30 | Example: | |
31 | ||
32 | pic32_pinctrl: pinctrl@1f801400{ | |
33 | #address-cells = <1>; | |
34 | #size-cells = <1>; | |
35 | compatible = "microchip,pic32mzda-pinctrl"; | |
36 | reg = <0x1f801400 0x400>; | |
82cc37f6 | 37 | clocks = <&rootclk PB1CLK>; |
ad2db351 JH |
38 | |
39 | pinctrl_uart2: pinctrl_uart2 { | |
40 | uart2-tx { | |
41 | pins = "G9"; | |
42 | function = "U2TX"; | |
43 | microchip,digital; | |
44 | output-low; | |
45 | }; | |
46 | uart2-rx { | |
47 | pins = "B0"; | |
48 | function = "U2RX"; | |
49 | microchip,digital; | |
50 | input-enable; | |
51 | }; | |
52 | }; | |
53 | }; | |
54 | ||
55 | uart2: serial@1f822200 { | |
56 | compatible = "microchip,pic32mzda-uart"; | |
57 | reg = <0x1f822200 0x50>; | |
58 | pinctrl-names = "default"; | |
59 | pinctrl-0 = <&pinctrl_uart2>; | |
60 | }; |