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