1130b51d3SClément Léger// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2130b51d3SClément Léger/* 3130b51d3SClément Léger * at91-sama5d27_wlsom1.dtsi - Device Tree file for SAMA5D27 WLSOM1 4130b51d3SClément Léger * 5130b51d3SClément Léger * Copyright (C) 2019 Microchip Technology Inc. and its subsidiaries 6130b51d3SClément Léger * 7130b51d3SClément Léger * Author: Nicolas Ferre <nicolas.ferre@microcihp.com> 8130b51d3SClément Léger * Author: Eugen Hristev <eugen.hristev@microcihp.com> 9130b51d3SClément Léger */ 10130b51d3SClément Léger#include "sama5d2.dtsi" 11130b51d3SClément Léger#include "sama5d2-pinfunc.h" 12130b51d3SClément Léger#include <dt-bindings/gpio/gpio.h> 13130b51d3SClément Léger#include <dt-bindings/mfd/atmel-flexcom.h> 14130b51d3SClément Léger 15130b51d3SClément Léger/ { 16130b51d3SClément Léger model = "Microchip SAMA5D27 WLSOM1"; 17130b51d3SClément Léger compatible = "microchip,sama5d27-wlsom1", "atmel,sama5d27", "atmel,sama5d2", "atmel,sama5"; 18130b51d3SClément Léger 19130b51d3SClément Léger aliases { 20130b51d3SClément Léger i2c0 = &i2c0; 21130b51d3SClément Léger }; 22130b51d3SClément Léger 23130b51d3SClément Léger clocks { 24130b51d3SClément Léger slow_xtal { 25130b51d3SClément Léger clock-frequency = <32768>; 26130b51d3SClément Léger }; 27130b51d3SClément Léger 28130b51d3SClément Léger main_xtal { 29130b51d3SClément Léger clock-frequency = <24000000>; 30130b51d3SClément Léger }; 31130b51d3SClément Léger }; 32130b51d3SClément Léger}; 33130b51d3SClément Léger 34130b51d3SClément Léger&flx1 { 35130b51d3SClément Léger atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_USART>; 36130b51d3SClément Léger 37130b51d3SClément Léger uart6: serial@200 { 38130b51d3SClément Léger pinctrl-0 = <&pinctrl_flx1_default>; 39130b51d3SClément Léger pinctrl-names = "default"; 40130b51d3SClément Léger }; 41130b51d3SClément Léger}; 42130b51d3SClément Léger 43130b51d3SClément Léger&i2c0 { 44130b51d3SClément Léger pinctrl-0 = <&pinctrl_i2c0_default>; 45130b51d3SClément Léger pinctrl-1 = <&pinctrl_i2c0_gpio>; 46130b51d3SClément Léger pinctrl-names = "default", "gpio"; 47130b51d3SClément Léger sda-gpios = <&pioA PIN_PD21 GPIO_ACTIVE_HIGH>; 48130b51d3SClément Léger scl-gpios = <&pioA PIN_PD22 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 49130b51d3SClément Léger status = "okay"; 50130b51d3SClément Léger}; 51130b51d3SClément Léger 52130b51d3SClément Léger&i2c1 { 53130b51d3SClément Léger dmas = <0>, <0>; 54130b51d3SClément Léger pinctrl-names = "default", "gpio"; 55130b51d3SClément Léger pinctrl-0 = <&pinctrl_i2c1_default>; 56130b51d3SClément Léger pinctrl-1 = <&pinctrl_i2c1_gpio>; 57130b51d3SClément Léger sda-gpios = <&pioA PIN_PD19 GPIO_ACTIVE_HIGH>; 58130b51d3SClément Léger scl-gpios = <&pioA PIN_PD20 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 59*ebd78ba8SClément Léger status = "disable"; 60*ebd78ba8SClément Léger secure-status = "okay"; 61130b51d3SClément Léger 62130b51d3SClément Léger mcp16502@5b { 63130b51d3SClément Léger compatible = "microchip,mcp16502"; 64130b51d3SClément Léger reg = <0x5b>; 65130b51d3SClément Léger status = "okay"; 66130b51d3SClément Léger lpm-gpios = <&pioBU 0 GPIO_ACTIVE_LOW>; 67130b51d3SClément Léger 68130b51d3SClément Léger regulators { 69130b51d3SClément Léger vdd_3v3: VDD_IO { 70130b51d3SClément Léger regulator-name = "VDD_IO"; 71130b51d3SClément Léger regulator-min-microvolt = <1200000>; 72130b51d3SClément Léger regulator-max-microvolt = <3700000>; 73130b51d3SClément Léger regulator-initial-mode = <2>; 74130b51d3SClément Léger regulator-allowed-modes = <2>, <4>; 75130b51d3SClément Léger regulator-always-on; 76130b51d3SClément Léger 77130b51d3SClément Léger regulator-state-standby { 78130b51d3SClément Léger regulator-on-in-suspend; 79130b51d3SClément Léger regulator-mode = <4>; 80130b51d3SClément Léger }; 81130b51d3SClément Léger 82130b51d3SClément Léger regulator-state-mem { 83130b51d3SClément Léger regulator-off-in-suspend; 84130b51d3SClément Léger regulator-mode = <4>; 85130b51d3SClément Léger }; 86130b51d3SClément Léger }; 87130b51d3SClément Léger 88130b51d3SClément Léger vddio_ddr: VDD_DDR { 89130b51d3SClément Léger regulator-name = "VDD_DDR"; 90130b51d3SClément Léger regulator-min-microvolt = <600000>; 91130b51d3SClément Léger regulator-max-microvolt = <1850000>; 92130b51d3SClément Léger regulator-initial-mode = <2>; 93130b51d3SClément Léger regulator-allowed-modes = <2>, <4>; 94130b51d3SClément Léger regulator-always-on; 95130b51d3SClément Léger 96130b51d3SClément Léger regulator-state-standby { 97130b51d3SClément Léger regulator-on-in-suspend; 98130b51d3SClément Léger regulator-suspend-microvolt = <1200000>; 99130b51d3SClément Léger regulator-changeable-in-suspend; 100130b51d3SClément Léger regulator-mode = <4>; 101130b51d3SClément Léger }; 102130b51d3SClément Léger 103130b51d3SClément Léger regulator-state-mem { 104130b51d3SClément Léger regulator-on-in-suspend; 105130b51d3SClément Léger regulator-suspend-microvolt = <1200000>; 106130b51d3SClément Léger regulator-changeable-in-suspend; 107130b51d3SClément Léger regulator-mode = <4>; 108130b51d3SClément Léger }; 109130b51d3SClément Léger }; 110130b51d3SClément Léger 111130b51d3SClément Léger vdd_core: VDD_CORE { 112130b51d3SClément Léger regulator-name = "VDD_CORE"; 113130b51d3SClément Léger regulator-min-microvolt = <600000>; 114130b51d3SClément Léger regulator-max-microvolt = <1850000>; 115130b51d3SClément Léger regulator-initial-mode = <2>; 116130b51d3SClément Léger regulator-allowed-modes = <2>, <4>; 117130b51d3SClément Léger regulator-always-on; 118130b51d3SClément Léger 119130b51d3SClément Léger regulator-state-standby { 120130b51d3SClément Léger regulator-on-in-suspend; 121130b51d3SClément Léger regulator-mode = <4>; 122130b51d3SClément Léger }; 123130b51d3SClément Léger 124130b51d3SClément Léger regulator-state-mem { 125130b51d3SClément Léger regulator-off-in-suspend; 126130b51d3SClément Léger regulator-mode = <4>; 127130b51d3SClément Léger }; 128130b51d3SClément Léger }; 129130b51d3SClément Léger 130130b51d3SClément Léger vdd_ddr: VDD_OTHER { 131130b51d3SClément Léger regulator-name = "VDD_OTHER"; 132130b51d3SClément Léger regulator-min-microvolt = <1800000>; 133130b51d3SClément Léger regulator-max-microvolt = <1800000>; 134130b51d3SClément Léger regulator-initial-mode = <2>; 135130b51d3SClément Léger regulator-allowed-modes = <2>, <4>; 136130b51d3SClément Léger regulator-always-on; 137130b51d3SClément Léger 138130b51d3SClément Léger regulator-state-standby { 139130b51d3SClément Léger regulator-on-in-suspend; 140130b51d3SClément Léger regulator-suspend-microvolt = <1800000>; 141130b51d3SClément Léger regulator-changeable-in-suspend; 142130b51d3SClément Léger regulator-mode = <4>; 143130b51d3SClément Léger }; 144130b51d3SClément Léger 145130b51d3SClément Léger regulator-state-mem { 146130b51d3SClément Léger regulator-on-in-suspend; 147130b51d3SClément Léger regulator-suspend-microvolt = <1800000>; 148130b51d3SClément Léger regulator-changeable-in-suspend; 149130b51d3SClément Léger regulator-mode = <4>; 150130b51d3SClément Léger }; 151130b51d3SClément Léger }; 152130b51d3SClément Léger 153130b51d3SClément Léger LDO1 { 154130b51d3SClément Léger regulator-name = "LDO1"; 155130b51d3SClément Léger regulator-min-microvolt = <1200000>; 156130b51d3SClément Léger regulator-max-microvolt = <3700000>; 157130b51d3SClément Léger regulator-always-on; 158130b51d3SClément Léger 159130b51d3SClément Léger regulator-state-standby { 160130b51d3SClément Léger regulator-on-in-suspend; 161130b51d3SClément Léger }; 162130b51d3SClément Léger 163130b51d3SClément Léger regulator-state-mem { 164130b51d3SClément Léger regulator-off-in-suspend; 165130b51d3SClément Léger }; 166130b51d3SClément Léger }; 167130b51d3SClément Léger 168130b51d3SClément Léger LDO2 { 169130b51d3SClément Léger regulator-name = "LDO2"; 170130b51d3SClément Léger regulator-min-microvolt = <1200000>; 171130b51d3SClément Léger regulator-max-microvolt = <3700000>; 172130b51d3SClément Léger regulator-always-on; 173130b51d3SClément Léger 174130b51d3SClément Léger regulator-state-standby { 175130b51d3SClément Léger regulator-on-in-suspend; 176130b51d3SClément Léger }; 177130b51d3SClément Léger 178130b51d3SClément Léger regulator-state-mem { 179130b51d3SClément Léger regulator-off-in-suspend; 180130b51d3SClément Léger }; 181130b51d3SClément Léger }; 182130b51d3SClément Léger }; 183130b51d3SClément Léger }; 184130b51d3SClément Léger}; 185130b51d3SClément Léger 186130b51d3SClément Léger&macb0 { 187130b51d3SClément Léger pinctrl-names = "default"; 188130b51d3SClément Léger pinctrl-0 = <&pinctrl_macb0_default>; 189130b51d3SClément Léger phy-mode = "rmii"; 190130b51d3SClément Léger 191130b51d3SClément Léger ethernet-phy@0 { 192130b51d3SClément Léger reg = <0x0>; 193130b51d3SClément Léger interrupt-parent = <&pioA>; 194130b51d3SClément Léger interrupts = <PIN_PB24 IRQ_TYPE_LEVEL_LOW>; 195130b51d3SClément Léger pinctrl-names = "default"; 196130b51d3SClément Léger pinctrl-0 = <&pinctrl_macb0_phy_irq>; 197130b51d3SClément Léger }; 198130b51d3SClément Léger}; 199130b51d3SClément Léger 200130b51d3SClément Léger&pmc { 201130b51d3SClément Léger atmel,osc-bypass; 202130b51d3SClément Léger}; 203130b51d3SClément Léger 204130b51d3SClément Léger&qspi1 { 205130b51d3SClément Léger pinctrl-names = "default"; 206130b51d3SClément Léger pinctrl-0 = <&pinctrl_qspi1_default>; 207130b51d3SClément Léger status = "disabled"; 208130b51d3SClément Léger 209130b51d3SClément Léger qspi1_flash: spi_flash@0 { 210130b51d3SClément Léger #address-cells = <1>; 211130b51d3SClément Léger #size-cells = <1>; 212130b51d3SClément Léger compatible = "jedec,spi-nor"; 213130b51d3SClément Léger reg = <0>; 214130b51d3SClément Léger spi-max-frequency = <80000000>; 215130b51d3SClément Léger spi-rx-bus-width = <4>; 216130b51d3SClément Léger spi-tx-bus-width = <4>; 217130b51d3SClément Léger m25p,fast-read; 218130b51d3SClément Léger status = "disabled"; 219130b51d3SClément Léger 220130b51d3SClément Léger at91bootstrap@0 { 221130b51d3SClément Léger label = "at91bootstrap"; 222130b51d3SClément Léger reg = <0x0 0x40000>; 223130b51d3SClément Léger }; 224130b51d3SClément Léger 225130b51d3SClément Léger bootloader@40000 { 226130b51d3SClément Léger label = "bootloader"; 227130b51d3SClément Léger reg = <0x40000 0xc0000>; 228130b51d3SClément Léger }; 229130b51d3SClément Léger 230130b51d3SClément Léger bootloaderenvred@100000 { 231130b51d3SClément Léger label = "bootloader env redundant"; 232130b51d3SClément Léger reg = <0x100000 0x40000>; 233130b51d3SClément Léger }; 234130b51d3SClément Léger 235130b51d3SClément Léger bootloaderenv@140000 { 236130b51d3SClément Léger label = "bootloader env"; 237130b51d3SClément Léger reg = <0x140000 0x40000>; 238130b51d3SClément Léger }; 239130b51d3SClément Léger 240130b51d3SClément Léger dtb@180000 { 241130b51d3SClément Léger label = "device tree"; 242130b51d3SClément Léger reg = <0x180000 0x80000>; 243130b51d3SClément Léger }; 244130b51d3SClément Léger 245130b51d3SClément Léger kernel@200000 { 246130b51d3SClément Léger label = "kernel"; 247130b51d3SClément Léger reg = <0x200000 0x600000>; 248130b51d3SClément Léger }; 249130b51d3SClément Léger }; 250130b51d3SClément Léger}; 251130b51d3SClément Léger 252130b51d3SClément Léger&pioA { 253130b51d3SClément Léger pinctrl_flx1_default: flx1_usart_default { 254130b51d3SClément Léger pinmux = <PIN_PA24__FLEXCOM1_IO0>, 255130b51d3SClément Léger <PIN_PA23__FLEXCOM1_IO1>, 256130b51d3SClément Léger <PIN_PA25__FLEXCOM1_IO3>, 257130b51d3SClément Léger <PIN_PA26__FLEXCOM1_IO4>; 258130b51d3SClément Léger bias-disable; 259130b51d3SClément Léger }; 260130b51d3SClément Léger 261130b51d3SClément Léger pinctrl_i2c0_default: i2c0_default { 262130b51d3SClément Léger pinmux = <PIN_PD21__TWD0>, 263130b51d3SClément Léger <PIN_PD22__TWCK0>; 264130b51d3SClément Léger bias-disable; 265130b51d3SClément Léger }; 266130b51d3SClément Léger 267130b51d3SClément Léger pinctrl_i2c0_gpio: i2c0_gpio { 268130b51d3SClément Léger pinmux = <PIN_PD21__GPIO>, 269130b51d3SClément Léger <PIN_PD22__GPIO>; 270130b51d3SClément Léger bias-disable; 271130b51d3SClément Léger }; 272130b51d3SClément Léger 273130b51d3SClément Léger pinctrl_i2c1_default: i2c1_default { 274130b51d3SClément Léger pinmux = <PIN_PD19__TWD1>, 275130b51d3SClément Léger <PIN_PD20__TWCK1>; 276130b51d3SClément Léger bias-disable; 277130b51d3SClément Léger }; 278130b51d3SClément Léger 279130b51d3SClément Léger pinctrl_i2c1_gpio: i2c1_gpio { 280130b51d3SClément Léger pinmux = <PIN_PD19__GPIO>, 281130b51d3SClément Léger <PIN_PD20__GPIO>; 282130b51d3SClément Léger bias-disable; 283130b51d3SClément Léger }; 284130b51d3SClément Léger 285130b51d3SClément Léger pinctrl_macb0_default: macb0_default { 286130b51d3SClément Léger pinmux = <PIN_PB14__GTXCK>, 287130b51d3SClément Léger <PIN_PB15__GTXEN>, 288130b51d3SClément Léger <PIN_PB16__GRXDV>, 289130b51d3SClément Léger <PIN_PB17__GRXER>, 290130b51d3SClément Léger <PIN_PB18__GRX0>, 291130b51d3SClément Léger <PIN_PB19__GRX1>, 292130b51d3SClément Léger <PIN_PB20__GTX0>, 293130b51d3SClément Léger <PIN_PB21__GTX1>, 294130b51d3SClément Léger <PIN_PB22__GMDC>, 295130b51d3SClément Léger <PIN_PB23__GMDIO>; 296130b51d3SClément Léger bias-disable; 297130b51d3SClément Léger }; 298130b51d3SClément Léger 299130b51d3SClément Léger pinctrl_macb0_phy_irq: macb0_phy_irq { 300130b51d3SClément Léger pinmux = <PIN_PB24__GPIO>; 301130b51d3SClément Léger bias-disable; 302130b51d3SClément Léger }; 303130b51d3SClément Léger 304130b51d3SClément Léger pinctrl_qspi1_default: qspi1_default { 305130b51d3SClément Léger pinmux = <PIN_PB5__QSPI1_SCK>, 306130b51d3SClément Léger <PIN_PB6__QSPI1_CS>, 307130b51d3SClément Léger <PIN_PB7__QSPI1_IO0>, 308130b51d3SClément Léger <PIN_PB8__QSPI1_IO1>, 309130b51d3SClément Léger <PIN_PB9__QSPI1_IO2>, 310130b51d3SClément Léger <PIN_PB10__QSPI1_IO3>; 311130b51d3SClément Léger bias-pull-up; 312130b51d3SClément Léger }; 313130b51d3SClément Léger}; 314130b51d3SClément Léger 315