1724ba675SRob Herring// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2724ba675SRob Herring/* 3724ba675SRob Herring * Copyright (c) 2018 Oleg Ivanov <balbes-150@yandex.ru> 4724ba675SRob Herring * Copyright (c) 2018 Martin Blumenstingl <martin.blumenstingl@googlemail.com> 5724ba675SRob Herring */ 6724ba675SRob Herring 7724ba675SRob Herring/dts-v1/; 8724ba675SRob Herring 9724ba675SRob Herring#include "meson8m2.dtsi" 10724ba675SRob Herring 11724ba675SRob Herring#include <dt-bindings/gpio/gpio.h> 12724ba675SRob Herring#include <dt-bindings/input/input.h> 13724ba675SRob Herring 14724ba675SRob Herring/ { 15724ba675SRob Herring model = "Tronsmart MXIII Plus"; 16724ba675SRob Herring compatible = "tronsmart,mxiii-plus", "amlogic,meson8m2"; 17724ba675SRob Herring 18724ba675SRob Herring aliases { 19724ba675SRob Herring ethernet0 = ðmac; 20724ba675SRob Herring i2c0 = &i2c_AO; 21724ba675SRob Herring serial0 = &uart_AO; 22724ba675SRob Herring mmc0 = &sd_card_slot; 23724ba675SRob Herring }; 24724ba675SRob Herring 25724ba675SRob Herring chosen { 26724ba675SRob Herring stdout-path = "serial0:115200n8"; 27724ba675SRob Herring }; 28724ba675SRob Herring 29*7947fd2dSNeil Armstrong memory@40000000 { 30724ba675SRob Herring device_type = "memory"; 31724ba675SRob Herring reg = <0x40000000 0x80000000>; 32724ba675SRob Herring }; 33724ba675SRob Herring 34724ba675SRob Herring adc-keys { 35724ba675SRob Herring compatible = "adc-keys"; 36724ba675SRob Herring io-channels = <&saradc 0>; 37724ba675SRob Herring io-channel-names = "buttons"; 38724ba675SRob Herring keyup-threshold-microvolt = <1710000>; 39724ba675SRob Herring 40724ba675SRob Herring button-function { 41724ba675SRob Herring label = "Function"; 42724ba675SRob Herring linux,code = <KEY_FN>; 43724ba675SRob Herring press-threshold-microvolt = <10000>; 44724ba675SRob Herring }; 45724ba675SRob Herring }; 46724ba675SRob Herring 47724ba675SRob Herring sdio_pwrseq: sdio-pwrseq { 48724ba675SRob Herring compatible = "mmc-pwrseq-simple"; 49724ba675SRob Herring 50724ba675SRob Herring pinctrl-0 = <&xtal_32k_out_pins>; 51724ba675SRob Herring pinctrl-names = "default"; 52724ba675SRob Herring 53724ba675SRob Herring reset-gpios = <&gpio GPIOX_11 GPIO_ACTIVE_LOW>, 54724ba675SRob Herring <&gpio_ao GPIOAO_6 GPIO_ACTIVE_LOW>; 55724ba675SRob Herring 56724ba675SRob Herring clocks = <&xtal_32k_out>; 57724ba675SRob Herring clock-names = "ext_clock"; 58724ba675SRob Herring }; 59724ba675SRob Herring 60724ba675SRob Herring vcc_3v3: regulator-vcc3v3 { 61724ba675SRob Herring compatible = "regulator-fixed"; 62724ba675SRob Herring regulator-name = "VCC3V3"; 63724ba675SRob Herring regulator-min-microvolt = <3300000>; 64724ba675SRob Herring regulator-max-microvolt = <3300000>; 65724ba675SRob Herring }; 66724ba675SRob Herring 67724ba675SRob Herring xtal_32k_out: xtal-32k-out-clk { 68724ba675SRob Herring compatible = "fixed-clock"; 69724ba675SRob Herring #clock-cells = <0>; 70724ba675SRob Herring clock-frequency = <32768>; 71724ba675SRob Herring clock-output-names = "xtal_32k_out"; 72724ba675SRob Herring }; 73724ba675SRob Herring}; 74724ba675SRob Herring 75724ba675SRob Herring&cpu0 { 76724ba675SRob Herring cpu-supply = <&vcck>; 77724ba675SRob Herring}; 78724ba675SRob Herring 79724ba675SRob Herringðmac { 80724ba675SRob Herring status = "okay"; 81724ba675SRob Herring 82724ba675SRob Herring pinctrl-0 = <ð_rgmii_pins>; 83724ba675SRob Herring pinctrl-names = "default"; 84724ba675SRob Herring 85724ba675SRob Herring phy-handle = <ð_phy0>; 86724ba675SRob Herring phy-mode = "rgmii-id"; 87724ba675SRob Herring 88724ba675SRob Herring mdio { 89724ba675SRob Herring compatible = "snps,dwmac-mdio"; 90724ba675SRob Herring #address-cells = <1>; 91724ba675SRob Herring #size-cells = <0>; 92724ba675SRob Herring 93724ba675SRob Herring eth_phy0: ethernet-phy@0 { 94724ba675SRob Herring /* Realtek RTL8211F (0x001cc916) */ 95724ba675SRob Herring reg = <0>; 96724ba675SRob Herring 97724ba675SRob Herring reset-assert-us = <10000>; 98724ba675SRob Herring reset-deassert-us = <80000>; 99724ba675SRob Herring reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>; 100724ba675SRob Herring }; 101724ba675SRob Herring }; 102724ba675SRob Herring}; 103724ba675SRob Herring 104724ba675SRob Herring&ir_receiver { 105724ba675SRob Herring status = "okay"; 106724ba675SRob Herring pinctrl-0 = <&ir_recv_pins>; 107724ba675SRob Herring pinctrl-names = "default"; 108724ba675SRob Herring}; 109724ba675SRob Herring 110724ba675SRob Herring&i2c_AO { 111724ba675SRob Herring status = "okay"; 112724ba675SRob Herring pinctrl-0 = <&i2c_ao_pins>; 113724ba675SRob Herring pinctrl-names = "default"; 114724ba675SRob Herring 115724ba675SRob Herring pmic@32 { 116724ba675SRob Herring compatible = "ricoh,rn5t618"; 117724ba675SRob Herring reg = <0x32>; 118724ba675SRob Herring system-power-controller; 119724ba675SRob Herring 120724ba675SRob Herring regulators { 121724ba675SRob Herring vcck: DCDC1 { 122724ba675SRob Herring regulator-name = "VCCK"; 123724ba675SRob Herring regulator-min-microvolt = <825000>; 124724ba675SRob Herring regulator-max-microvolt = <1150000>; 125724ba675SRob Herring regulator-boot-on; 126724ba675SRob Herring regulator-always-on; 127724ba675SRob Herring }; 128724ba675SRob Herring 129724ba675SRob Herring vddee: DCDC2 { 130724ba675SRob Herring /* the output is also used as VDDAO */ 131724ba675SRob Herring regulator-name = "VDD_EE"; 132724ba675SRob Herring regulator-min-microvolt = <950000>; 133724ba675SRob Herring regulator-max-microvolt = <1150000>; 134724ba675SRob Herring regulator-boot-on; 135724ba675SRob Herring regulator-always-on; 136724ba675SRob Herring }; 137724ba675SRob Herring 138724ba675SRob Herring DCDC3 { 139724ba675SRob Herring regulator-name = "VDD_DDR"; 140724ba675SRob Herring regulator-min-microvolt = <1500000>; 141724ba675SRob Herring regulator-max-microvolt = <1500000>; 142724ba675SRob Herring regulator-boot-on; 143724ba675SRob Herring regulator-always-on; 144724ba675SRob Herring }; 145724ba675SRob Herring 146724ba675SRob Herring LDO1 { 147724ba675SRob Herring regulator-name = "VDDIO_AO28"; 148724ba675SRob Herring regulator-min-microvolt = <2900000>; 149724ba675SRob Herring regulator-max-microvolt = <2900000>; 150724ba675SRob Herring regulator-boot-on; 151724ba675SRob Herring regulator-always-on; 152724ba675SRob Herring }; 153724ba675SRob Herring 154724ba675SRob Herring vddio_ao1v8: LDO2 { 155724ba675SRob Herring regulator-name = "VDDIO_AO18"; 156724ba675SRob Herring regulator-min-microvolt = <1800000>; 157724ba675SRob Herring regulator-max-microvolt = <1800000>; 158724ba675SRob Herring regulator-boot-on; 159724ba675SRob Herring regulator-always-on; 160724ba675SRob Herring }; 161724ba675SRob Herring 162724ba675SRob Herring LDO3 { 163724ba675SRob Herring regulator-name = "VCC1V8"; 164724ba675SRob Herring regulator-min-microvolt = <1800000>; 165724ba675SRob Herring regulator-max-microvolt = <1800000>; 166724ba675SRob Herring regulator-boot-on; 167724ba675SRob Herring regulator-always-on; 168724ba675SRob Herring }; 169724ba675SRob Herring 170724ba675SRob Herring LDO4 { 171724ba675SRob Herring regulator-name = "VCC2V8"; 172724ba675SRob Herring regulator-min-microvolt = <2850000>; 173724ba675SRob Herring regulator-max-microvolt = <2850000>; 174724ba675SRob Herring regulator-boot-on; 175724ba675SRob Herring regulator-always-on; 176724ba675SRob Herring }; 177724ba675SRob Herring 178724ba675SRob Herring LDO5 { 179724ba675SRob Herring regulator-name = "AVDD1V8"; 180724ba675SRob Herring regulator-min-microvolt = <1800000>; 181724ba675SRob Herring regulator-max-microvolt = <1800000>; 182724ba675SRob Herring regulator-boot-on; 183724ba675SRob Herring regulator-always-on; 184724ba675SRob Herring }; 185724ba675SRob Herring 186724ba675SRob Herring LDORTC1 { 187724ba675SRob Herring regulator-name = "VDD_LDO"; 188724ba675SRob Herring regulator-min-microvolt = <2700000>; 189724ba675SRob Herring regulator-max-microvolt = <2700000>; 190724ba675SRob Herring regulator-boot-on; 191724ba675SRob Herring regulator-always-on; 192724ba675SRob Herring }; 193724ba675SRob Herring 194724ba675SRob Herring LDORTC2 { 195724ba675SRob Herring regulator-name = "RTC_0V9"; 196724ba675SRob Herring regulator-min-microvolt = <900000>; 197724ba675SRob Herring regulator-max-microvolt = <900000>; 198724ba675SRob Herring regulator-boot-on; 199724ba675SRob Herring regulator-always-on; 200724ba675SRob Herring }; 201724ba675SRob Herring }; 202724ba675SRob Herring }; 203724ba675SRob Herring}; 204724ba675SRob Herring 205724ba675SRob Herring&mali { 206724ba675SRob Herring mali-supply = <&vddee>; 207724ba675SRob Herring}; 208724ba675SRob Herring 209724ba675SRob Herring&saradc { 210724ba675SRob Herring status = "okay"; 211724ba675SRob Herring vref-supply = <&vddio_ao1v8>; 212724ba675SRob Herring}; 213724ba675SRob Herring 214724ba675SRob Herring/* SDIO wifi */ 215724ba675SRob Herring&sdhc { 216724ba675SRob Herring status = "okay"; 217724ba675SRob Herring 218724ba675SRob Herring pinctrl-0 = <&sdxc_a_pins>; 219724ba675SRob Herring pinctrl-names = "default"; 220724ba675SRob Herring 221724ba675SRob Herring bus-width = <4>; 222724ba675SRob Herring max-frequency = <50000000>; 223724ba675SRob Herring 224724ba675SRob Herring disable-wp; 225724ba675SRob Herring non-removable; 226724ba675SRob Herring cap-mmc-highspeed; 227724ba675SRob Herring cap-sd-highspeed; 228724ba675SRob Herring 229724ba675SRob Herring mmc-pwrseq = <&sdio_pwrseq>; 230724ba675SRob Herring 231724ba675SRob Herring vmmc-supply = <&vcc_3v3>; 232724ba675SRob Herring vqmmc-supply = <&vcc_3v3>; 233724ba675SRob Herring}; 234724ba675SRob Herring 235724ba675SRob Herring&sdio { 236724ba675SRob Herring status = "okay"; 237724ba675SRob Herring 238724ba675SRob Herring pinctrl-0 = <&sd_b_pins>; 239724ba675SRob Herring pinctrl-names = "default"; 240724ba675SRob Herring 241724ba675SRob Herring /* SD card */ 242724ba675SRob Herring sd_card_slot: slot@1 { 243724ba675SRob Herring compatible = "mmc-slot"; 244724ba675SRob Herring reg = <1>; 245724ba675SRob Herring status = "okay"; 246724ba675SRob Herring 247724ba675SRob Herring bus-width = <4>; 248724ba675SRob Herring no-sdio; 249724ba675SRob Herring cap-mmc-highspeed; 250724ba675SRob Herring cap-sd-highspeed; 251724ba675SRob Herring disable-wp; 252724ba675SRob Herring 253724ba675SRob Herring cd-gpios = <&gpio CARD_6 GPIO_ACTIVE_LOW>; 254724ba675SRob Herring 255724ba675SRob Herring vmmc-supply = <&vcc_3v3>; 256724ba675SRob Herring }; 257724ba675SRob Herring}; 258724ba675SRob Herring 259724ba675SRob Herring/* connected to the Bluetooth module */ 260724ba675SRob Herring&uart_A { 261724ba675SRob Herring status = "okay"; 262724ba675SRob Herring pinctrl-0 = <&uart_a1_pins>, <&uart_a1_cts_rts_pins>; 263724ba675SRob Herring pinctrl-names = "default"; 264724ba675SRob Herring uart-has-rtscts; 265724ba675SRob Herring 266724ba675SRob Herring bluetooth { 267724ba675SRob Herring compatible = "brcm,bcm20702a1"; 268724ba675SRob Herring shutdown-gpios = <&gpio GPIOX_20 GPIO_ACTIVE_HIGH>; 269724ba675SRob Herring max-speed = <2000000>; 270724ba675SRob Herring }; 271724ba675SRob Herring}; 272724ba675SRob Herring 273724ba675SRob Herring&uart_AO { 274724ba675SRob Herring status = "okay"; 275724ba675SRob Herring pinctrl-0 = <&uart_ao_a_pins>; 276724ba675SRob Herring pinctrl-names = "default"; 277724ba675SRob Herring}; 278724ba675SRob Herring 279724ba675SRob Herring&usb0 { 280724ba675SRob Herring status = "okay"; 281724ba675SRob Herring}; 282724ba675SRob Herring 283724ba675SRob Herring&usb1 { 284724ba675SRob Herring status = "okay"; 285724ba675SRob Herring}; 286724ba675SRob Herring 287724ba675SRob Herring&usb0_phy { 288724ba675SRob Herring status = "okay"; 289724ba675SRob Herring}; 290724ba675SRob Herring 291724ba675SRob Herring&usb1_phy { 292724ba675SRob Herring status = "okay"; 293724ba675SRob Herring}; 294