Linux-libre 5.0.10-gnu
[librecmc/linux-libre.git] / arch / mips / boot / dts / pic32 / pic32mzda_sk.dts
1 /*
2  * Copyright (C) 2015 Microchip Technology Inc.  All rights reserved.
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License version 2 as
6  * published by the Free Software Foundation.
7  *
8  */
9
10 /dts-v1/;
11
12 #include <dt-bindings/gpio/gpio.h>
13 #include <dt-bindings/interrupt-controller/irq.h>
14
15 #include "pic32mzda.dtsi"
16
17 / {
18         compatible = "microchip,pic32mzda-sk", "microchip,pic32mzda";
19         model = "Microchip PIC32MZDA Starter Kit";
20
21         memory {
22                 device_type = "memory";
23                 reg = <0x08000000 0x08000000>;
24         };
25
26         chosen {
27                 bootargs = "earlyprintk=ttyPIC1,115200n8r console=ttyPIC1,115200n8";
28         };
29
30         leds0 {
31                 compatible = "gpio-leds";
32                 pinctrl-names = "default";
33                 pinctrl-0 = <&user_leds_s0>;
34
35                 led@1 {
36                         label = "pic32mzda_sk:red:led1";
37                         gpios = <&gpio7 0 GPIO_ACTIVE_HIGH>;
38                         linux,default-trigger = "heartbeat";
39                 };
40
41                 led@2 {
42                         label = "pic32mzda_sk:yellow:led2";
43                         gpios = <&gpio7 1 GPIO_ACTIVE_HIGH>;
44                         linux,default-trigger = "mmc0";
45                 };
46
47                 led@3 {
48                         label = "pic32mzda_sk:green:led3";
49                         gpios = <&gpio7 2 GPIO_ACTIVE_HIGH>;
50                         default-state = "on";
51                 };
52         };
53
54         keys0 {
55                 compatible = "gpio-keys";
56                 pinctrl-0 = <&user_buttons_s0>;
57                 pinctrl-names = "default";
58
59                 #address-cells = <1>;
60                 #size-cells = <0>;
61
62                 button@sw1 {
63                         label = "ESC";
64                         linux,code = <1>;
65                         gpios = <&gpio1 12 0>;
66                 };
67
68                 button@sw2 {
69                         label = "Home";
70                         linux,code = <102>;
71                         gpios = <&gpio1 13 0>;
72                 };
73
74                 button@sw3 {
75                         label = "Menu";
76                         linux,code = <139>;
77                         gpios = <&gpio1 14 0>;
78                 };
79         };
80 };
81
82 &uart2 {
83         pinctrl-names = "default";
84         pinctrl-0 = <&pinctrl_uart2>;
85         status = "okay";
86 };
87
88 &uart4 {
89         pinctrl-names = "default";
90         pinctrl-0 = <&pinctrl_uart4>;
91         status = "okay";
92 };
93
94 &sdhci {
95         pinctrl-names = "default";
96         pinctrl-0 = <&pinctrl_sdhc1>;
97         status = "okay";
98         assigned-clocks = <&rootclk REF2CLK>, <&rootclk REF4CLK>,
99                 <&rootclk REF5CLK>;
100         assigned-clock-rates = <50000000>, <25000000>, <40000000>;
101 };
102
103 &pic32_pinctrl {
104
105         pinctrl_sdhc1: sdhc1_pins0 {
106                 pins = "A6", "D4", "G13", "G12", "G14", "A7", "A0";
107                 microchip,digital;
108         };
109
110         user_leds_s0: user_leds_s0 {
111                 pins = "H0", "H1", "H2";
112                 output-low;
113                 microchip,digital;
114         };
115
116         user_buttons_s0: user_buttons_s0 {
117                 pins = "B12", "B13", "B14";
118                 microchip,digital;
119                 input-enable;
120                 bias-pull-up;
121         };
122
123         pinctrl_uart2: pinctrl_uart2 {
124                 uart2-tx {
125                         pins = "G9";
126                         function = "U2TX";
127                         microchip,digital;
128                         output-high;
129                 };
130                 uart2-rx {
131                         pins = "B0";
132                         function = "U2RX";
133                         microchip,digital;
134                         input-enable;
135                 };
136         };
137
138         pinctrl_uart4: uart4-0 {
139                 uart4-tx {
140                         pins = "C3";
141                         function = "U4TX";
142                         microchip,digital;
143                         output-high;
144                 };
145                 uart4-rx {
146                         pins = "E8";
147                         function = "U4RX";
148                         microchip,digital;
149                         input-enable;
150                 };
151         };
152 };