1d3aa4ce8SKevin Hilman// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2d3aa4ce8SKevin Hilman/*
3d3aa4ce8SKevin Hilman * Copyright (c) 2018 BayLibre SAS. All rights reserved.
4d3aa4ce8SKevin Hilman */
5d3aa4ce8SKevin Hilman
6d3aa4ce8SKevin Hilman/dts-v1/;
7d3aa4ce8SKevin Hilman
8d3aa4ce8SKevin Hilman#include "meson-g12a.dtsi"
9c9206b42SGuillaume La Roque#include <dt-bindings/gpio/gpio.h>
10c9206b42SGuillaume La Roque#include <dt-bindings/gpio/meson-g12a-gpio.h>
11d3aa4ce8SKevin Hilman
12d3aa4ce8SKevin Hilman/ {
13d3aa4ce8SKevin Hilman	compatible = "amediatech,x96-max", "amlogic,u200", "amlogic,g12a";
14d3aa4ce8SKevin Hilman	model = "Shenzhen Amediatech Technology Co., Ltd X96 Max";
15d3aa4ce8SKevin Hilman
16d3aa4ce8SKevin Hilman	aliases {
17d3aa4ce8SKevin Hilman		serial0 = &uart_AO;
18d3aa4ce8SKevin Hilman	};
19d3aa4ce8SKevin Hilman	chosen {
20d3aa4ce8SKevin Hilman		stdout-path = "serial0:115200n8";
21d3aa4ce8SKevin Hilman	};
22d3aa4ce8SKevin Hilman	memory@0 {
23d3aa4ce8SKevin Hilman		device_type = "memory";
24d3aa4ce8SKevin Hilman		reg = <0x0 0x0 0x0 0x40000000>;
25d3aa4ce8SKevin Hilman	};
26c9206b42SGuillaume La Roque
27c9206b42SGuillaume La Roque	flash_1v8: regulator-flash_1v8 {
28c9206b42SGuillaume La Roque		compatible = "regulator-fixed";
29c9206b42SGuillaume La Roque		regulator-name = "FLASH_1V8";
30c9206b42SGuillaume La Roque		regulator-min-microvolt = <1800000>;
31c9206b42SGuillaume La Roque		regulator-max-microvolt = <1800000>;
32c9206b42SGuillaume La Roque		vin-supply = <&vcc_3v3>;
33c9206b42SGuillaume La Roque		regulator-always-on;
34c9206b42SGuillaume La Roque	};
35c9206b42SGuillaume La Roque
36c9206b42SGuillaume La Roque	dc_in: regulator-dc_in {
37c9206b42SGuillaume La Roque		compatible = "regulator-fixed";
38c9206b42SGuillaume La Roque		regulator-name = "DC_IN";
39c9206b42SGuillaume La Roque		regulator-min-microvolt = <5000000>;
40c9206b42SGuillaume La Roque		regulator-max-microvolt = <5000000>;
41c9206b42SGuillaume La Roque		regulator-always-on;
42c9206b42SGuillaume La Roque	};
43c9206b42SGuillaume La Roque
44c9206b42SGuillaume La Roque	vcc_1v8: regulator-vcc_1v8 {
45c9206b42SGuillaume La Roque		compatible = "regulator-fixed";
46c9206b42SGuillaume La Roque		regulator-name = "VCC_1V8";
47c9206b42SGuillaume La Roque		regulator-min-microvolt = <1800000>;
48c9206b42SGuillaume La Roque		regulator-max-microvolt = <1800000>;
49c9206b42SGuillaume La Roque		vin-supply = <&vcc_3v3>;
50c9206b42SGuillaume La Roque		regulator-always-on;
51c9206b42SGuillaume La Roque	};
52c9206b42SGuillaume La Roque
53c9206b42SGuillaume La Roque	vcc_3v3: regulator-vcc_3v3 {
54c9206b42SGuillaume La Roque		compatible = "regulator-fixed";
55c9206b42SGuillaume La Roque		regulator-name = "VCC_3V3";
56c9206b42SGuillaume La Roque		regulator-min-microvolt = <3300000>;
57c9206b42SGuillaume La Roque		regulator-max-microvolt = <3300000>;
58c9206b42SGuillaume La Roque		vin-supply = <&vddao_3v3>;
59c9206b42SGuillaume La Roque		regulator-always-on;
60c9206b42SGuillaume La Roque		/* FIXME: actually controlled by VDDCPU_B_EN */
61c9206b42SGuillaume La Roque	};
62c9206b42SGuillaume La Roque
63c9206b42SGuillaume La Roque	vcc_5v: regulator-vcc_5v {
64c9206b42SGuillaume La Roque		compatible = "regulator-fixed";
65c9206b42SGuillaume La Roque		regulator-name = "VCC_5V";
66c9206b42SGuillaume La Roque		regulator-min-microvolt = <5000000>;
67c9206b42SGuillaume La Roque		regulator-max-microvolt = <5000000>;
68c9206b42SGuillaume La Roque		vin-supply = <&dc_in>;
69c9206b42SGuillaume La Roque
70c9206b42SGuillaume La Roque		gpio = <&gpio GPIOH_8 GPIO_OPEN_DRAIN>;
71c9206b42SGuillaume La Roque		enable-active-low;
72c9206b42SGuillaume La Roque	};
73c9206b42SGuillaume La Roque
74c9206b42SGuillaume La Roque	vddao_1v8: regulator-vddao_1v8 {
75c9206b42SGuillaume La Roque		compatible = "regulator-fixed";
76c9206b42SGuillaume La Roque		regulator-name = "VDDAO_1V8";
77c9206b42SGuillaume La Roque		regulator-min-microvolt = <1800000>;
78c9206b42SGuillaume La Roque		regulator-max-microvolt = <1800000>;
79c9206b42SGuillaume La Roque		vin-supply = <&vddao_3v3>;
80c9206b42SGuillaume La Roque		regulator-always-on;
81c9206b42SGuillaume La Roque	};
82c9206b42SGuillaume La Roque
83c9206b42SGuillaume La Roque	vddao_3v3: regulator-vddao_3v3 {
84c9206b42SGuillaume La Roque		compatible = "regulator-fixed";
85c9206b42SGuillaume La Roque		regulator-name = "VDDAO_3V3";
86c9206b42SGuillaume La Roque		regulator-min-microvolt = <3300000>;
87c9206b42SGuillaume La Roque		regulator-max-microvolt = <3300000>;
88c9206b42SGuillaume La Roque		vin-supply = <&dc_in>;
89c9206b42SGuillaume La Roque		regulator-always-on;
90c9206b42SGuillaume La Roque	};
91d3aa4ce8SKevin Hilman};
92d3aa4ce8SKevin Hilman
93d3aa4ce8SKevin Hilman&uart_AO {
94d3aa4ce8SKevin Hilman	status = "okay";
950b7aed33SNeil Armstrong	pinctrl-0 = <&uart_ao_a_pins>;
960b7aed33SNeil Armstrong	pinctrl-names = "default";
97d3aa4ce8SKevin Hilman};
98