Linux Audio

Check our new training course

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