aboutsummaryrefslogtreecommitdiff
path: root/Bindings/pinctrl/microchip,pic32-pinctrl.txt
diff options
context:
space:
mode:
authorAndrew Turner <andrew@FreeBSD.org>2016-07-27 10:33:45 +0000
committerAndrew Turner <andrew@FreeBSD.org>2016-07-27 10:33:45 +0000
commitc7716441be3a4a48aa7b7cdf69a15625c1cd8ef5 (patch)
tree2a59dacd09463974e72f84b0e05f237b0ba3f57b /Bindings/pinctrl/microchip,pic32-pinctrl.txt
parent235ad806ee815395bce54dc1b0ce1c06cd29b44a (diff)
downloadsrc-c7716441be3a4a48aa7b7cdf69a15625c1cd8ef5.tar.gz
src-c7716441be3a4a48aa7b7cdf69a15625c1cd8ef5.zip
Import the updated devicetree files fromvendor/device-tree/devicetree-965f3718
Notes
Notes: svn path=/vendor/device-tree/dist/; revision=303380 svn path=/vendor/device-tree/devicetree-965f3718/; revision=303381; tag=vendor/device-tree/devicetree-965f3718
Diffstat (limited to 'Bindings/pinctrl/microchip,pic32-pinctrl.txt')
-rw-r--r--Bindings/pinctrl/microchip,pic32-pinctrl.txt60
1 files changed, 60 insertions, 0 deletions
diff --git a/Bindings/pinctrl/microchip,pic32-pinctrl.txt b/Bindings/pinctrl/microchip,pic32-pinctrl.txt
new file mode 100644
index 000000000000..29b72e303ebf
--- /dev/null
+++ b/Bindings/pinctrl/microchip,pic32-pinctrl.txt
@@ -0,0 +1,60 @@
+* Microchip PIC32 Pin Controller
+
+Please refer to pinctrl-bindings.txt, ../gpio/gpio.txt, and
+../interrupt-controller/interrupts.txt for generic information regarding
+pin controller, GPIO, and interrupt bindings.
+
+PIC32 'pin configuration node' is a node of a group of pins which can be
+used for a specific device or function. This node represents configuraions of
+pins, optional function, and optional mux related configuration.
+
+Required properties for pin controller node:
+ - compatible: "microchip,pic32mada-pinctrl"
+ - reg: Address range of the pinctrl registers.
+ - clocks: Clock specifier (see clock bindings for details)
+
+Required properties for pin configuration sub-nodes:
+ - pins: List of pins to which the configuration applies.
+
+Optional properties for pin configuration sub-nodes:
+----------------------------------------------------
+ - function: Mux function for the specified pins.
+ - bias-pull-up: Enable weak pull-up.
+ - bias-pull-down: Enable weak pull-down.
+ - input-enable: Set the pin as an input.
+ - output-low: Set the pin as an output level low.
+ - output-high: Set the pin as an output level high.
+ - microchip,digital: Enable digital I/O.
+ - microchip,analog: Enable analog I/O.
+
+Example:
+
+pic32_pinctrl: pinctrl@1f801400{
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "microchip,pic32mzda-pinctrl";
+ reg = <0x1f801400 0x400>;
+ clocks = <&rootclk PB1CLK>;
+
+ pinctrl_uart2: pinctrl_uart2 {
+ uart2-tx {
+ pins = "G9";
+ function = "U2TX";
+ microchip,digital;
+ output-low;
+ };
+ uart2-rx {
+ pins = "B0";
+ function = "U2RX";
+ microchip,digital;
+ input-enable;
+ };
+ };
+};
+
+uart2: serial@1f822200 {
+ compatible = "microchip,pic32mzda-uart";
+ reg = <0x1f822200 0x50>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_uart2>;
+};