1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0-or-later OR MIT 2724ba675SRob Herring/* 3724ba675SRob Herring * Broadcom BCM470X / BCM5301X ARM platform code. 4724ba675SRob Herring * DTS for Meraki MR32 / Codename: Espresso 5724ba675SRob Herring * 6724ba675SRob Herring * Copyright (C) 2018-2020 Christian Lamparter <chunkeey@gmail.com> 7724ba675SRob Herring */ 8724ba675SRob Herring 9724ba675SRob Herring/dts-v1/; 10724ba675SRob Herring 11724ba675SRob Herring#include "bcm4708.dtsi" 12724ba675SRob Herring#include "bcm5301x-nand-cs0-bch8.dtsi" 13724ba675SRob Herring#include <dt-bindings/leds/common.h> 14724ba675SRob Herring 15724ba675SRob Herring/ { 16724ba675SRob Herring compatible = "meraki,mr32", "brcm,bcm53016", "brcm,bcm4708"; 17724ba675SRob Herring model = "Meraki MR32"; 18724ba675SRob Herring 19724ba675SRob Herring chosen { 20724ba675SRob Herring bootargs = " console=ttyS0,115200n8 earlycon"; 21724ba675SRob Herring }; 22724ba675SRob Herring 23724ba675SRob Herring memory@0 { 24724ba675SRob Herring reg = <0x00000000 0x08000000>; 25724ba675SRob Herring device_type = "memory"; 26724ba675SRob Herring }; 27724ba675SRob Herring 28724ba675SRob Herring aliases { 29724ba675SRob Herring serial1 = &uart2; 30724ba675SRob Herring }; 31724ba675SRob Herring 32724ba675SRob Herring leds { 33724ba675SRob Herring compatible = "gpio-leds"; 34724ba675SRob Herring 35724ba675SRob Herring sysled3 { 36724ba675SRob Herring function = LED_FUNCTION_FAULT; 37724ba675SRob Herring color = <LED_COLOR_ID_AMBER>; 38724ba675SRob Herring gpios = <&chipcommon 18 GPIO_ACTIVE_LOW>; 39724ba675SRob Herring panic-indicator; 40724ba675SRob Herring }; 41724ba675SRob Herring sysled2 { 42724ba675SRob Herring function = LED_FUNCTION_INDICATOR; 43724ba675SRob Herring color = <LED_COLOR_ID_WHITE>; 44724ba675SRob Herring gpios = <&chipcommon 19 GPIO_ACTIVE_HIGH>; 45724ba675SRob Herring }; 46724ba675SRob Herring }; 47724ba675SRob Herring 48724ba675SRob Herring keys { 49724ba675SRob Herring compatible = "gpio-keys"; 50724ba675SRob Herring 51724ba675SRob Herring button-restart { 52724ba675SRob Herring label = "Reset"; 53724ba675SRob Herring linux,code = <KEY_RESTART>; 54724ba675SRob Herring gpios = <&chipcommon 21 GPIO_ACTIVE_LOW>; 55724ba675SRob Herring }; 56724ba675SRob Herring }; 57724ba675SRob Herring 58724ba675SRob Herring pwm-leds { 59724ba675SRob Herring compatible = "pwm-leds"; 60724ba675SRob Herring 61724ba675SRob Herring led-0 { 62724ba675SRob Herring /* SYS-LED 1 - Tricolor */ 63724ba675SRob Herring function = LED_FUNCTION_INDICATOR; 64724ba675SRob Herring color = <LED_COLOR_ID_RED>; 65724ba675SRob Herring pwms = <&pwm 0 50000 0>; 66724ba675SRob Herring max-brightness = <255>; 67724ba675SRob Herring }; 68724ba675SRob Herring 69724ba675SRob Herring led-1 { 70724ba675SRob Herring /* SYS-LED 1 - Tricolor */ 71724ba675SRob Herring function = LED_FUNCTION_POWER; 72724ba675SRob Herring color = <LED_COLOR_ID_GREEN>; 73724ba675SRob Herring pwms = <&pwm 1 50000 0>; 74724ba675SRob Herring max-brightness = <255>; 75724ba675SRob Herring }; 76724ba675SRob Herring 77724ba675SRob Herring led-2 { 78724ba675SRob Herring /* SYS-LED 1 - Tricolor */ 79724ba675SRob Herring function = LED_FUNCTION_INDICATOR; 80724ba675SRob Herring color = <LED_COLOR_ID_BLUE>; 81724ba675SRob Herring pwms = <&pwm 2 50000 0>; 82724ba675SRob Herring max-brightness = <255>; 83724ba675SRob Herring }; 84724ba675SRob Herring }; 85724ba675SRob Herring}; 86724ba675SRob Herring 87724ba675SRob Herring&uart0 { 88724ba675SRob Herring clock-frequency = <62500000>; 89724ba675SRob Herring /delete-property/ clocks; 90724ba675SRob Herring}; 91724ba675SRob Herring 92724ba675SRob Herring&uart1 { 93724ba675SRob Herring status = "disabled"; 94724ba675SRob Herring}; 95724ba675SRob Herring 96724ba675SRob Herring&uart2 { 97724ba675SRob Herring status = "okay"; 98724ba675SRob Herring /* 99724ba675SRob Herring * bluetooth-le { 100724ba675SRob Herring * compatible = "brcm,bcm20732"; 101724ba675SRob Herring * enable-gpios = <&chipcommon 20 GPIO_ACTIVE_HIGH>; 102724ba675SRob Herring *}; 103724ba675SRob Herring */ 104724ba675SRob Herring}; 105724ba675SRob Herring 106724ba675SRob Herring&gmac0 { 107724ba675SRob Herring nvmem-cell-names = "mac-address"; 108724ba675SRob Herring nvmem-cells = <&mac_address>; 109724ba675SRob Herring}; 110724ba675SRob Herring 111724ba675SRob Herring&gmac1 { 112724ba675SRob Herring status = "disabled"; 113724ba675SRob Herring}; 114724ba675SRob Herring&gmac2 { 115724ba675SRob Herring status = "disabled"; 116724ba675SRob Herring}; 117724ba675SRob Herring&gmac3 { 118724ba675SRob Herring status = "disabled"; 119724ba675SRob Herring}; 120724ba675SRob Herring 121724ba675SRob Herring&pwm { 122724ba675SRob Herring status = "okay"; 123724ba675SRob Herring pinctrl-names = "default"; 124724ba675SRob Herring pinctrl-0 = <&pinmux_pwm>; 125724ba675SRob Herring}; 126724ba675SRob Herring 127724ba675SRob Herring&nandcs { 128724ba675SRob Herring partitions { 129724ba675SRob Herring /* 130724ba675SRob Herring * The partition autodetection does not work for this device. 131724ba675SRob Herring * It will only detect the "nvram" partition with an incorrect size. 132724ba675SRob Herring * [ 1.721667] 1 bcm47xxpart partitions found on MTD device brcmnand.0 133724ba675SRob Herring * [ 1.727962] Creating 1 MTD partitions on "brcmnand.0": 134724ba675SRob Herring * [ 1.733117] 0x000000400000-0x000008000000 : "nvram" 135724ba675SRob Herring */ 136724ba675SRob Herring 137724ba675SRob Herring compatible = "fixed-partitions"; 138724ba675SRob Herring #address-cells = <0x1>; 139724ba675SRob Herring #size-cells = <0x1>; 140724ba675SRob Herring 141724ba675SRob Herring partition@0 { 142724ba675SRob Herring label = "u-boot"; 143724ba675SRob Herring reg = <0x0 0x100000>; 144724ba675SRob Herring read-only; 145724ba675SRob Herring }; 146724ba675SRob Herring 147724ba675SRob Herring partition@100000 { 148724ba675SRob Herring label = "bootkernel1"; 149724ba675SRob Herring reg = <0x100000 0x300000>; 150724ba675SRob Herring read-only; 151724ba675SRob Herring }; 152724ba675SRob Herring 153724ba675SRob Herring partition@400000 { 154724ba675SRob Herring label = "nvram"; 155724ba675SRob Herring reg = <0x400000 0x100000>; 156724ba675SRob Herring read-only; 157724ba675SRob Herring }; 158724ba675SRob Herring 159724ba675SRob Herring partition@500000 { 160724ba675SRob Herring label = "bootkernel2"; 161724ba675SRob Herring reg = <0x500000 0x300000>; 162724ba675SRob Herring read-only; 163724ba675SRob Herring }; 164724ba675SRob Herring 165724ba675SRob Herring partition@800000 { 166724ba675SRob Herring label = "ubi"; 167724ba675SRob Herring reg = <0x800000 0x7780000>; 168724ba675SRob Herring }; 169724ba675SRob Herring }; 170724ba675SRob Herring}; 171724ba675SRob Herring 172724ba675SRob Herring&srab { 173724ba675SRob Herring status = "okay"; 174724ba675SRob Herring 175724ba675SRob Herring ports { 176724ba675SRob Herring port@0 { 177724ba675SRob Herring label = "poe"; 178724ba675SRob Herring }; 179724ba675SRob Herring 180724ba675SRob Herring port@5 { 181724ba675SRob Herring label = "cpu"; 182724ba675SRob Herring 183724ba675SRob Herring fixed-link { 184724ba675SRob Herring speed = <1000>; 185724ba675SRob Herring full-duplex; 186724ba675SRob Herring }; 187724ba675SRob Herring }; 188473baeabSRafał Miłecki 189473baeabSRafał Miłecki port@7 { 190473baeabSRafał Miłecki status = "disabled"; 191473baeabSRafał Miłecki }; 192473baeabSRafał Miłecki 193473baeabSRafał Miłecki port@8 { 194473baeabSRafał Miłecki status = "disabled"; 195473baeabSRafał Miłecki }; 196724ba675SRob Herring }; 197724ba675SRob Herring}; 198724ba675SRob Herring 199724ba675SRob Herring&i2c0 { 200724ba675SRob Herring status = "okay"; 201724ba675SRob Herring 202724ba675SRob Herring pinctrl-names = "default"; 203724ba675SRob Herring pinctrl-0 = <&pinmux_i2c>; 204724ba675SRob Herring 205724ba675SRob Herring clock-frequency = <100000>; 206724ba675SRob Herring 207724ba675SRob Herring current_sense: ina219@45 { 208724ba675SRob Herring compatible = "ti,ina219"; 209724ba675SRob Herring reg = <0x45>; 210724ba675SRob Herring shunt-resistor = <60000>; /* = 60 mOhms */ 211724ba675SRob Herring }; 212724ba675SRob Herring 213724ba675SRob Herring eeprom: eeprom@50 { 214724ba675SRob Herring compatible = "atmel,24c64"; 215724ba675SRob Herring reg = <0x50>; 216724ba675SRob Herring pagesize = <32>; 217724ba675SRob Herring read-only; 218*ed0d78c7SRafał Miłecki 219*ed0d78c7SRafał Miłecki nvmem-layout { 220*ed0d78c7SRafał Miłecki compatible = "fixed-layout"; 221724ba675SRob Herring #address-cells = <1>; 222724ba675SRob Herring #size-cells = <1>; 223724ba675SRob Herring 224724ba675SRob Herring mac_address: mac-address@66 { 225724ba675SRob Herring reg = <0x66 0x6>; 226724ba675SRob Herring }; 227724ba675SRob Herring }; 228724ba675SRob Herring }; 229*ed0d78c7SRafał Miłecki}; 230