Linux Audio

Check our new training course

Loading...
Note: File does not exist in v4.17.
  1// SPDX-License-Identifier: GPL-2.0
  2/*
  3 * Device Tree Source for the Blanche board
  4 *
  5 * Copyright (C) 2014 Renesas Electronics Corporation
  6 * Copyright (C) 2016 Cogent  Embedded, Inc.
  7 */
  8
  9/dts-v1/;
 10#include "r8a7792.dtsi"
 11#include <dt-bindings/gpio/gpio.h>
 12#include <dt-bindings/input/input.h>
 13
 14/ {
 15	model = "Blanche";
 16	compatible = "renesas,blanche", "renesas,r8a7792";
 17
 18	aliases {
 19		serial0 = &scif0;
 20		serial1 = &scif3;
 21	};
 22
 23	chosen {
 24		bootargs = "ignore_loglevel rw root=/dev/nfs ip=on";
 25		stdout-path = "serial0:115200n8";
 26	};
 27
 28	memory@40000000 {
 29		device_type = "memory";
 30		reg = <0 0x40000000 0 0x40000000>;
 31	};
 32
 33	d1_8v: regulator-1v8 {
 34		compatible = "regulator-fixed";
 35		regulator-name = "D1.8V";
 36		regulator-min-microvolt = <1800000>;
 37		regulator-max-microvolt = <1800000>;
 38		regulator-boot-on;
 39		regulator-always-on;
 40	};
 41
 42	d3_3v: regulator-3v3 {
 43		compatible = "regulator-fixed";
 44		regulator-name = "D3.3V";
 45		regulator-min-microvolt = <3300000>;
 46		regulator-max-microvolt = <3300000>;
 47		regulator-boot-on;
 48		regulator-always-on;
 49	};
 50
 51	vga-encoder {
 52		compatible = "adi,adv7123";
 53
 54		ports {
 55			#address-cells = <1>;
 56			#size-cells = <0>;
 57
 58			port@0 {
 59				reg = <0>;
 60				adv7123_in: endpoint {
 61					remote-endpoint = <&du_out_rgb1>;
 62				};
 63			};
 64			port@1 {
 65				reg = <1>;
 66				adv7123_out: endpoint {
 67					remote-endpoint = <&vga_in>;
 68				};
 69			};
 70		};
 71	};
 72
 73	hdmi-out {
 74		compatible = "hdmi-connector";
 75		type = "a";
 76
 77		port {
 78			hdmi_con: endpoint {
 79				remote-endpoint = <&adv7511_out>;
 80			};
 81		};
 82	};
 83
 84	vga {
 85		compatible = "vga-connector";
 86
 87		port {
 88			vga_in: endpoint {
 89				remote-endpoint = <&adv7123_out>;
 90			};
 91		};
 92	};
 93
 94	x1_clk: x1 {
 95		compatible = "fixed-clock";
 96		#clock-cells = <0>;
 97		clock-frequency = <74250000>;
 98	};
 99
100	x2_clk: x2 {
101		compatible = "fixed-clock";
102		#clock-cells = <0>;
103		clock-frequency = <65000000>;
104	};
105
106	keyboard {
107		compatible = "gpio-keys";
108
109		pinctrl-0 = <&keyboard_pins>;
110		pinctrl-names = "default";
111
112		key-1 {
113			linux,code = <KEY_1>;
114			label = "SW2-1";
115			wakeup-source;
116			debounce-interval = <20>;
117			gpios = <&gpio3 10 GPIO_ACTIVE_LOW>;
118		};
119		key-2 {
120			linux,code = <KEY_2>;
121			label = "SW2-2";
122			wakeup-source;
123			debounce-interval = <20>;
124			gpios = <&gpio3 11 GPIO_ACTIVE_LOW>;
125		};
126		key-3 {
127			linux,code = <KEY_3>;
128			label = "SW2-3";
129			wakeup-source;
130			debounce-interval = <20>;
131			gpios = <&gpio3 12 GPIO_ACTIVE_LOW>;
132		};
133		key-4 {
134			linux,code = <KEY_4>;
135			label = "SW2-4";
136			wakeup-source;
137			debounce-interval = <20>;
138			gpios = <&gpio3 15 GPIO_ACTIVE_LOW>;
139		};
140		key-a {
141			linux,code = <KEY_A>;
142			label = "SW24";
143			wakeup-source;
144			debounce-interval = <20>;
145			gpios = <&gpio3 20 GPIO_ACTIVE_LOW>;
146		};
147		key-b {
148			linux,code = <KEY_B>;
149			label = "SW25";
150			wakeup-source;
151			debounce-interval = <20>;
152			gpios = <&gpio11 2 GPIO_ACTIVE_LOW>;
153		};
154	};
155
156	leds {
157		compatible = "gpio-leds";
158
159		led17 {
160			gpios = <&gpio10 10 GPIO_ACTIVE_HIGH>;
161		};
162		led18 {
163			gpios = <&gpio10 11 GPIO_ACTIVE_HIGH>;
164		};
165		led19 {
166			gpios = <&gpio10 12 GPIO_ACTIVE_HIGH>;
167		};
168		led20 {
169			gpios = <&gpio10 23 GPIO_ACTIVE_HIGH>;
170		};
171	};
172
173	vcc_sdhi0: regulator-vcc-sdhi0 {
174		compatible = "regulator-fixed";
175
176		regulator-name = "SDHI0 Vcc";
177		regulator-min-microvolt = <3300000>;
178		regulator-max-microvolt = <3300000>;
179
180		gpio = <&gpio11 12 GPIO_ACTIVE_HIGH>;
181		enable-active-high;
182	};
183};
184
185&extal_clk {
186	clock-frequency = <20000000>;
187};
188
189&can_clk {
190	clock-frequency = <48000000>;
191};
192
193&lbsc {
194	flash@0 {
195		compatible = "cfi-flash";
196		reg = <0x00000000 0x04000000>;
197		pinctrl-0 = <&flash_pins>;
198		pinctrl-names = "default";
199		bank-width = <2>;
200
201		partitions {
202			compatible = "fixed-partitions";
203			#address-cells = <1>;
204			#size-cells = <1>;
205
206			partition@0 {
207				label = "uboot";
208				reg = <0x00000000 0x00040000>;
209				read-only;
210			};
211			partition@40000 {
212				label = "uboot-env";
213				reg = <0x00040000 0x00040000>;
214				read-only;
215			};
216			partition@80000 {
217				label = "flash";
218				reg = <0x00080000 0x03f80000>;
219			};
220		};
221	};
222
223	ethernet@18000000 {
224		compatible = "smsc,lan89218", "smsc,lan9115";
225		reg = <0x18000000 0x100>;
226		phy-mode = "mii";
227		interrupt-parent = <&irqc>;
228		interrupts = <0 IRQ_TYPE_EDGE_FALLING>;
229		smsc,irq-push-pull;
230		reg-io-width = <4>;
231		vddvario-supply = <&d3_3v>;
232		vdd33a-supply = <&d3_3v>;
233
234		pinctrl-0 = <&lan89218_pins>;
235		pinctrl-names = "default";
236	};
237};
238
239&pfc {
240	scif0_pins: scif0 {
241		groups = "scif0_data";
242		function = "scif0";
243	};
244
245	scif3_pins: scif3 {
246		groups = "scif3_data";
247		function = "scif3";
248	};
249
250	lan89218_pins: lan89218 {
251		intc {
252			groups = "intc_irq0";
253			function = "intc";
254		};
255		lbsc {
256			groups = "lbsc_ex_cs0";
257			function = "lbsc";
258		};
259	};
260
261	can0_pins: can0 {
262		groups = "can0_data", "can_clk";
263		function = "can0";
264	};
265
266	sdhi0_pins: sdhi0 {
267		groups = "sdhi0_data4", "sdhi0_ctrl";
268		function = "sdhi0";
269	};
270
271	du0_pins: du0 {
272		groups = "du0_rgb888", "du0_sync", "du0_disp";
273		function = "du0";
274	};
275
276	du1_pins: du1 {
277		groups = "du1_rgb666", "du1_sync", "du1_disp";
278		function = "du1";
279	};
280
281	flash_pins: flash {
282		groups = "lbsc_cs0";
283		function = "lbsc";
284	};
285
286	keyboard_pins: keyboard {
287		pins = "GP_3_10", "GP_3_11", "GP_3_12", "GP_3_15", "GP_11_2";
288		bias-pull-up;
289	};
290
291	pmic_irq_pins: pmicirq {
292		groups = "intc_irq2";
293		function = "intc";
294	};
295};
296
297&rwdt {
298	timeout-sec = <60>;
299	status = "okay";
300};
301
302&scif0 {
303	pinctrl-0 = <&scif0_pins>;
304	pinctrl-names = "default";
305
306	status = "okay";
307};
308
309&scif3 {
310	pinctrl-0 = <&scif3_pins>;
311	pinctrl-names = "default";
312
313	status = "okay";
314};
315
316&can0 {
317	pinctrl-0 = <&can0_pins>;
318	pinctrl-names = "default";
319
320	status = "okay";
321};
322
323&sdhi0 {
324	pinctrl-0 = <&sdhi0_pins>;
325	pinctrl-names = "default";
326
327	vmmc-supply = <&vcc_sdhi0>;
328	cd-gpios = <&gpio11 11 GPIO_ACTIVE_LOW>;
329	status = "okay";
330};
331
332&i2c1 {
333	status = "okay";
334	clock-frequency = <400000>;
335
336	hdmi@39 {
337		compatible = "adi,adv7511w";
338		reg = <0x39>;
339		interrupt-parent = <&irqc>;
340		interrupts = <3 IRQ_TYPE_EDGE_FALLING>;
341
342		avdd-supply = <&d1_8v>;
343		dvdd-supply = <&d1_8v>;
344		pvdd-supply = <&d1_8v>;
345		dvdd-3v-supply = <&d3_3v>;
346		bgvdd-supply = <&d1_8v>;
347
348		adi,input-depth = <8>;
349		adi,input-colorspace = "rgb";
350		adi,input-clock = "1x";
351
352		ports {
353			#address-cells = <1>;
354			#size-cells = <0>;
355
356			port@0 {
357				reg = <0>;
358				adv7511_in: endpoint {
359					remote-endpoint = <&du_out_rgb0>;
360				};
361			};
362
363			port@1 {
364				reg = <1>;
365				adv7511_out: endpoint {
366					remote-endpoint = <&hdmi_con>;
367				};
368			};
369		};
370	};
371};
372
373&iic3 {
374	status = "okay";
375
376	pmic@58 {
377		compatible = "dlg,da9063";
378		reg = <0x58>;
379		pinctrl-names = "default";
380		pinctrl-0 = <&pmic_irq_pins>;
381		interrupt-parent = <&irqc>;
382		interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
383		interrupt-controller;
384		#interrupt-cells = <2>;
385
386		rtc {
387			compatible = "dlg,da9063-rtc";
388		};
389
390		watchdog {
391			compatible = "dlg,da9063-watchdog";
392		};
393	};
394};
395
396&du {
397	pinctrl-0 = <&du0_pins>, <&du1_pins>;
398	pinctrl-names = "default";
399
400	clocks = <&cpg CPG_MOD 724>, <&cpg CPG_MOD 723>, <&x1_clk>, <&x2_clk>;
401	clock-names = "du.0", "du.1", "dclkin.0", "dclkin.1";
402	status = "okay";
403
404	ports {
405		port@0 {
406			endpoint {
407				remote-endpoint = <&adv7511_in>;
408			};
409		};
410		port@1 {
411			endpoint {
412				remote-endpoint = <&adv7123_in>;
413			};
414		};
415	};
416};