xref: /freebsd/sys/contrib/device-tree/src/arm64/freescale/imx8mm-verdin-dev.dtsi (revision e32fecd0c2c3ee37c47ee100f169e7eb0282a873)
1// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2/*
3 * Copyright 2022 Toradex
4 */
5
6#include "imx8mm-verdin-dahlia.dtsi"
7
8/ {
9	sound_card: sound-card {
10		compatible = "simple-audio-card";
11		simple-audio-card,bitclock-master = <&dailink_master>;
12		simple-audio-card,format = "i2s";
13		simple-audio-card,frame-master = <&dailink_master>;
14		simple-audio-card,name = "imx8mm-nau8822";
15		simple-audio-card,routing =
16			"Headphones", "LHP",
17			"Headphones", "RHP",
18			"Speaker", "LSPK",
19			"Speaker", "RSPK",
20			"Line Out", "AUXOUT1",
21			"Line Out", "AUXOUT2",
22			"LAUX", "Line In",
23			"RAUX", "Line In",
24			"LMICP", "Mic In",
25			"RMICP", "Mic In";
26		simple-audio-card,widgets =
27			"Headphones", "Headphones",
28			"Line Out", "Line Out",
29			"Speaker", "Speaker",
30			"Microphone", "Mic In",
31			"Line", "Line In";
32
33		dailink_master: simple-audio-card,codec {
34			clocks = <&clk IMX8MM_CLK_SAI2_ROOT>;
35			sound-dai = <&nau8822_1a>;
36		};
37
38		simple-audio-card,cpu {
39			sound-dai = <&sai2>;
40		};
41	};
42};
43
44&gpio_expander_21 {
45	status = "okay";
46};
47
48/* Verdin I2C_1 */
49&i2c4 {
50	/* Audio Codec */
51	nau8822_1a: audio-codec@1a {
52		compatible = "nuvoton,nau8822";
53		reg = <0x1a>;
54	};
55};
56
57/* Verdin UART_1, connector X50 through RS485 transceiver */
58&uart2 {
59	linux,rs485-enabled-at-boot-time;
60	rs485-rts-active-low;
61	rs485-rx-during-tx;
62};
63
64/* Limit frequency on dev board due to long traces and bad signal integrity */
65&usdhc2 {
66	max-frequency = <100000000>;
67};
68