Linux Audio

Check our new training course

Loading...
v5.14.15
  1// SPDX-License-Identifier: GPL-2.0+ OR MIT
  2/*
  3 * Copyright 2016-2020 Toradex
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
  4 */
  5
  6/ {
  7	aliases {
  8		rtc0 = &rtc;
  9		rtc1 = &snvs_rtc;
 10	};
 11
 12	chosen {
 13		stdout-path = "serial0:115200n8";
 14	};
 15
 16	/* fixed crystal dedicated to mpc258x */
 17	clk16m: clk16m {
 18		compatible = "fixed-clock";
 19		#clock-cells = <0>;
 20		clock-frequency = <16000000>;
 21	};
 22
 23	gpio-keys {
 24		compatible = "gpio-keys";
 25		pinctrl-names = "default";
 26		pinctrl-0 = <&pinctrl_gpiokeys>;
 27
 28		power {
 29			label = "Wake-Up";
 30			gpios = <&gpio1 1 GPIO_ACTIVE_HIGH>;
 31			linux,code = <KEY_WAKEUP>;
 32			debounce-interval = <10>;
 33			wakeup-source;
 34		};
 35	};
 36
 37	panel: panel {
 38		compatible = "edt,et057090dhu";
 39		backlight = <&bl>;
 40		power-supply = <&reg_3v3>;
 41
 42		port {
 43			panel_in: endpoint {
 44				remote-endpoint = <&lcdif_out>;
 45			};
 46		};
 47	};
 48
 49	reg_3v3: regulator-3v3 {
 50		compatible = "regulator-fixed";
 51		regulator-name = "3.3V";
 52		regulator-min-microvolt = <3300000>;
 53		regulator-max-microvolt = <3300000>;
 54	};
 55
 56	reg_5v0: regulator-5v0 {
 57		compatible = "regulator-fixed";
 58		regulator-name = "5V";
 59		regulator-min-microvolt = <5000000>;
 60		regulator-max-microvolt = <5000000>;
 61	};
 62
 63	reg_usbh_vbus: regulator-usbh-vbus {
 64		compatible = "regulator-fixed";
 65		pinctrl-names = "default";
 66		pinctrl-0 = <&pinctrl_usbh_reg>;
 67		regulator-name = "VCC_USB[1-4]";
 68		regulator-min-microvolt = <5000000>;
 69		regulator-max-microvolt = <5000000>;
 70		gpio = <&gpio4 7 GPIO_ACTIVE_LOW>;
 71		vin-supply = <&reg_5v0>;
 72	};
 73};
 74
 75&bl {
 76	brightness-levels = <0 4 8 16 32 64 128 255>;
 77	default-brightness-level = <6>;
 78	power-supply = <&reg_3v3>;
 79
 80	status = "okay";
 81};
 82
 83&adc1 {
 84	status = "okay";
 85};
 86
 87&adc2 {
 88	status = "okay";
 89};
 90
 91&ecspi3 {
 92	status = "okay";
 93
 94	mcp2515: can@0 {
 95		compatible = "microchip,mcp2515";
 96		pinctrl-names = "default";
 97		pinctrl-0 = <&pinctrl_can_int>;
 98		reg = <0>;
 99		clocks = <&clk16m>;
100		interrupt-parent = <&gpio5>;
101		interrupts = <2 IRQ_TYPE_EDGE_FALLING>;
102		spi-max-frequency = <10000000>;
103		vdd-supply = <&reg_3v3>;
104		xceiver-supply = <&reg_5v0>;
105		status = "okay";
106	};
107};
108
109&fec1 {
110	status = "okay";
111};
112
113&i2c4 {
114	status = "okay";
115
116	/*
117	 * Touchscreen is using SODIMM 28/30, also used for PWM<B>, PWM<C>,
118	 * aka pwm2, pwm3. so if you enable touchscreen, disable the pwms
119	 */
120	touchscreen@4a {
121		compatible = "atmel,maxtouch";
122		pinctrl-names = "default";
123		pinctrl-0 = <&pinctrl_gpiotouch>;
124		reg = <0x4a>;
125		interrupt-parent = <&gpio1>;
126		interrupts = <9 IRQ_TYPE_EDGE_FALLING>;		/* SODIMM 28 */
127		reset-gpios = <&gpio1 10 GPIO_ACTIVE_LOW>;	/* SODIMM 30 */
128		status = "disabled";
129	};
130
131	/* M41T0M6 real time clock on carrier board */
132	rtc: m41t0m6@68 {
133		compatible = "st,m41t0";
134		reg = <0x68>;
135	};
136};
137
138&lcdif {
139	status = "okay";
140
141	port {
142		lcdif_out: endpoint {
143			remote-endpoint = <&panel_in>;
144		};
145	};
146};
147
148&pwm1 {
149	status = "okay";
150};
151
152&pwm2 {
153	status = "okay";
154};
155
156&pwm3 {
157	status = "okay";
158};
159
160&pwm4 {
161	status = "okay";
162};
163
164&uart1 {
165	status = "okay";
166};
167
168&uart2 {
169	status = "okay";
170};
171
172&uart3 {
173	status = "okay";
174};
175
176&usbotg1 {
177	status = "okay";
178};
179
180&usdhc1 {
181	keep-power-in-suspend;
182	wakeup-source;
183	vmmc-supply = <&reg_3v3>;
184	status = "okay";
185};
186
187&iomuxc {
188	pinctrl_gpiotouch: touchgpios {
189		fsl,pins = <
190			MX7D_PAD_GPIO1_IO09__GPIO1_IO9		0x74
191			MX7D_PAD_GPIO1_IO10__GPIO1_IO10		0x14
192		>;
193	};
194};
v5.4
 
  1/*
  2 * Copyright 2016 Toradex AG
  3 *
  4 * This file is dual-licensed: you can use it either under the terms
  5 * of the GPL or the X11 license, at your option. Note that this dual
  6 * licensing only applies to this file, and not this project as a
  7 * whole.
  8 *
  9 *  a) This file is free software; you can redistribute it and/or
 10 *     modify it under the terms of the GNU General Public License as
 11 *     published by the Free Software Foundation; either version 2 of the
 12 *     License, or (at your option) any later version.
 13 *
 14 *     This file is distributed in the hope that it will be useful,
 15 *     but WITHOUT ANY WARRANTY; without even the implied warranty of
 16 *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 17 *     GNU General Public License for more details.
 18 *
 19 * Or, alternatively,
 20 *
 21 *  b) Permission is hereby granted, free of charge, to any person
 22 *     obtaining a copy of this software and associated documentation
 23 *     files (the "Software"), to deal in the Software without
 24 *     restriction, including without limitation the rights to use,
 25 *     copy, modify, merge, publish, distribute, sublicense, and/or
 26 *     sell copies of the Software, and to permit persons to whom the
 27 *     Software is furnished to do so, subject to the following
 28 *     conditions:
 29 *
 30 *     The above copyright notice and this permission notice shall be
 31 *     included in all copies or substantial portions of the Software.
 32 *
 33 *     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
 34 *     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
 35 *     OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
 36 *     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
 37 *     HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
 38 *     WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
 39 *     FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
 40 *     OTHER DEALINGS IN THE SOFTWARE.
 41 */
 42
 43/ {
 
 
 
 
 
 44	chosen {
 45		stdout-path = "serial0:115200n8";
 46	};
 47
 48	/* fixed crystal dedicated to mpc258x */
 49	clk16m: clk16m {
 50		compatible = "fixed-clock";
 51		#clock-cells = <0>;
 52		clock-frequency = <16000000>;
 53	};
 54
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 55	panel: panel {
 56		compatible = "edt,et057090dhu";
 57		backlight = <&bl>;
 58		power-supply = <&reg_3v3>;
 59
 60		port {
 61			panel_in: endpoint {
 62				remote-endpoint = <&lcdif_out>;
 63			};
 64		};
 65	};
 66
 67	reg_3v3: regulator-3v3 {
 68		compatible = "regulator-fixed";
 69		regulator-name = "3.3V";
 70		regulator-min-microvolt = <3300000>;
 71		regulator-max-microvolt = <3300000>;
 72	};
 73
 74	reg_5v0: regulator-5v0 {
 75		compatible = "regulator-fixed";
 76		regulator-name = "5V";
 77		regulator-min-microvolt = <5000000>;
 78		regulator-max-microvolt = <5000000>;
 79	};
 80
 81	reg_usbh_vbus: regulator-usbh-vbus {
 82		compatible = "regulator-fixed";
 83		pinctrl-names = "default";
 84		pinctrl-0 = <&pinctrl_usbh_reg>;
 85		regulator-name = "VCC_USB[1-4]";
 86		regulator-min-microvolt = <5000000>;
 87		regulator-max-microvolt = <5000000>;
 88		gpio = <&gpio4 7 GPIO_ACTIVE_LOW>;
 89		vin-supply = <&reg_5v0>;
 90	};
 91};
 92
 93&bl {
 94	brightness-levels = <0 4 8 16 32 64 128 255>;
 95	default-brightness-level = <6>;
 96	power-supply = <&reg_3v3>;
 97
 98	status = "okay";
 99};
100
101&adc1 {
102	status = "okay";
103};
104
105&adc2 {
106	status = "okay";
107};
108
109&ecspi3 {
110	status = "okay";
111
112	mcp2515: can@0 {
113		compatible = "microchip,mcp2515";
114		pinctrl-names = "default";
115		pinctrl-0 = <&pinctrl_can_int>;
116		reg = <0>;
117		clocks = <&clk16m>;
118		interrupt-parent = <&gpio5>;
119		interrupts = <2 IRQ_TYPE_EDGE_FALLING>;
120		spi-max-frequency = <10000000>;
121		vdd-supply = <&reg_3v3>;
122		xceiver-supply = <&reg_5v0>;
123		status = "okay";
124	};
125};
126
127&fec1 {
128	status = "okay";
129};
130
131&i2c4 {
132	status = "okay";
133
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
134	/* M41T0M6 real time clock on carrier board */
135	rtc: m41t0m6@68 {
136		compatible = "st,m41t0";
137		reg = <0x68>;
138	};
139};
140
141&lcdif {
142	status = "okay";
143
144	port {
145		lcdif_out: endpoint {
146			remote-endpoint = <&panel_in>;
147		};
148	};
149};
150
151&pwm1 {
152	status = "okay";
153};
154
155&pwm2 {
156	status = "okay";
157};
158
159&pwm3 {
160	status = "okay";
161};
162
163&pwm4 {
164	status = "okay";
165};
166
167&uart1 {
168	status = "okay";
169};
170
171&uart2 {
172	status = "okay";
173};
174
175&uart3 {
176	status = "okay";
177};
178
179&usbotg1 {
180	status = "okay";
181};
182
183&usdhc1 {
184	keep-power-in-suspend;
185	wakeup-source;
186	vmmc-supply = <&reg_3v3>;
187	status = "okay";
 
 
 
 
 
 
 
 
 
188};