Linux Audio

Check our new training course

Loading...
v4.17
  1// SPDX-License-Identifier: GPL-2.0
  2/*
  3 * Samsung's Exynos4210 based Origen board device tree source
  4 *
  5 * Copyright (c) 2010-2011 Samsung Electronics Co., Ltd.
  6 *		http://www.samsung.com
  7 * Copyright (c) 2010-2011 Linaro Ltd.
  8 *		www.linaro.org
  9 *
 10 * Device tree source file for Insignal's Origen board which is based on
 11 * Samsung's Exynos4210 SoC.
 12 */
 13
 14/dts-v1/;
 15#include "exynos4210.dtsi"
 16#include <dt-bindings/gpio/gpio.h>
 17#include <dt-bindings/input/input.h>
 
 18#include "exynos-mfc-reserved-memory.dtsi"
 19
 20/ {
 21	model = "Insignal Origen evaluation board based on Exynos4210";
 22	compatible = "insignal,origen", "samsung,exynos4210", "samsung,exynos4";
 23
 24	memory@40000000 {
 25		device_type = "memory";
 26		reg = <0x40000000 0x10000000
 27		       0x50000000 0x10000000
 28		       0x60000000 0x10000000
 29		       0x70000000 0x10000000>;
 30	};
 31
 32	chosen {
 33		bootargs ="root=/dev/ram0 rw ramdisk=8192 initrd=0x41000000,8M console=ttySAC2,115200 init=/linuxrc";
 34		stdout-path = &serial_2;
 35	};
 36
 37	regulators {
 38		compatible = "simple-bus";
 39		#address-cells = <1>;
 40		#size-cells = <0>;
 41
 42		mmc_reg: regulator@0 {
 43			compatible = "regulator-fixed";
 44			reg = <0>;
 45			regulator-name = "VMEM_VDD_2.8V";
 46			regulator-min-microvolt = <2800000>;
 47			regulator-max-microvolt = <2800000>;
 48			gpio = <&gpx1 1 GPIO_ACTIVE_HIGH>;
 49			enable-active-high;
 50		};
 51	};
 52
 53	gpio_keys {
 54		compatible = "gpio-keys";
 55		#address-cells = <1>;
 56		#size-cells = <0>;
 57
 58		up {
 59			label = "Up";
 60			gpios = <&gpx2 0 GPIO_ACTIVE_LOW>;
 61			linux,code = <KEY_UP>;
 62			wakeup-source;
 63		};
 64
 65		down {
 66			label = "Down";
 67			gpios = <&gpx2 1 GPIO_ACTIVE_LOW>;
 68			linux,code = <KEY_DOWN>;
 69			wakeup-source;
 70		};
 71
 72		back {
 73			label = "Back";
 74			gpios = <&gpx1 7 GPIO_ACTIVE_LOW>;
 75			linux,code = <KEY_BACK>;
 76			wakeup-source;
 77		};
 78
 79		home {
 80			label = "Home";
 81			gpios = <&gpx1 6 GPIO_ACTIVE_LOW>;
 82			linux,code = <KEY_HOME>;
 83			wakeup-source;
 84		};
 85
 86		menu {
 87			label = "Menu";
 88			gpios = <&gpx1 5 GPIO_ACTIVE_LOW>;
 89			linux,code = <KEY_MENU>;
 90			wakeup-source;
 91		};
 92	};
 93
 94	leds {
 95		compatible = "gpio-leds";
 96		status {
 97			gpios = <&gpx1 3 GPIO_ACTIVE_LOW>;
 
 98			linux,default-trigger = "heartbeat";
 99		};
100	};
101
102	fixed-rate-clocks {
103		xxti {
104			compatible = "samsung,clock-xxti";
105			clock-frequency = <0>;
106		};
107
108		xusbxti {
109			compatible = "samsung,clock-xusbxti";
110			clock-frequency = <24000000>;
111		};
 
 
 
 
 
 
 
112	};
113
114	display-timings {
115		native-mode = <&timing0>;
116		timing0: timing {
117			clock-frequency = <47500000>;
118			hactive = <1024>;
119			vactive = <600>;
120			hfront-porch = <64>;
121			hback-porch = <16>;
122			hsync-len = <48>;
123			vback-porch = <64>;
124			vfront-porch = <16>;
125			vsync-len = <3>;
126		};
127	};
128};
129
130&cpu0 {
131	cpu0-supply = <&buck1_reg>;
132};
133
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
134&fimd {
135	pinctrl-0 = <&lcd_en &lcd_clk &lcd_data24 &pwm0_out>;
136	pinctrl-names = "default";
137	status = "okay";
138};
139
 
 
 
 
 
 
 
 
 
 
 
 
140&i2c_0 {
141	status = "okay";
142	samsung,i2c-sda-delay = <100>;
143	samsung,i2c-max-bus-freq = <20000>;
144	pinctrl-0 = <&i2c0_bus>;
145	pinctrl-names = "default";
146
147	max8997_pmic@66 {
148		compatible = "maxim,max8997-pmic";
149		reg = <0x66>;
150		interrupt-parent = <&gpx0>;
151		interrupts = <4 IRQ_TYPE_NONE>, <3 IRQ_TYPE_NONE>;
 
 
152
153		max8997,pmic-buck1-dvs-voltage = <1350000>;
154		max8997,pmic-buck2-dvs-voltage = <1100000>;
155		max8997,pmic-buck5-dvs-voltage = <1200000>;
156
157		regulators {
158			ldo1_reg: LDO1 {
159				regulator-name = "VDD_ABB_3.3V";
160				regulator-min-microvolt = <3300000>;
161				regulator-max-microvolt = <3300000>;
162			};
163
164			ldo2_reg: LDO2 {
165				regulator-name = "VDD_ALIVE_1.1V";
166				regulator-min-microvolt = <1100000>;
167				regulator-max-microvolt = <1100000>;
168				regulator-always-on;
169			};
170
171			ldo3_reg: LDO3 {
172				regulator-name = "VMIPI_1.1V";
173				regulator-min-microvolt = <1100000>;
174				regulator-max-microvolt = <1100000>;
175			};
176
177			ldo4_reg: LDO4 {
178				regulator-name = "VDD_RTC_1.8V";
179				regulator-min-microvolt = <1800000>;
180				regulator-max-microvolt	= <1800000>;
181				regulator-always-on;
182			};
183
184			ldo6_reg: LDO6 {
185				regulator-name = "VMIPI_1.8V";
186				regulator-min-microvolt = <1800000>;
187				regulator-max-microvolt	= <1800000>;
188				regulator-always-on;
189			};
190
191			ldo7_reg: LDO7 {
192				regulator-name = "VDD_AUD_1.8V";
193				regulator-min-microvolt = <1800000>;
194				regulator-max-microvolt	= <1800000>;
195			};
196
197			ldo8_reg: LDO8 {
198				regulator-name = "VADC_3.3V";
199				regulator-min-microvolt = <3300000>;
200				regulator-max-microvolt	= <3300000>;
201			};
202
203			ldo9_reg: LDO9 {
204				regulator-name = "DVDD_SWB_2.8V";
205				regulator-min-microvolt = <2800000>;
206				regulator-max-microvolt	= <2800000>;
207				regulator-always-on;
208			};
209
210			ldo10_reg: LDO10 {
211				regulator-name = "VDD_PLL_1.1V";
212				regulator-min-microvolt = <1100000>;
213				regulator-max-microvolt	= <1100000>;
214				regulator-always-on;
215			};
216
217			ldo11_reg: LDO11 {
218				regulator-name = "VDD_AUD_3V";
219				regulator-min-microvolt = <3000000>;
220				regulator-max-microvolt	= <3000000>;
221			};
222
223			ldo14_reg: LDO14 {
224				regulator-name = "AVDD18_SWB_1.8V";
225				regulator-min-microvolt = <1800000>;
226				regulator-max-microvolt	= <1800000>;
227				regulator-always-on;
228			};
229
230			ldo17_reg: LDO17 {
231				regulator-name = "VDD_SWB_3.3V";
232				regulator-min-microvolt = <3300000>;
233				regulator-max-microvolt	= <3300000>;
234				regulator-always-on;
235			};
236
237			ldo21_reg: LDO21 {
238				regulator-name = "VDD_MIF_1.2V";
239				regulator-min-microvolt = <1200000>;
240				regulator-max-microvolt	= <1200000>;
241				regulator-always-on;
242			};
243
244			buck1_reg: BUCK1 {
245				/*
246				* HACK: The real name is VDD_ARM_1.2V,
247				* but exynos-cpufreq does not support
248				* DT-based regulator lookup yet.
249				*/
250				regulator-name = "vdd_arm";
251				regulator-min-microvolt = <950000>;
252				regulator-max-microvolt	= <1350000>;
253				regulator-always-on;
254				regulator-boot-on;
255			};
256
257			buck2_reg: BUCK2 {
258				regulator-name = "VDD_INT_1.1V";
259				regulator-min-microvolt = <900000>;
260				regulator-max-microvolt	= <1100000>;
261				regulator-always-on;
262				regulator-boot-on;
263			};
264
265			buck3_reg: BUCK3 {
266				regulator-name = "VDD_G3D_1.1V";
267				regulator-min-microvolt = <900000>;
268				regulator-max-microvolt = <1100000>;
269			};
270
271			buck5_reg: BUCK5 {
272				regulator-name = "VDDQ_M1M2_1.2V";
273				regulator-min-microvolt = <1200000>;
274				regulator-max-microvolt = <1200000>;
275				regulator-always-on;
276			};
277
278			buck7_reg: BUCK7 {
279				regulator-name = "VDD_LCD_3.3V";
280				regulator-min-microvolt = <3300000>;
281				regulator-max-microvolt = <3300000>;
282				regulator-boot-on;
283				regulator-always-on;
284			};
 
 
 
 
 
285		};
286	};
287};
288
 
 
 
 
 
 
 
289&sdhci_0 {
290	bus-width = <4>;
291	pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4 &sd0_cd>;
292	pinctrl-names = "default";
293	vmmc-supply = <&mmc_reg>;
294	status = "okay";
295};
296
297&sdhci_2 {
298	bus-width = <4>;
299	pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &sd2_cd>;
300	pinctrl-names = "default";
301	vmmc-supply = <&mmc_reg>;
302	status = "okay";
303};
304
305&serial_0 {
306	status = "okay";
307};
308
309&serial_1 {
310	status = "okay";
311};
312
313&serial_2 {
314	status = "okay";
315};
316
317&serial_3 {
318	status = "okay";
319};
320
321&rtc {
322	status = "okay";
 
 
323};
324
325&tmu {
326	status = "okay";
327};
v6.2
  1// SPDX-License-Identifier: GPL-2.0
  2/*
  3 * Samsung's Exynos4210 based Origen board device tree source
  4 *
  5 * Copyright (c) 2010-2011 Samsung Electronics Co., Ltd.
  6 *		http://www.samsung.com
  7 * Copyright (c) 2010-2011 Linaro Ltd.
  8 *		www.linaro.org
  9 *
 10 * Device tree source file for Insignal's Origen board which is based on
 11 * Samsung's Exynos4210 SoC.
 12 */
 13
 14/dts-v1/;
 15#include "exynos4210.dtsi"
 16#include <dt-bindings/gpio/gpio.h>
 17#include <dt-bindings/input/input.h>
 18#include <dt-bindings/leds/common.h>
 19#include "exynos-mfc-reserved-memory.dtsi"
 20
 21/ {
 22	model = "Insignal Origen evaluation board based on Exynos4210";
 23	compatible = "insignal,origen", "samsung,exynos4210", "samsung,exynos4";
 24
 25	memory@40000000 {
 26		device_type = "memory";
 27		reg = <0x40000000 0x10000000
 28		       0x50000000 0x10000000
 29		       0x60000000 0x10000000
 30		       0x70000000 0x10000000>;
 31	};
 32
 33	chosen {
 34		bootargs = "root=/dev/ram0 rw ramdisk=8192 initrd=0x41000000,8M init=/linuxrc";
 35		stdout-path = "serial2:115200n8";
 36	};
 37
 38	mmc_reg: voltage-regulator {
 39		compatible = "regulator-fixed";
 40		regulator-name = "VMEM_VDD_2.8V";
 41		regulator-min-microvolt = <2800000>;
 42		regulator-max-microvolt = <2800000>;
 43		gpio = <&gpx1 1 GPIO_ACTIVE_HIGH>;
 44		enable-active-high;
 
 
 
 
 
 
 
 45	};
 46
 47	gpio-keys {
 48		compatible = "gpio-keys";
 
 
 49
 50		key-up {
 51			label = "Up";
 52			gpios = <&gpx2 0 GPIO_ACTIVE_LOW>;
 53			linux,code = <KEY_UP>;
 54			wakeup-source;
 55		};
 56
 57		key-down {
 58			label = "Down";
 59			gpios = <&gpx2 1 GPIO_ACTIVE_LOW>;
 60			linux,code = <KEY_DOWN>;
 61			wakeup-source;
 62		};
 63
 64		key-back {
 65			label = "Back";
 66			gpios = <&gpx1 7 GPIO_ACTIVE_LOW>;
 67			linux,code = <KEY_BACK>;
 68			wakeup-source;
 69		};
 70
 71		key-home {
 72			label = "Home";
 73			gpios = <&gpx1 6 GPIO_ACTIVE_LOW>;
 74			linux,code = <KEY_HOME>;
 75			wakeup-source;
 76		};
 77
 78		key-menu {
 79			label = "Menu";
 80			gpios = <&gpx1 5 GPIO_ACTIVE_LOW>;
 81			linux,code = <KEY_MENU>;
 82			wakeup-source;
 83		};
 84	};
 85
 86	leds {
 87		compatible = "gpio-leds";
 88		status {
 89			gpios = <&gpx1 3 GPIO_ACTIVE_LOW>;
 90			function = LED_FUNCTION_HEARTBEAT;
 91			linux,default-trigger = "heartbeat";
 92		};
 93	};
 94
 95	fixed-rate-clocks {
 96		xxti {
 97			compatible = "samsung,clock-xxti";
 98			clock-frequency = <0>;
 99		};
100
101		xusbxti {
102			compatible = "samsung,clock-xusbxti";
103			clock-frequency = <24000000>;
104		};
105
106		pmic_ap_clk: pmic-ap-clk {
107			/* Workaround for missing clock on max8997 PMIC */
108			compatible = "fixed-clock";
109			#clock-cells = <0>;
110			clock-frequency = <32768>;
111		};
112	};
113
114	display-timings {
115		native-mode = <&timing0>;
116		timing0: timing {
117			clock-frequency = <47500000>;
118			hactive = <1024>;
119			vactive = <600>;
120			hfront-porch = <64>;
121			hback-porch = <16>;
122			hsync-len = <48>;
123			vback-porch = <64>;
124			vfront-porch = <16>;
125			vsync-len = <3>;
126		};
127	};
128};
129
130&cpu0 {
131	cpu0-supply = <&buck1_reg>;
132};
133
134&cpu_thermal {
135	cooling-maps {
136		map0 {
137			/* Corresponds to 800MHz */
138			cooling-device = <&cpu0 2 2>;
139		};
140		map1 {
141			/* Corresponds to 200MHz */
142			cooling-device = <&cpu0 4 4>;
143		};
144	};
145};
146
147&exynos_usbphy {
148	status = "okay";
149};
150
151&fimd {
152	pinctrl-0 = <&lcd_en &lcd_clk &lcd_data24 &pwm0_out>;
153	pinctrl-names = "default";
154	status = "okay";
155};
156
157&gpu {
158	mali-supply = <&buck3_reg>;
159	status = "okay";
160};
161
162&hsotg {
163	vusb_d-supply = <&ldo3_reg>;
164	vusb_a-supply = <&ldo8_reg>;
165	dr_mode = "peripheral";
166	status = "okay";
167};
168
169&i2c_0 {
170	status = "okay";
171	samsung,i2c-sda-delay = <100>;
172	samsung,i2c-max-bus-freq = <20000>;
173	pinctrl-0 = <&i2c0_bus>;
174	pinctrl-names = "default";
175
176	pmic@66 {
177		compatible = "maxim,max8997-pmic";
178		reg = <0x66>;
179		interrupt-parent = <&gpx0>;
180		interrupts = <4 IRQ_TYPE_NONE>, <3 IRQ_TYPE_NONE>;
181		pinctrl-names = "default";
182		pinctrl-0 = <&max8997_irq>;
183
184		max8997,pmic-buck1-dvs-voltage = <1350000>;
185		max8997,pmic-buck2-dvs-voltage = <1100000>;
186		max8997,pmic-buck5-dvs-voltage = <1200000>;
187
188		regulators {
189			ldo1_reg: LDO1 {
190				regulator-name = "VDD_ABB_3.3V";
191				regulator-min-microvolt = <3300000>;
192				regulator-max-microvolt = <3300000>;
193			};
194
195			ldo2_reg: LDO2 {
196				regulator-name = "VDD_ALIVE_1.1V";
197				regulator-min-microvolt = <1100000>;
198				regulator-max-microvolt = <1100000>;
199				regulator-always-on;
200			};
201
202			ldo3_reg: LDO3 {
203				regulator-name = "VMIPI_1.1V";
204				regulator-min-microvolt = <1100000>;
205				regulator-max-microvolt = <1100000>;
206			};
207
208			ldo4_reg: LDO4 {
209				regulator-name = "VDD_RTC_1.8V";
210				regulator-min-microvolt = <1800000>;
211				regulator-max-microvolt = <1800000>;
212				regulator-always-on;
213			};
214
215			ldo6_reg: LDO6 {
216				regulator-name = "VMIPI_1.8V";
217				regulator-min-microvolt = <1800000>;
218				regulator-max-microvolt = <1800000>;
219				regulator-always-on;
220			};
221
222			ldo7_reg: LDO7 {
223				regulator-name = "VDD_AUD_1.8V";
224				regulator-min-microvolt = <1800000>;
225				regulator-max-microvolt = <1800000>;
226			};
227
228			ldo8_reg: LDO8 {
229				regulator-name = "VADC_3.3V";
230				regulator-min-microvolt = <3300000>;
231				regulator-max-microvolt = <3300000>;
232			};
233
234			ldo9_reg: LDO9 {
235				regulator-name = "DVDD_SWB_2.8V";
236				regulator-min-microvolt = <2800000>;
237				regulator-max-microvolt = <2800000>;
238				regulator-always-on;
239			};
240
241			ldo10_reg: LDO10 {
242				regulator-name = "VDD_PLL_1.1V";
243				regulator-min-microvolt = <1100000>;
244				regulator-max-microvolt = <1100000>;
245				regulator-always-on;
246			};
247
248			ldo11_reg: LDO11 {
249				regulator-name = "VDD_AUD_3V";
250				regulator-min-microvolt = <3000000>;
251				regulator-max-microvolt = <3000000>;
252			};
253
254			ldo14_reg: LDO14 {
255				regulator-name = "AVDD18_SWB_1.8V";
256				regulator-min-microvolt = <1800000>;
257				regulator-max-microvolt = <1800000>;
258				regulator-always-on;
259			};
260
261			ldo17_reg: LDO17 {
262				regulator-name = "VDD_SWB_3.3V";
263				regulator-min-microvolt = <3300000>;
264				regulator-max-microvolt = <3300000>;
265				regulator-always-on;
266			};
267
268			ldo21_reg: LDO21 {
269				regulator-name = "VDD_MIF_1.2V";
270				regulator-min-microvolt = <1200000>;
271				regulator-max-microvolt = <1200000>;
272				regulator-always-on;
273			};
274
275			buck1_reg: BUCK1 {
276				regulator-name = "VDD_ARM_1.2V";
 
 
 
 
 
277				regulator-min-microvolt = <950000>;
278				regulator-max-microvolt = <1350000>;
279				regulator-always-on;
280				regulator-boot-on;
281			};
282
283			buck2_reg: BUCK2 {
284				regulator-name = "VDD_INT_1.1V";
285				regulator-min-microvolt = <900000>;
286				regulator-max-microvolt = <1100000>;
287				regulator-always-on;
288				regulator-boot-on;
289			};
290
291			buck3_reg: BUCK3 {
292				regulator-name = "VDD_G3D_1.1V";
293				regulator-min-microvolt = <900000>;
294				regulator-max-microvolt = <1100000>;
295			};
296
297			buck5_reg: BUCK5 {
298				regulator-name = "VDDQ_M1M2_1.2V";
299				regulator-min-microvolt = <1200000>;
300				regulator-max-microvolt = <1200000>;
301				regulator-always-on;
302			};
303
304			buck7_reg: BUCK7 {
305				regulator-name = "VDD_LCD_3.3V";
306				regulator-min-microvolt = <3300000>;
307				regulator-max-microvolt = <3300000>;
308				regulator-boot-on;
309				regulator-always-on;
310			};
311
312			EN32KHZ_AP {
313				regulator-name = "EN32KHZ_AP";
314				regulator-always-on;
315			};
316		};
317	};
318};
319
320&pinctrl_1 {
321	max8997_irq: max8997-irq-pins {
322		samsung,pins = "gpx0-3", "gpx0-4";
323		samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
324	};
325};
326
327&sdhci_0 {
328	bus-width = <4>;
329	pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus4 &sd0_cd>;
330	pinctrl-names = "default";
331	vmmc-supply = <&mmc_reg>;
332	status = "okay";
333};
334
335&sdhci_2 {
336	bus-width = <4>;
337	pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4 &sd2_cd>;
338	pinctrl-names = "default";
339	vmmc-supply = <&mmc_reg>;
340	status = "okay";
341};
342
343&serial_0 {
344	status = "okay";
345};
346
347&serial_1 {
348	status = "okay";
349};
350
351&serial_2 {
352	status = "okay";
353};
354
355&serial_3 {
356	status = "okay";
357};
358
359&rtc {
360	status = "okay";
361	clocks = <&clock CLK_RTC>, <&pmic_ap_clk>;
362	clock-names = "rtc", "rtc_src";
363};
364
365&tmu {
366	status = "okay";
367};