1c66ec88fSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2c66ec88fSEmmanuel Vadot// Copyright (c) 2017 Icenowy Zheng <icenowy@aosc.xyz> 3c66ec88fSEmmanuel Vadot// Based on sun50i-a64-pine64.dts, which is: 4c66ec88fSEmmanuel Vadot// Copyright (c) 2016 ARM Ltd. 5c66ec88fSEmmanuel Vadot 6c66ec88fSEmmanuel Vadot#include "sun50i-a64.dtsi" 7c66ec88fSEmmanuel Vadot#include "sun50i-a64-cpu-opp.dtsi" 8c66ec88fSEmmanuel Vadot 9c66ec88fSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h> 10c66ec88fSEmmanuel Vadot 11c66ec88fSEmmanuel Vadot&codec_analog { 12c66ec88fSEmmanuel Vadot cpvdd-supply = <®_eldo1>; 13c66ec88fSEmmanuel Vadot}; 14c66ec88fSEmmanuel Vadot 15c66ec88fSEmmanuel Vadot&cpu0 { 16c66ec88fSEmmanuel Vadot cpu-supply = <®_dcdc2>; 17c66ec88fSEmmanuel Vadot}; 18c66ec88fSEmmanuel Vadot 19c66ec88fSEmmanuel Vadot&cpu1 { 20c66ec88fSEmmanuel Vadot cpu-supply = <®_dcdc2>; 21c66ec88fSEmmanuel Vadot}; 22c66ec88fSEmmanuel Vadot 23c66ec88fSEmmanuel Vadot&cpu2 { 24c66ec88fSEmmanuel Vadot cpu-supply = <®_dcdc2>; 25c66ec88fSEmmanuel Vadot}; 26c66ec88fSEmmanuel Vadot 27c66ec88fSEmmanuel Vadot&cpu3 { 28c66ec88fSEmmanuel Vadot cpu-supply = <®_dcdc2>; 29c66ec88fSEmmanuel Vadot}; 30c66ec88fSEmmanuel Vadot 31c66ec88fSEmmanuel Vadot&mmc0 { 32c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 33c66ec88fSEmmanuel Vadot pinctrl-0 = <&mmc0_pins>; 34c66ec88fSEmmanuel Vadot vmmc-supply = <®_dcdc1>; 35c66ec88fSEmmanuel Vadot disable-wp; 36c66ec88fSEmmanuel Vadot bus-width = <4>; 3782ea1a07SEmmanuel Vadot cd-gpios = <&pio 5 6 GPIO_ACTIVE_HIGH>; /* PF6 push-pull switch */ 38c66ec88fSEmmanuel Vadot status = "okay"; 39c66ec88fSEmmanuel Vadot}; 40c66ec88fSEmmanuel Vadot 41c66ec88fSEmmanuel Vadot&r_rsb { 42c66ec88fSEmmanuel Vadot status = "okay"; 43c66ec88fSEmmanuel Vadot 44c66ec88fSEmmanuel Vadot axp803: pmic@3a3 { 45c66ec88fSEmmanuel Vadot compatible = "x-powers,axp803"; 46c66ec88fSEmmanuel Vadot reg = <0x3a3>; 47c66ec88fSEmmanuel Vadot interrupt-parent = <&r_intc>; 48*2eb4d8dcSEmmanuel Vadot interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_LOW>; 49c66ec88fSEmmanuel Vadot }; 50c66ec88fSEmmanuel Vadot}; 51c66ec88fSEmmanuel Vadot 52c66ec88fSEmmanuel Vadot&spi0 { 53c66ec88fSEmmanuel Vadot status = "okay"; 54c66ec88fSEmmanuel Vadot 55c66ec88fSEmmanuel Vadot flash@0 { 56c66ec88fSEmmanuel Vadot #address-cells = <1>; 57c66ec88fSEmmanuel Vadot #size-cells = <1>; 58c66ec88fSEmmanuel Vadot compatible = "jedec,spi-nor"; 59c66ec88fSEmmanuel Vadot reg = <0>; 60c66ec88fSEmmanuel Vadot spi-max-frequency = <40000000>; 61c66ec88fSEmmanuel Vadot }; 62c66ec88fSEmmanuel Vadot}; 63c66ec88fSEmmanuel Vadot 64c66ec88fSEmmanuel Vadot#include "axp803.dtsi" 65c66ec88fSEmmanuel Vadot 66c66ec88fSEmmanuel Vadot®_aldo2 { 67c66ec88fSEmmanuel Vadot regulator-always-on; 68c66ec88fSEmmanuel Vadot regulator-min-microvolt = <1800000>; 69c66ec88fSEmmanuel Vadot regulator-max-microvolt = <3300000>; 70c66ec88fSEmmanuel Vadot regulator-name = "vcc-pl"; 71c66ec88fSEmmanuel Vadot}; 72c66ec88fSEmmanuel Vadot 73c66ec88fSEmmanuel Vadot®_aldo3 { 74c66ec88fSEmmanuel Vadot regulator-always-on; 75c66ec88fSEmmanuel Vadot regulator-min-microvolt = <3000000>; 76c66ec88fSEmmanuel Vadot regulator-max-microvolt = <3000000>; 77c66ec88fSEmmanuel Vadot regulator-name = "vcc-pll-avcc"; 78c66ec88fSEmmanuel Vadot}; 79c66ec88fSEmmanuel Vadot 80c66ec88fSEmmanuel Vadot®_dcdc1 { 81c66ec88fSEmmanuel Vadot regulator-always-on; 82c66ec88fSEmmanuel Vadot regulator-min-microvolt = <3300000>; 83c66ec88fSEmmanuel Vadot regulator-max-microvolt = <3300000>; 84c66ec88fSEmmanuel Vadot regulator-name = "vcc-3v3"; 85c66ec88fSEmmanuel Vadot}; 86c66ec88fSEmmanuel Vadot 87c66ec88fSEmmanuel Vadot®_dcdc2 { 88c66ec88fSEmmanuel Vadot regulator-always-on; 89c66ec88fSEmmanuel Vadot regulator-min-microvolt = <1040000>; 90c66ec88fSEmmanuel Vadot regulator-max-microvolt = <1300000>; 91c66ec88fSEmmanuel Vadot regulator-name = "vdd-cpux"; 92c66ec88fSEmmanuel Vadot}; 93c66ec88fSEmmanuel Vadot 94c66ec88fSEmmanuel Vadot/* DCDC3 is polyphased with DCDC2 */ 95c66ec88fSEmmanuel Vadot 96c66ec88fSEmmanuel Vadot®_dcdc5 { 97c66ec88fSEmmanuel Vadot regulator-always-on; 98c66ec88fSEmmanuel Vadot regulator-min-microvolt = <1200000>; 99c66ec88fSEmmanuel Vadot regulator-max-microvolt = <1200000>; 100c66ec88fSEmmanuel Vadot regulator-name = "vcc-dram"; 101c66ec88fSEmmanuel Vadot}; 102c66ec88fSEmmanuel Vadot 103c66ec88fSEmmanuel Vadot®_dcdc6 { 104c66ec88fSEmmanuel Vadot regulator-always-on; 105c66ec88fSEmmanuel Vadot regulator-min-microvolt = <1100000>; 106c66ec88fSEmmanuel Vadot regulator-max-microvolt = <1100000>; 107c66ec88fSEmmanuel Vadot regulator-name = "vdd-sys"; 108c66ec88fSEmmanuel Vadot}; 109c66ec88fSEmmanuel Vadot 110c66ec88fSEmmanuel Vadot®_eldo1 { 111c66ec88fSEmmanuel Vadot regulator-always-on; 112c66ec88fSEmmanuel Vadot regulator-min-microvolt = <1800000>; 113c66ec88fSEmmanuel Vadot regulator-max-microvolt = <1800000>; 114c66ec88fSEmmanuel Vadot regulator-name = "vdd-1v8-lpddr"; 115c66ec88fSEmmanuel Vadot}; 116c66ec88fSEmmanuel Vadot 117c66ec88fSEmmanuel Vadot®_fldo1 { 118c66ec88fSEmmanuel Vadot regulator-min-microvolt = <1200000>; 119c66ec88fSEmmanuel Vadot regulator-max-microvolt = <1200000>; 120c66ec88fSEmmanuel Vadot regulator-name = "vcc-1v2-hsic"; 121c66ec88fSEmmanuel Vadot}; 122c66ec88fSEmmanuel Vadot 123c66ec88fSEmmanuel Vadot/* 124c66ec88fSEmmanuel Vadot * The A64 chip cannot work without this regulator off, although 125c66ec88fSEmmanuel Vadot * it seems to be only driving the AR100 core. 126c66ec88fSEmmanuel Vadot * Maybe we don't still know well about CPUs domain. 127c66ec88fSEmmanuel Vadot */ 128c66ec88fSEmmanuel Vadot®_fldo2 { 129c66ec88fSEmmanuel Vadot regulator-always-on; 130c66ec88fSEmmanuel Vadot regulator-min-microvolt = <1100000>; 131c66ec88fSEmmanuel Vadot regulator-max-microvolt = <1100000>; 132c66ec88fSEmmanuel Vadot regulator-name = "vdd-cpus"; 133c66ec88fSEmmanuel Vadot}; 134c66ec88fSEmmanuel Vadot 135c66ec88fSEmmanuel Vadot®_rtc_ldo { 136c66ec88fSEmmanuel Vadot regulator-name = "vcc-rtc"; 137c66ec88fSEmmanuel Vadot}; 138