1*724ba675SRob Herring// SPDX-License-Identifier: (GPL-2.0 OR MIT)
2*724ba675SRob Herring/*
3*724ba675SRob Herring * Copyright 2018 Alexander Monakov <amonakov@gmail.com>
4*724ba675SRob Herring */
5*724ba675SRob Herring/dts-v1/;
6*724ba675SRob Herring
7*724ba675SRob Herring#include "berlin2cd.dtsi"
8*724ba675SRob Herring#include <dt-bindings/gpio/gpio.h>
9*724ba675SRob Herring
10*724ba675SRob Herring/ {
11*724ba675SRob Herring	model = "Valve Steam Link";
12*724ba675SRob Herring	compatible = "valve,steamlink", "marvell,berlin2cd", "marvell,berlin";
13*724ba675SRob Herring
14*724ba675SRob Herring	memory@0 {
15*724ba675SRob Herring		device_type = "memory";
16*724ba675SRob Herring		reg = <0x00000000 0x20000000>; /* 512 MB */
17*724ba675SRob Herring	};
18*724ba675SRob Herring
19*724ba675SRob Herring	gpio-restart {
20*724ba675SRob Herring		compatible = "gpio-restart";
21*724ba675SRob Herring		gpios = <&porta 6 GPIO_ACTIVE_HIGH>;
22*724ba675SRob Herring		active-delay = <100>;
23*724ba675SRob Herring		inactive-delay = <10>;
24*724ba675SRob Herring		wait-delay = <100>;
25*724ba675SRob Herring		priority = <200>;
26*724ba675SRob Herring	};
27*724ba675SRob Herring};
28*724ba675SRob Herring
29*724ba675SRob Herring&cpu {
30*724ba675SRob Herring	cpu-supply = <&vcpu>;
31*724ba675SRob Herring	operating-points = <
32*724ba675SRob Herring		/* kHz    uV */
33*724ba675SRob Herring		1000000 1325000
34*724ba675SRob Herring	>;
35*724ba675SRob Herring};
36*724ba675SRob Herring
37*724ba675SRob Herring&i2c0 {
38*724ba675SRob Herring	status = "okay";
39*724ba675SRob Herring
40*724ba675SRob Herring	/* There are two regulators on the board. One is accessible via I2C,
41*724ba675SRob Herring	 * with buck1 providing SoC power (set up by bootloader to 1.325V or
42*724ba675SRob Herring	 * less depending on leakage value in OTP), and buck2 likely used for
43*724ba675SRob Herring	 * DRAM (providing 1.35V). The other regulator on the opposite side
44*724ba675SRob Herring	 * of the board is probably supplying SDIO and NAND fixed voltages. */
45*724ba675SRob Herring	regulator@19 {
46*724ba675SRob Herring		compatible = "marvell,88pg868";
47*724ba675SRob Herring		reg = <0x19>;
48*724ba675SRob Herring
49*724ba675SRob Herring		vcpu: buck1 {
50*724ba675SRob Herring			regulator-boot-on;
51*724ba675SRob Herring			regulator-always-on;
52*724ba675SRob Herring			regulator-min-microvolt = <1000000>;
53*724ba675SRob Herring			regulator-max-microvolt = <1325000>;
54*724ba675SRob Herring		};
55*724ba675SRob Herring	};
56*724ba675SRob Herring};
57*724ba675SRob Herring
58*724ba675SRob Herring/* Fixed interface to on-board Marvell 8897 Wi-Fi/Bluetooth/NFC chip. */
59*724ba675SRob Herring&sdhci0 {
60*724ba675SRob Herring	keep-power-in-suspend;
61*724ba675SRob Herring	non-removable;
62*724ba675SRob Herring	status = "okay";
63*724ba675SRob Herring};
64*724ba675SRob Herring
65*724ba675SRob Herring&uart0 {
66*724ba675SRob Herring	/* RX/TX are routed to TP50/TP51 on the board. */
67*724ba675SRob Herring	status = "okay";
68*724ba675SRob Herring};
69*724ba675SRob Herring
70*724ba675SRob Herring/* The SoC is connected to on-board USB hub that in turn has one downstream
71*724ba675SRob Herring * port wired to the on-board Steam Controller wireless receiver chip. */
72*724ba675SRob Herring&usb_phy1 { status = "okay"; };
73*724ba675SRob Herring
74*724ba675SRob Herring&usb1 {
75*724ba675SRob Herring	dr_mode = "host";
76*724ba675SRob Herring	status = "okay";
77*724ba675SRob Herring};
78*724ba675SRob Herring
79*724ba675SRob Herring&eth1 { status = "okay"; };
80