arch/arm/boot/dts/synaptics/berlin2cd-valve-steamlink.dts

Source file repositories/reference/linux-study-clean/arch/arm/boot/dts/synaptics/berlin2cd-valve-steamlink.dts

File Facts

System
Linux kernel
Corpus path
arch/arm/boot/dts/synaptics/berlin2cd-valve-steamlink.dts
Extension
.dts
Size
1746 bytes
Lines
80
Domain
Architecture Layer
Bucket
arch/arm
Inferred role
Architecture Layer: configuration, schema, or hardware description
Status
atlas-only

Why This File Exists

CPU and platform-specific kernel glue: boot entry, traps, syscall entry, interrupts, page tables, context switch, and low-level barriers.

Dependency Surface

Detected Declarations

Annotated Snippet

// SPDX-License-Identifier: (GPL-2.0 OR MIT)
/*
 * Copyright 2018 Alexander Monakov <amonakov@gmail.com>
 */
/dts-v1/;

#include "berlin2cd.dtsi"
#include <dt-bindings/gpio/gpio.h>

/ {
	model = "Valve Steam Link";
	compatible = "valve,steamlink", "marvell,berlin2cd", "marvell,berlin";

	memory@0 {
		device_type = "memory";
		reg = <0x00000000 0x20000000>; /* 512 MB */
	};

	gpio-restart {
		compatible = "gpio-restart";
		gpios = <&porta 6 GPIO_ACTIVE_HIGH>;
		active-delay = <100>;
		inactive-delay = <10>;
		wait-delay = <100>;
		priority = <200>;
	};
};

&cpu {
	cpu-supply = <&vcpu>;
	operating-points = <
		/* kHz    uV */
		1000000 1325000
	>;
};

&i2c0 {
	status = "okay";

	/* There are two regulators on the board. One is accessible via I2C,
	 * with buck1 providing SoC power (set up by bootloader to 1.325V or
	 * less depending on leakage value in OTP), and buck2 likely used for
	 * DRAM (providing 1.35V). The other regulator on the opposite side
	 * of the board is probably supplying SDIO and NAND fixed voltages. */
	regulator@19 {
		compatible = "marvell,88pg868";
		reg = <0x19>;

		vcpu: buck1 {
			regulator-boot-on;
			regulator-always-on;
			regulator-min-microvolt = <1000000>;
			regulator-max-microvolt = <1325000>;
		};
	};
};

/* Fixed interface to on-board Marvell 8897 Wi-Fi/Bluetooth/NFC chip. */
&sdhci0 {
	keep-power-in-suspend;
	non-removable;
	status = "okay";
};

&uart0 {
	/* RX/TX are routed to TP50/TP51 on the board. */
	status = "okay";
};

/* The SoC is connected to on-board USB hub that in turn has one downstream

Annotation

Implementation Notes