xref: /freebsd/sys/contrib/device-tree/src/arm64/renesas/hihope-rev4.dtsi (revision c66ec88fed842fbaad62c30d510644ceb7bd2d71)
1*c66ec88fSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0
2*c66ec88fSEmmanuel Vadot/*
3*c66ec88fSEmmanuel Vadot * Device Tree Source for the HiHope RZ/G2H Rev.4.0 and
4*c66ec88fSEmmanuel Vadot * HiHope RZ/G2[MN] Rev.3.0/4.0 main board common parts
5*c66ec88fSEmmanuel Vadot *
6*c66ec88fSEmmanuel Vadot * Copyright (C) 2020 Renesas Electronics Corp.
7*c66ec88fSEmmanuel Vadot */
8*c66ec88fSEmmanuel Vadot
9*c66ec88fSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
10*c66ec88fSEmmanuel Vadot#include "hihope-common.dtsi"
11*c66ec88fSEmmanuel Vadot
12*c66ec88fSEmmanuel Vadot/ {
13*c66ec88fSEmmanuel Vadot	audio_clkout: audio-clkout {
14*c66ec88fSEmmanuel Vadot		/*
15*c66ec88fSEmmanuel Vadot		 * This is same as <&rcar_sound 0>
16*c66ec88fSEmmanuel Vadot		 * but needed to avoid cs2000/rcar_sound probe dead-lock
17*c66ec88fSEmmanuel Vadot		 */
18*c66ec88fSEmmanuel Vadot		compatible = "fixed-clock";
19*c66ec88fSEmmanuel Vadot		#clock-cells = <0>;
20*c66ec88fSEmmanuel Vadot		clock-frequency = <12288000>;
21*c66ec88fSEmmanuel Vadot	};
22*c66ec88fSEmmanuel Vadot
23*c66ec88fSEmmanuel Vadot	wlan_en_reg: regulator-wlan_en {
24*c66ec88fSEmmanuel Vadot		compatible = "regulator-fixed";
25*c66ec88fSEmmanuel Vadot		regulator-name = "wlan-en-regulator";
26*c66ec88fSEmmanuel Vadot		regulator-min-microvolt = <1800000>;
27*c66ec88fSEmmanuel Vadot		regulator-max-microvolt = <1800000>;
28*c66ec88fSEmmanuel Vadot		startup-delay-us = <70000>;
29*c66ec88fSEmmanuel Vadot
30*c66ec88fSEmmanuel Vadot		gpio = <&gpio4 6 GPIO_ACTIVE_HIGH>;
31*c66ec88fSEmmanuel Vadot		enable-active-high;
32*c66ec88fSEmmanuel Vadot	};
33*c66ec88fSEmmanuel Vadot
34*c66ec88fSEmmanuel Vadot	x1801_clk: x1801-clock {
35*c66ec88fSEmmanuel Vadot		compatible = "fixed-clock";
36*c66ec88fSEmmanuel Vadot		#clock-cells = <0>;
37*c66ec88fSEmmanuel Vadot		clock-frequency = <24576000>;
38*c66ec88fSEmmanuel Vadot	};
39*c66ec88fSEmmanuel Vadot};
40*c66ec88fSEmmanuel Vadot
41*c66ec88fSEmmanuel Vadot&hscif0 {
42*c66ec88fSEmmanuel Vadot	bluetooth {
43*c66ec88fSEmmanuel Vadot		compatible = "ti,wl1837-st";
44*c66ec88fSEmmanuel Vadot		enable-gpios = <&gpio3 13 GPIO_ACTIVE_HIGH>;
45*c66ec88fSEmmanuel Vadot	};
46*c66ec88fSEmmanuel Vadot};
47*c66ec88fSEmmanuel Vadot
48*c66ec88fSEmmanuel Vadot&i2c2 {
49*c66ec88fSEmmanuel Vadot	pinctrl-0 = <&i2c2_pins>;
50*c66ec88fSEmmanuel Vadot	pinctrl-names = "default";
51*c66ec88fSEmmanuel Vadot	status = "okay";
52*c66ec88fSEmmanuel Vadot
53*c66ec88fSEmmanuel Vadot	cs2000: clk_multiplier@4f {
54*c66ec88fSEmmanuel Vadot		#clock-cells = <0>;
55*c66ec88fSEmmanuel Vadot		compatible = "cirrus,cs2000-cp";
56*c66ec88fSEmmanuel Vadot		reg = <0x4f>;
57*c66ec88fSEmmanuel Vadot		clocks = <&audio_clkout>, <&x1801_clk>;
58*c66ec88fSEmmanuel Vadot		clock-names = "clk_in", "ref_clk";
59*c66ec88fSEmmanuel Vadot
60*c66ec88fSEmmanuel Vadot		assigned-clocks = <&cs2000>;
61*c66ec88fSEmmanuel Vadot		assigned-clock-rates = <24576000>; /* 1/1 divide */
62*c66ec88fSEmmanuel Vadot	};
63*c66ec88fSEmmanuel Vadot};
64*c66ec88fSEmmanuel Vadot
65*c66ec88fSEmmanuel Vadot&pfc {
66*c66ec88fSEmmanuel Vadot	i2c2_pins: i2c2 {
67*c66ec88fSEmmanuel Vadot		groups = "i2c2_a";
68*c66ec88fSEmmanuel Vadot		function = "i2c2";
69*c66ec88fSEmmanuel Vadot	};
70*c66ec88fSEmmanuel Vadot
71*c66ec88fSEmmanuel Vadot	sound_clk_pins: sound_clk {
72*c66ec88fSEmmanuel Vadot		groups = "audio_clk_a_a", "audio_clk_b_a", "audio_clkout_a";
73*c66ec88fSEmmanuel Vadot		function = "audio_clk";
74*c66ec88fSEmmanuel Vadot	};
75*c66ec88fSEmmanuel Vadot
76*c66ec88fSEmmanuel Vadot	sound_pins: sound {
77*c66ec88fSEmmanuel Vadot		groups = "ssi01239_ctrl", "ssi0_data", "ssi1_data_a";
78*c66ec88fSEmmanuel Vadot		function = "ssi";
79*c66ec88fSEmmanuel Vadot	};
80*c66ec88fSEmmanuel Vadot};
81*c66ec88fSEmmanuel Vadot
82*c66ec88fSEmmanuel Vadot&rcar_sound {
83*c66ec88fSEmmanuel Vadot	pinctrl-0 = <&sound_pins &sound_clk_pins>;
84*c66ec88fSEmmanuel Vadot	pinctrl-names = "default";
85*c66ec88fSEmmanuel Vadot	status = "okay";
86*c66ec88fSEmmanuel Vadot
87*c66ec88fSEmmanuel Vadot	/* Single DAI */
88*c66ec88fSEmmanuel Vadot	#sound-dai-cells = <0>;
89*c66ec88fSEmmanuel Vadot
90*c66ec88fSEmmanuel Vadot	/* audio_clkout0/1/2/3 */
91*c66ec88fSEmmanuel Vadot	#clock-cells = <1>;
92*c66ec88fSEmmanuel Vadot	clock-frequency = <12288000 11289600>;
93*c66ec88fSEmmanuel Vadot
94*c66ec88fSEmmanuel Vadot	/* update <audio_clk_b> to <cs2000> */
95*c66ec88fSEmmanuel Vadot	clocks = <&cpg CPG_MOD 1005>,
96*c66ec88fSEmmanuel Vadot		 <&cpg CPG_MOD 1006>, <&cpg CPG_MOD 1007>,
97*c66ec88fSEmmanuel Vadot		 <&cpg CPG_MOD 1008>, <&cpg CPG_MOD 1009>,
98*c66ec88fSEmmanuel Vadot		 <&cpg CPG_MOD 1010>, <&cpg CPG_MOD 1011>,
99*c66ec88fSEmmanuel Vadot		 <&cpg CPG_MOD 1012>, <&cpg CPG_MOD 1013>,
100*c66ec88fSEmmanuel Vadot		 <&cpg CPG_MOD 1014>, <&cpg CPG_MOD 1015>,
101*c66ec88fSEmmanuel Vadot		 <&cpg CPG_MOD 1022>, <&cpg CPG_MOD 1023>,
102*c66ec88fSEmmanuel Vadot		 <&cpg CPG_MOD 1024>, <&cpg CPG_MOD 1025>,
103*c66ec88fSEmmanuel Vadot		 <&cpg CPG_MOD 1026>, <&cpg CPG_MOD 1027>,
104*c66ec88fSEmmanuel Vadot		 <&cpg CPG_MOD 1028>, <&cpg CPG_MOD 1029>,
105*c66ec88fSEmmanuel Vadot		 <&cpg CPG_MOD 1030>, <&cpg CPG_MOD 1031>,
106*c66ec88fSEmmanuel Vadot		 <&cpg CPG_MOD 1020>, <&cpg CPG_MOD 1021>,
107*c66ec88fSEmmanuel Vadot		 <&cpg CPG_MOD 1020>, <&cpg CPG_MOD 1021>,
108*c66ec88fSEmmanuel Vadot		 <&cpg CPG_MOD 1019>, <&cpg CPG_MOD 1018>,
109*c66ec88fSEmmanuel Vadot		 <&audio_clk_a>, <&cs2000>,
110*c66ec88fSEmmanuel Vadot		 <&audio_clk_c>,
111*c66ec88fSEmmanuel Vadot		 <&cpg CPG_CORE CPG_AUDIO_CLK_I>;
112*c66ec88fSEmmanuel Vadot
113*c66ec88fSEmmanuel Vadot	rsnd_port: port {
114*c66ec88fSEmmanuel Vadot		rsnd_endpoint: endpoint {
115*c66ec88fSEmmanuel Vadot			remote-endpoint = <&dw_hdmi0_snd_in>;
116*c66ec88fSEmmanuel Vadot
117*c66ec88fSEmmanuel Vadot			dai-format = "i2s";
118*c66ec88fSEmmanuel Vadot			bitclock-master = <&rsnd_endpoint>;
119*c66ec88fSEmmanuel Vadot			frame-master = <&rsnd_endpoint>;
120*c66ec88fSEmmanuel Vadot
121*c66ec88fSEmmanuel Vadot			playback = <&ssi2>;
122*c66ec88fSEmmanuel Vadot		};
123*c66ec88fSEmmanuel Vadot	};
124*c66ec88fSEmmanuel Vadot};
125