1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2*f126890aSEmmanuel Vadot/*
3*f126890aSEmmanuel Vadot * Common Bindings for Cisco Meraki MX64 (Kingpin) and MX65 (Alamo) devices.
4*f126890aSEmmanuel Vadot *
5*f126890aSEmmanuel Vadot * Copyright (C) 2020-2021 Matthew Hagan <mnhagan88@gmail.com>
6*f126890aSEmmanuel Vadot */
7*f126890aSEmmanuel Vadot
8*f126890aSEmmanuel Vadot#include "bcm-nsp.dtsi"
9*f126890aSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
10*f126890aSEmmanuel Vadot#include <dt-bindings/input/input.h>
11*f126890aSEmmanuel Vadot#include <dt-bindings/leds/common.h>
12*f126890aSEmmanuel Vadot
13*f126890aSEmmanuel Vadot/ {
14*f126890aSEmmanuel Vadot	pwm-leds {
15*f126890aSEmmanuel Vadot		compatible = "pwm-leds";
16*f126890aSEmmanuel Vadot
17*f126890aSEmmanuel Vadot		led-1 {
18*f126890aSEmmanuel Vadot			function = LED_FUNCTION_INDICATOR;
19*f126890aSEmmanuel Vadot			color = <LED_COLOR_ID_RED>;
20*f126890aSEmmanuel Vadot			pwms = <&pwm 1 50000>;
21*f126890aSEmmanuel Vadot			max-brightness = <255>;
22*f126890aSEmmanuel Vadot		};
23*f126890aSEmmanuel Vadot
24*f126890aSEmmanuel Vadot		led-2 {
25*f126890aSEmmanuel Vadot			function = LED_FUNCTION_POWER;
26*f126890aSEmmanuel Vadot			color = <LED_COLOR_ID_GREEN>;
27*f126890aSEmmanuel Vadot			pwms = <&pwm 2 50000>;
28*f126890aSEmmanuel Vadot			max-brightness = <255>;
29*f126890aSEmmanuel Vadot		};
30*f126890aSEmmanuel Vadot
31*f126890aSEmmanuel Vadot		led-3 {
32*f126890aSEmmanuel Vadot			function = LED_FUNCTION_INDICATOR;
33*f126890aSEmmanuel Vadot			color = <LED_COLOR_ID_BLUE>;
34*f126890aSEmmanuel Vadot			pwms = <&pwm 3 50000>;
35*f126890aSEmmanuel Vadot			max-brightness = <255>;
36*f126890aSEmmanuel Vadot		};
37*f126890aSEmmanuel Vadot	};
38*f126890aSEmmanuel Vadot};
39*f126890aSEmmanuel Vadot
40*f126890aSEmmanuel Vadot&amac2 {
41*f126890aSEmmanuel Vadot	status = "okay";
42*f126890aSEmmanuel Vadot	nvmem-cells = <&mac_address>;
43*f126890aSEmmanuel Vadot	nvmem-cell-names = "mac-address";
44*f126890aSEmmanuel Vadot};
45*f126890aSEmmanuel Vadot
46*f126890aSEmmanuel Vadot&ehci0 {
47*f126890aSEmmanuel Vadot	status = "okay";
48*f126890aSEmmanuel Vadot};
49*f126890aSEmmanuel Vadot
50*f126890aSEmmanuel Vadot&i2c0 {
51*f126890aSEmmanuel Vadot	status = "okay";
52*f126890aSEmmanuel Vadot
53*f126890aSEmmanuel Vadot	eeprom@50 {
54*f126890aSEmmanuel Vadot		compatible = "atmel,24c64";
55*f126890aSEmmanuel Vadot		reg = <0x50>;
56*f126890aSEmmanuel Vadot		pagesize = <32>;
57*f126890aSEmmanuel Vadot		read-only;
58*f126890aSEmmanuel Vadot		#address-cells = <1>;
59*f126890aSEmmanuel Vadot		#size-cells = <1>;
60*f126890aSEmmanuel Vadot
61*f126890aSEmmanuel Vadot		mac_address: mac-address@66 {
62*f126890aSEmmanuel Vadot			reg = <0x66 0x6>;
63*f126890aSEmmanuel Vadot		};
64*f126890aSEmmanuel Vadot	};
65*f126890aSEmmanuel Vadot};
66*f126890aSEmmanuel Vadot
67*f126890aSEmmanuel Vadot&nand_controller {
68*f126890aSEmmanuel Vadot	nand@0 {
69*f126890aSEmmanuel Vadot		compatible = "brcm,nandcs";
70*f126890aSEmmanuel Vadot		reg = <0>;
71*f126890aSEmmanuel Vadot		nand-on-flash-bbt;
72*f126890aSEmmanuel Vadot
73*f126890aSEmmanuel Vadot		#address-cells = <1>;
74*f126890aSEmmanuel Vadot		#size-cells = <1>;
75*f126890aSEmmanuel Vadot
76*f126890aSEmmanuel Vadot		nand-ecc-strength = <24>;
77*f126890aSEmmanuel Vadot		nand-ecc-step-size = <1024>;
78*f126890aSEmmanuel Vadot
79*f126890aSEmmanuel Vadot		brcm,nand-oob-sector-size = <27>;
80*f126890aSEmmanuel Vadot
81*f126890aSEmmanuel Vadot		partition@0 {
82*f126890aSEmmanuel Vadot			label = "u-boot";
83*f126890aSEmmanuel Vadot			reg = <0x0 0x80000>;
84*f126890aSEmmanuel Vadot			read-only;
85*f126890aSEmmanuel Vadot		};
86*f126890aSEmmanuel Vadot
87*f126890aSEmmanuel Vadot		partition@80000 {
88*f126890aSEmmanuel Vadot			label = "shmoo";
89*f126890aSEmmanuel Vadot			reg = <0x80000 0x80000>;
90*f126890aSEmmanuel Vadot			read-only;
91*f126890aSEmmanuel Vadot		};
92*f126890aSEmmanuel Vadot
93*f126890aSEmmanuel Vadot		partition@100000 {
94*f126890aSEmmanuel Vadot			label = "bootkernel1";
95*f126890aSEmmanuel Vadot			reg = <0x100000 0x300000>;
96*f126890aSEmmanuel Vadot		};
97*f126890aSEmmanuel Vadot
98*f126890aSEmmanuel Vadot		partition@400000 {
99*f126890aSEmmanuel Vadot			label = "nvram";
100*f126890aSEmmanuel Vadot			reg = <0x400000 0x100000>;
101*f126890aSEmmanuel Vadot		};
102*f126890aSEmmanuel Vadot
103*f126890aSEmmanuel Vadot		partition@500000 {
104*f126890aSEmmanuel Vadot			label = "bootkernel2";
105*f126890aSEmmanuel Vadot			reg = <0x500000 0x300000>;
106*f126890aSEmmanuel Vadot		};
107*f126890aSEmmanuel Vadot
108*f126890aSEmmanuel Vadot		partition@800000 {
109*f126890aSEmmanuel Vadot			label = "ubi";
110*f126890aSEmmanuel Vadot			reg = <0x800000 0x3f700000>;
111*f126890aSEmmanuel Vadot		};
112*f126890aSEmmanuel Vadot	};
113*f126890aSEmmanuel Vadot};
114*f126890aSEmmanuel Vadot
115*f126890aSEmmanuel Vadot&ohci0 {
116*f126890aSEmmanuel Vadot	status = "okay";
117*f126890aSEmmanuel Vadot};
118*f126890aSEmmanuel Vadot
119*f126890aSEmmanuel Vadot&pinctrl {
120*f126890aSEmmanuel Vadot	pinctrl-names = "default";
121*f126890aSEmmanuel Vadot	pinctrl-0 = <&pwm_leds>;
122*f126890aSEmmanuel Vadot
123*f126890aSEmmanuel Vadot	pwm_leds: pwm_leds {
124*f126890aSEmmanuel Vadot		function = "pwm";
125*f126890aSEmmanuel Vadot		groups = "pwm1_grp", "pwm2_grp", "pwm3_grp";
126*f126890aSEmmanuel Vadot	};
127*f126890aSEmmanuel Vadot};
128*f126890aSEmmanuel Vadot
129*f126890aSEmmanuel Vadot&pwm {
130*f126890aSEmmanuel Vadot	status = "okay";
131*f126890aSEmmanuel Vadot	#pwm-cells = <2>;
132*f126890aSEmmanuel Vadot};
133*f126890aSEmmanuel Vadot
134*f126890aSEmmanuel Vadot&uart0 {
135*f126890aSEmmanuel Vadot	clock-frequency = <62500000>;
136*f126890aSEmmanuel Vadot	status = "okay";
137*f126890aSEmmanuel Vadot};
138