Linux Audio

Check our new training course

Yocto / OpenEmbedded training

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