1f031c373SDmitry Rokosov// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2f031c373SDmitry Rokosov/* 3f031c373SDmitry Rokosov * Copyright (c) 2023 SberDevices 4f031c373SDmitry Rokosov * Author: Dmitry Rokosov <ddrokosov@sberdevices.ru> 5f031c373SDmitry Rokosov */ 6f031c373SDmitry Rokosov 7f031c373SDmitry Rokosov/dts-v1/; 8f031c373SDmitry Rokosov 9f031c373SDmitry Rokosov#include "meson-a1.dtsi" 10593ab951SDmitry Rokosov#include <dt-bindings/thermal/thermal.h> 11f031c373SDmitry Rokosov 12f031c373SDmitry Rokosov/ { 13f031c373SDmitry Rokosov compatible = "amlogic,ad402", "amlogic,a1"; 14f031c373SDmitry Rokosov model = "Amlogic Meson A1 AD402 Development Board"; 15f031c373SDmitry Rokosov 16f031c373SDmitry Rokosov aliases { 17f031c373SDmitry Rokosov serial0 = &uart_AO_B; 18f031c373SDmitry Rokosov }; 19f031c373SDmitry Rokosov 20f031c373SDmitry Rokosov chosen { 21f031c373SDmitry Rokosov stdout-path = "serial0:115200n8"; 22f031c373SDmitry Rokosov }; 23f031c373SDmitry Rokosov 24f031c373SDmitry Rokosov memory@0 { 25f031c373SDmitry Rokosov device_type = "memory"; 26f031c373SDmitry Rokosov reg = <0x0 0x0 0x0 0x8000000>; 27f031c373SDmitry Rokosov }; 28f031c373SDmitry Rokosov 29f031c373SDmitry Rokosov reserved-memory { 30f031c373SDmitry Rokosov /* 3 MiB reserved for Amlogic Trust OS (BL32) */ 31f031c373SDmitry Rokosov secos_reserved: secos@3d00000 { 32f031c373SDmitry Rokosov reg = <0x0 0x03d00000 0x0 0x300000>; 33f031c373SDmitry Rokosov no-map; 34f031c373SDmitry Rokosov }; 35f031c373SDmitry Rokosov }; 36f031c373SDmitry Rokosov 37f031c373SDmitry Rokosov firmware { 38f031c373SDmitry Rokosov optee { 39f031c373SDmitry Rokosov compatible = "linaro,optee-tz"; 40f031c373SDmitry Rokosov method = "smc"; 41f031c373SDmitry Rokosov }; 42f031c373SDmitry Rokosov }; 43f031c373SDmitry Rokosov 44f031c373SDmitry Rokosov battery_4v2: regulator-battery-4v2 { 45f031c373SDmitry Rokosov compatible = "regulator-fixed"; 46f031c373SDmitry Rokosov regulator-name = "4V2"; 47f031c373SDmitry Rokosov regulator-min-microvolt = <4200000>; 48f031c373SDmitry Rokosov regulator-max-microvolt = <4200000>; 49f031c373SDmitry Rokosov regulator-always-on; 50f031c373SDmitry Rokosov }; 51f031c373SDmitry Rokosov 52f031c373SDmitry Rokosov vddq_1v35: regulator-vddq-1v35 { 53f031c373SDmitry Rokosov compatible = "regulator-fixed"; 54f031c373SDmitry Rokosov regulator-name = "VDDQ_1V35"; 55f031c373SDmitry Rokosov regulator-min-microvolt = <1350000>; 56f031c373SDmitry Rokosov regulator-max-microvolt = <1350000>; 57f031c373SDmitry Rokosov vin-supply = <&battery_4v2>; 58f031c373SDmitry Rokosov regulator-always-on; 59f031c373SDmitry Rokosov }; 60f031c373SDmitry Rokosov 61f031c373SDmitry Rokosov vddao_3v3: regulator-vddao-3v3 { 62f031c373SDmitry Rokosov compatible = "regulator-fixed"; 63f031c373SDmitry Rokosov regulator-name = "VDDAO_3V3"; 64f031c373SDmitry Rokosov regulator-min-microvolt = <3300000>; 65f031c373SDmitry Rokosov regulator-max-microvolt = <3300000>; 66f031c373SDmitry Rokosov vin-supply = <&battery_4v2>; 67f031c373SDmitry Rokosov regulator-always-on; 68f031c373SDmitry Rokosov }; 69f031c373SDmitry Rokosov 70f031c373SDmitry Rokosov vcc_3v3: regulator-vcc-3v3 { 71f031c373SDmitry Rokosov compatible = "regulator-fixed"; 72f031c373SDmitry Rokosov regulator-name = "VCC_3V3"; 73f031c373SDmitry Rokosov regulator-min-microvolt = <3300000>; 74f031c373SDmitry Rokosov regulator-max-microvolt = <3300000>; 75f031c373SDmitry Rokosov vin-supply = <&vddao_3v3>; 76f031c373SDmitry Rokosov regulator-always-on; 77f031c373SDmitry Rokosov }; 78f031c373SDmitry Rokosov 79f031c373SDmitry Rokosov vddio_1v8: regulator-vddio-1v8 { 80f031c373SDmitry Rokosov compatible = "regulator-fixed"; 81f031c373SDmitry Rokosov regulator-name = "VDDIO_1V8"; 82f031c373SDmitry Rokosov regulator-min-microvolt = <1800000>; 83f031c373SDmitry Rokosov regulator-max-microvolt = <1800000>; 84f031c373SDmitry Rokosov vin-supply = <&vddao_3v3>; 85f031c373SDmitry Rokosov regulator-always-on; 86f031c373SDmitry Rokosov }; 87593ab951SDmitry Rokosov 88593ab951SDmitry Rokosov thermal-zones { 89*ca88b172SNeil Armstrong soc_thermal: soc-thermal { 90593ab951SDmitry Rokosov polling-delay = <1000>; 91593ab951SDmitry Rokosov polling-delay-passive = <100>; 92593ab951SDmitry Rokosov sustainable-power = <130>; 93593ab951SDmitry Rokosov 94593ab951SDmitry Rokosov thermal-sensors = <&cpu_temp>; 95593ab951SDmitry Rokosov 96593ab951SDmitry Rokosov trips { 97593ab951SDmitry Rokosov soc_passive: soc-passive { 98593ab951SDmitry Rokosov temperature = <70000>; 99593ab951SDmitry Rokosov hysteresis = <2000>; 100593ab951SDmitry Rokosov type = "passive"; 101593ab951SDmitry Rokosov }; 102593ab951SDmitry Rokosov 103593ab951SDmitry Rokosov soc_hot: soc-hot { 104593ab951SDmitry Rokosov temperature = <85000>; 105593ab951SDmitry Rokosov hysteresis = <5000>; 106593ab951SDmitry Rokosov type = "hot"; 107593ab951SDmitry Rokosov }; 108593ab951SDmitry Rokosov 109593ab951SDmitry Rokosov soc_critical: soc-critical { 110593ab951SDmitry Rokosov temperature = <110000>; 111593ab951SDmitry Rokosov hysteresis = <1000>; 112593ab951SDmitry Rokosov type = "critical"; 113593ab951SDmitry Rokosov }; 114593ab951SDmitry Rokosov }; 115593ab951SDmitry Rokosov 116593ab951SDmitry Rokosov soc_cooling_maps: cooling-maps { 117593ab951SDmitry Rokosov map0 { 118593ab951SDmitry Rokosov trip = <&soc_passive>; 119593ab951SDmitry Rokosov cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 120593ab951SDmitry Rokosov <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 121593ab951SDmitry Rokosov }; 122593ab951SDmitry Rokosov 123593ab951SDmitry Rokosov map1 { 124593ab951SDmitry Rokosov trip = <&soc_hot>; 125593ab951SDmitry Rokosov cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 126593ab951SDmitry Rokosov <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 127593ab951SDmitry Rokosov }; 128593ab951SDmitry Rokosov }; 129593ab951SDmitry Rokosov }; 130593ab951SDmitry Rokosov }; 131f031c373SDmitry Rokosov}; 132f031c373SDmitry Rokosov 1336c9b5ba7SArnd Bergmann/* Bluetooth HCI H4 */ 1346c9b5ba7SArnd Bergmann&uart_AO { 1356c9b5ba7SArnd Bergmann status = "okay"; 1366c9b5ba7SArnd Bergmann pinctrl-0 = <&uart_a_pins>, <&uart_a_cts_rts_pins>; 1376c9b5ba7SArnd Bergmann pinctrl-names = "default"; 1386c9b5ba7SArnd Bergmann}; 1396c9b5ba7SArnd Bergmann 1406c9b5ba7SArnd Bergmann&uart_AO_B { 1416c9b5ba7SArnd Bergmann status = "okay"; 1426c9b5ba7SArnd Bergmann}; 1436c9b5ba7SArnd Bergmann 1446c9b5ba7SArnd Bergmann&saradc { 1456c9b5ba7SArnd Bergmann status = "okay"; 1466c9b5ba7SArnd Bergmann vref-supply = <&vddio_1v8>; 1476c9b5ba7SArnd Bergmann}; 1486c9b5ba7SArnd Bergmann 1496c9b5ba7SArnd Bergmann&spifc { 1506c9b5ba7SArnd Bergmann status = "okay"; 1516c9b5ba7SArnd Bergmann pinctrl-0 = <&spifc_pins>; 1526c9b5ba7SArnd Bergmann pinctrl-names = "default"; 1536c9b5ba7SArnd Bergmann 1546c9b5ba7SArnd Bergmann flash@0 { 1556c9b5ba7SArnd Bergmann compatible = "spi-nand"; 1566c9b5ba7SArnd Bergmann status = "okay"; 1576c9b5ba7SArnd Bergmann reg = <0>; 1586c9b5ba7SArnd Bergmann spi-max-frequency = <96000000>; 1596c9b5ba7SArnd Bergmann spi-tx-bus-width = <4>; 1606c9b5ba7SArnd Bergmann spi-rx-bus-width = <4>; 1616c9b5ba7SArnd Bergmann }; 1626c9b5ba7SArnd Bergmann}; 1636c9b5ba7SArnd Bergmann 164f031c373SDmitry Rokosov&usb2_phy1 { 165f031c373SDmitry Rokosov phy-supply = <&vcc_3v3>; 166f031c373SDmitry Rokosov}; 167f031c373SDmitry Rokosov 168f031c373SDmitry Rokosov&usb { 169f031c373SDmitry Rokosov status = "okay"; 170f031c373SDmitry Rokosov dr_mode = "peripheral"; 171f031c373SDmitry Rokosov}; 172f031c373SDmitry Rokosov 173f031c373SDmitry Rokosov&sd_emmc { 174f031c373SDmitry Rokosov status = "okay"; 175f031c373SDmitry Rokosov 176f031c373SDmitry Rokosov #address-cells = <1>; 177f031c373SDmitry Rokosov #size-cells = <0>; 178f031c373SDmitry Rokosov 179f031c373SDmitry Rokosov pinctrl-0 = <&sdio_pins>; 180f031c373SDmitry Rokosov pinctrl-1 = <&sdio_clk_gate_pins>; 181f031c373SDmitry Rokosov pinctrl-names = "default", "clk-gate"; 182f031c373SDmitry Rokosov 183f031c373SDmitry Rokosov bus-width = <4>; 184f031c373SDmitry Rokosov cap-sd-highspeed; 185f031c373SDmitry Rokosov sd-uhs-sdr104; 186f031c373SDmitry Rokosov max-frequency = <200000000>; 187f031c373SDmitry Rokosov non-removable; 188f031c373SDmitry Rokosov disable-wp; 189f031c373SDmitry Rokosov 190f031c373SDmitry Rokosov vmmc-supply = <&vddao_3v3>; 191f031c373SDmitry Rokosov vqmmc-supply = <&vddio_1v8>; 192f031c373SDmitry Rokosov}; 193