Commit f509d4a7 authored by Matthew Hagan's avatar Matthew Hagan Committed by Florian Fainelli
Browse files

ARM: dts: NSP: Add common bindings for MX64/MX65



These bindings are required for all Meraki MX64/MX65 devices. These
common bindings include memory (2GB), PWM LEDs, AMAC, I2C (AT24), NAND
partitions, EHCI, OHCI and pinctrl.

Signed-off-by: default avatarMatthew Hagan <mnhagan88@gmail.com>
Signed-off-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
parent e544f2cf
Loading
Loading
Loading
Loading
+129 −0
Original line number Diff line number Diff line
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
/*
 * Common Bindings for Cisco Meraki MX64 (Kingpin) and MX65 (Alamo) devices.
 *
 * Copyright (C) 2020-2021 Matthew Hagan <mnhagan88@gmail.com>
 */

#include "bcm-nsp.dtsi"
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/input.h>
#include <dt-bindings/leds/common.h>

/ {
	pwm-leds {
		compatible = "pwm-leds";

		led-1 {
			function = LED_FUNCTION_INDICATOR;
			color = <LED_COLOR_ID_RED>;
			pwms = <&pwm 1 50000>;
			max-brightness = <255>;
		};

		led-2 {
			function = LED_FUNCTION_INDICATOR;
			color = <LED_COLOR_ID_GREEN>;
			pwms = <&pwm 2 50000>;
			max-brightness = <255>;
		};

		led-3 {
			function = LED_FUNCTION_INDICATOR;
			color = <LED_COLOR_ID_BLUE>;
			pwms = <&pwm 3 50000>;
			max-brightness = <255>;
		};
	};
};

&amac2 {
	status = "okay";
};

&ehci0 {
	status = "okay";
};

&i2c0 {
	status = "okay";

	at24@50 {
		compatible = "atmel,24c64";
		reg = <0x50>;
		pagesize = <32>;
		read-only;
	};
};

&nand_controller {
	nand@0 {
		compatible = "brcm,nandcs";
		reg = <0>;
		nand-on-flash-bbt;

		#address-cells = <1>;
		#size-cells = <1>;

		nand-ecc-strength = <24>;
		nand-ecc-step-size = <1024>;

		brcm,nand-oob-sector-size = <27>;

		partition@0 {
			label = "u-boot";
			reg = <0x0 0x80000>;
			read-only;
		};

		partition@80000 {
			label = "shmoo";
			reg = <0x80000 0x80000>;
			read-only;
		};

		partition@100000 {
			label = "bootkernel1";
			reg = <0x100000 0x300000>;
		};

		partition@400000 {
			label = "nvram";
			reg = <0x400000 0x100000>;
		};

		partition@500000 {
			label = "bootkernel2";
			reg = <0x500000 0x300000>;
		};

		partition@800000 {
			label = "ubi";
			reg = <0x800000 0x3f700000>;
		};
	};
};

&ohci0 {
	status = "okay";
};

&pinctrl {
	pinctrl-names = "default";
	pinctrl-0 = <&pwm_leds>;

	pwm_leds: pwm_leds {
		function = "pwm";
		groups = "pwm1_grp", "pwm2_grp", "pwm3_grp";
	};
};

&pwm {
	status = "okay";
	#pwm-cells = <2>;
};

&uart0 {
	clock-frequency = <62500000>;
	status = "okay";
};