blob: c1d91424e658085d50a982d9c7abfeb2fed0ed3c [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001// SPDX-License-Identifier: (GPL-2.0 OR MIT)
2/*
3 * Device Tree file for Google Chromecast
4 *
5 * Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
6 */
7
8/dts-v1/;
9
10#include "berlin2cd.dtsi"
11#include <dt-bindings/gpio/gpio.h>
12
13/ {
14 model = "Google Chromecast";
15 compatible = "google,chromecast", "marvell,berlin2cd", "marvell,berlin";
16
17 chosen {
18 bootargs = "earlyprintk";
19 stdout-path = "serial0:115200n8";
20 };
21
22 memory@0 {
23 device_type = "memory";
24
25 /*
26 * We're using "linux,usable-memory" instead of "reg" here
27 * because the (signed and encrypted) bootloader that shipped
28 * with this device provides an incorrect memory range in
29 * ATAG_MEM. Linux helpfully overrides the "reg" property with
30 * data from the ATAG, so we can't specify the proper range
31 * normally. Fortunately, this alternate property is checked
32 * first by the OF driver, so we can (ab)use it instead.
33 */
34 linux,usable-memory = <0x00000000 0x20000000>; /* 512 MB */
35 };
36
37 led-controller {
38 compatible = "pwm-leds";
39 pinctrl-0 = <&ledpwm_pmux>;
40 pinctrl-names = "default";
41
42 led-1 {
43 label = "white";
44 pwms = <&pwm 0 600000 0>;
45 max-brightness = <255>;
46 linux,default-trigger = "default-on";
47 };
48
49 led-2 {
50 label = "red";
51 pwms = <&pwm 1 600000 0>;
52 max-brightness = <255>;
53 };
54 };
55};
56
57/*
58 * AzureWave AW-NH387 (Marvell 88W8787)
59 * 802.11b/g/n + Bluetooth 2.1
60 */
61&sdhci0 {
62 non-removable;
63 status = "okay";
64};
65
66&uart0 { status = "okay"; };
67
68&usb_phy1 { status = "okay"; };
69
70&usb1 { status = "okay"; };
71
72&soc_pinctrl {
73 ledpwm_pmux: ledpwm-pmux {
74 groups = "G0";
75 function = "pwm";
76 };
77};