Linux Audio

Check our new training course

In-person Linux kernel drivers training

Jun 16-20, 2025
Register
Loading...
Note: File does not exist in v6.9.4.
  1/*
  2 * Copyright 2013 Rostislav Lisovy <lisovy@gmail.com>, PiKRON s.r.o.
  3 *
  4 * The code contained herein is licensed under the GNU General Public
  5 * License. You may obtain a copy of the GNU General Public License
  6 * Version 2 or later at the following locations:
  7 *
  8 * http://www.opensource.org/licenses/gpl-license.html
  9 * http://www.gnu.org/copyleft/gpl.html
 10 */
 11
 12/dts-v1/;
 13#include "imx53-voipac-dmm-668.dtsi"
 14
 15/ {
 16	sound {
 17		compatible = "fsl,imx53-voipac-sgtl5000",
 18			     "fsl,imx-audio-sgtl5000";
 19		model = "imx53-voipac-sgtl5000";
 20		ssi-controller = <&ssi2>;
 21		audio-codec = <&sgtl5000>;
 22		audio-routing =
 23			"Headphone Jack", "HP_OUT";
 24		mux-int-port = <2>;
 25		mux-ext-port = <5>;
 26	};
 27
 28	leds {
 29		compatible = "gpio-leds";
 30		pinctrl-names = "default";
 31		pinctrl-0 = <&led_pin_gpio>;
 32
 33		led1 {
 34			label = "led-red";
 35			gpios = <&gpio3 29 0>;
 36			default-state = "off";
 37		};
 38
 39		led2 {
 40			label = "led-orange";
 41			gpios = <&gpio2 31 0>;
 42			default-state = "off";
 43		};
 44	};
 45};
 46
 47&iomuxc {
 48	pinctrl-names = "default";
 49	pinctrl-0 = <&pinctrl_hog>;
 50
 51	imx53-voipac {
 52		pinctrl_hog: hoggrp {
 53			fsl,pins = <
 54				/* SD2_CD */
 55				MX53_PAD_EIM_D25__GPIO3_25	0x80000000
 56				/* SD2_WP */
 57				MX53_PAD_EIM_A19__GPIO2_19 	0x80000000
 58			>;
 59		};
 60
 61		led_pin_gpio: led_gpio {
 62			fsl,pins = <
 63				MX53_PAD_EIM_D29__GPIO3_29	0x80000000
 64				MX53_PAD_EIM_EB3__GPIO2_31	0x80000000
 65			>;
 66		};
 67
 68		/* Keyboard controller */
 69		pinctrl_kpp_1: kppgrp-1 {
 70			fsl,pins = <
 71				MX53_PAD_GPIO_9__KPP_COL_6	0xe8
 72				MX53_PAD_GPIO_4__KPP_COL_7	0xe8
 73				MX53_PAD_KEY_COL2__KPP_COL_2	0xe8
 74				MX53_PAD_KEY_COL3__KPP_COL_3	0xe8
 75				MX53_PAD_KEY_COL4__KPP_COL_4	0xe8
 76				MX53_PAD_GPIO_2__KPP_ROW_6	0xe0
 77				MX53_PAD_GPIO_5__KPP_ROW_7	0xe0
 78				MX53_PAD_KEY_ROW2__KPP_ROW_2	0xe0
 79				MX53_PAD_KEY_ROW3__KPP_ROW_3	0xe0
 80				MX53_PAD_KEY_ROW4__KPP_ROW_4	0xe0
 81			>;
 82		};
 83
 84		pinctrl_audmux: audmuxgrp {
 85			fsl,pins = <
 86				MX53_PAD_KEY_COL0__AUDMUX_AUD5_TXC	0x80000000
 87				MX53_PAD_KEY_ROW0__AUDMUX_AUD5_TXD	0x80000000
 88				MX53_PAD_KEY_COL1__AUDMUX_AUD5_TXFS	0x80000000
 89				MX53_PAD_KEY_ROW1__AUDMUX_AUD5_RXD	0x80000000
 90			>;
 91		};
 92
 93		pinctrl_esdhc2: esdhc2grp {
 94			fsl,pins = <
 95				MX53_PAD_SD2_CMD__ESDHC2_CMD		0x1d5
 96				MX53_PAD_SD2_CLK__ESDHC2_CLK		0x1d5
 97				MX53_PAD_SD2_DATA0__ESDHC2_DAT0		0x1d5
 98				MX53_PAD_SD2_DATA1__ESDHC2_DAT1		0x1d5
 99				MX53_PAD_SD2_DATA2__ESDHC2_DAT2		0x1d5
100				MX53_PAD_SD2_DATA3__ESDHC2_DAT3		0x1d5
101			>;
102		};
103
104		pinctrl_i2c3: i2c3grp {
105			fsl,pins = <
106				MX53_PAD_GPIO_3__I2C3_SCL		0xc0000000
107				MX53_PAD_GPIO_6__I2C3_SDA		0xc0000000
108			>;
109		};
110	};
111};
112
113&audmux {
114	pinctrl-names = "default";
115	pinctrl-0 = <&pinctrl_audmux>; /* SSI1 */
116	status = "okay";
117};
118
119&esdhc2 {
120	pinctrl-names = "default";
121	pinctrl-0 = <&pinctrl_esdhc2>;
122	cd-gpios = <&gpio3 25 GPIO_ACTIVE_LOW>;
123	wp-gpios = <&gpio2 19 GPIO_ACTIVE_HIGH>;
124	vmmc-supply = <&reg_3p3v>;
125	status = "okay";
126};
127
128&i2c3 {
129	pinctrl-names = "default";
130	pinctrl-0 = <&pinctrl_i2c3>;
131	status = "okay";
132
133	sgtl5000: codec@a {
134		compatible = "fsl,sgtl5000";
135		reg = <0x0a>;
136		#sound-dai-cells = <0>;
137		VDDA-supply = <&reg_3p3v>;
138		VDDIO-supply = <&reg_3p3v>;
139		clocks = <&clks 150>;
140	};
141};
142
143&kpp {
144	pinctrl-names = "default";
145	pinctrl-0 = <&pinctrl_kpp_1>;
146	linux,keymap = <
147			0x0203003b	/* KEY_F1 */
148			0x0603003c	/* KEY_F2 */
149			0x0207003d	/* KEY_F3 */
150			0x0607003e	/* KEY_F4 */
151			>;
152	keypad,num-rows = <8>;
153	keypad,num-columns = <1>;
154	status = "okay";
155};
156
157&ssi2 {
158	status = "okay";
159};