Linux Audio

Check our new training course

Linux debugging, profiling, tracing and performance analysis training

Apr 14-17, 2025
Register
Loading...
v4.17
 
 1/*
 2 * Device Tree file for Google Chromecast
 3 *
 4 * Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
 5 *
 6 * This file is dual-licensed: you can use it either under the terms
 7 * of the GPL or the X11 license, at your option. Note that this dual
 8 * licensing only applies to this file, and not this project as a
 9 * whole.
10 *
11 *  a) This file is licensed under the terms of the GNU General Public
12 *     License version 2. This program is licensed "as is" without any
13 *     warranty of any kind, whether express or implied.
14 *
15 * Or, alternatively,
16 *
17 *  b) Permission is hereby granted, free of charge, to any person
18 *     obtaining a copy of this software and associated documentation
19 *     files (the "Software"), to deal in the Software without
20 *     restriction, including without limitation the rights to use,
21 *     copy, modify, merge, publish, distribute, sublicense, and/or
22 *     sell copies of the Software, and to permit persons to whom the
23 *     Software is furnished to do so, subject to the following
24 *     conditions:
25 *
26 *     The above copyright notice and this permission notice shall be
27 *     included in all copies or substantial portions of the Software.
28 *
29 *     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
30 *     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
31 *     OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
32 *     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
33 *     HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
34 *     WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
35 *     FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
36 *     OTHER DEALINGS IN THE SOFTWARE.
37 */
38
39/dts-v1/;
40
41#include "berlin2cd.dtsi"
42#include <dt-bindings/gpio/gpio.h>
43
44/ {
45	model = "Google Chromecast";
46	compatible = "google,chromecast", "marvell,berlin2cd", "marvell,berlin";
47
48	chosen {
49		bootargs = "earlyprintk";
50		stdout-path = "serial0:115200n8";
51	};
52
53	memory@0 {
54		device_type = "memory";
55		reg = <0x00000000 0x20000000>; /* 512 MB */
 
 
 
 
 
 
 
 
 
 
56	};
57
58	leds {
59		compatible = "gpio-leds";
 
 
60
61		white {
62			label = "white";
63			gpios = <&portc 1 GPIO_ACTIVE_HIGH>;
64			default-state = "keep";
 
65		};
66
67		red {
68			label = "red";
69			gpios = <&portc 2 GPIO_ACTIVE_HIGH>;
70			default-state = "keep";
71		};
72	};
73};
74
75/*
76 * AzureWave AW-NH387 (Marvell 88W8787)
77 * 802.11b/g/n + Bluetooth 2.1
78 */
79&sdhci0 {
80	non-removable;
81	status = "okay";
82};
83
84&uart0 { status = "okay"; };
85
86&usb_phy1 { status = "okay"; };
87
88&usb1 { status = "okay"; };
v6.2
 1// 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};