/
rpi-adau1761-overlay.dts
88 lines (80 loc) · 1.79 KB
/
rpi-adau1761-overlay.dts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
// SPDX-License-Identifier: GPL-2.0
/dts-v1/;
/plugin/;
/ {
compatible = "brcm,bcm2835";
fragment@0 {
target = <&clocks>;
__overlay__ {
adau1761_mclk: oscillator {
compatible = "fixed-clock";
status = "okay";
#clock-cells=<0>;
clock-frequency = <12288000>;
clock-output-names = "adau1761_mclk";
};
};
};
fragment@1 {
target = <&i2s>;
__overlay__ {
status = "okay";
};
};
fragment@2 {
target = <&i2c1>;
__overlay__ {
#address-cells = <1>;
#size-cells = <0>;
status = "okay";
adau1761_codec: adau1761-codec@38 {
compatible = "adi,adau1761";
status = "okay";
reg = <0x38>;
#sound-dai-cells = <0>;
clock-names = "mclk";
clocks = <&adau1761_mclk>;
};
};
};
fragment@3 {
target = <&sound>;
sound_overlay: __overlay__ {
compatible = "simple-audio-card";
status = "okay";
simple-audio-card,format = "i2s";
simple-audio-card,name = "EVAL-ADAU1761Z";
simple-audio-card,bitclock-master = <&dailink0_master>;
simple-audio-card,frame-master = <&dailink0_master>;
simple-audio-card,widgets =
"Microphone", "Mic In",
"Headphone", "Headphone Out",
"Line", "Line In",
"Line", "Line Out";
simple-audio-card,routing =
"Line Out", "LOUT",
"Line Out", "ROUT",
"Headphone Out", "LHP",
"Headphone Out", "RHP",
"Mic In", "MICBIAS",
"LINN", "Mic In",
"RINN", "Mic In",
"LINP", "Mic In",
"RINP", "Mic In",
"LAUX", "Line In",
"RAUX", "Line In";
simple-audio-card,cpu {
/* so that bclk is 64x FS */
dai-tdm-slot-num = <2>;
dai-tdm-slot-width = <32>;
sound-dai = <&i2s>;
};
dailink0_master: simple-audio-card,codec {
sound-dai = <&adau1761_codec>;
};
};
};
__overrides__ {
card-name = <&sound_overlay>,"simple-audio-card,name";
};
};