1 From e2516e3a7d2244f74c3267be8bdc143448c278be Mon Sep 17 00:00:00 2001
2 From: Matt Flax <flatmax@flatmax.org>
3 Date: Tue, 28 Aug 2018 18:42:13 +1000
4 Subject: [PATCH 163/806] Add support for audioinjector.net ultra soundcard.
7 Uses the simple-audio-card ALSA machine driver. Sets up the machine
8 driver in the device tree overlay file. The overlays/Makefile is
9 altered to add the audioinjector-ultra.dtbo dtb overlay.
11 Adds CONFIG_SND_SOC_CS4265 to the defconfig files.
13 Signed-off-by: Matt Flax <flatmax@flatmax.org>
15 arch/arm/boot/dts/overlays/Makefile | 1 +
16 arch/arm/boot/dts/overlays/README | 6 ++
17 .../overlays/audioinjector-ultra-overlay.dts | 71 +++++++++++++++++++
18 arch/arm/configs/bcm2709_defconfig | 1 +
19 arch/arm/configs/bcmrpi_defconfig | 1 +
20 5 files changed, 80 insertions(+)
21 create mode 100644 arch/arm/boot/dts/overlays/audioinjector-ultra-overlay.dts
23 --- a/arch/arm/boot/dts/overlays/Makefile
24 +++ b/arch/arm/boot/dts/overlays/Makefile
25 @@ -15,6 +15,7 @@ dtbo-$(CONFIG_ARCH_BCM2835) += \
28 audioinjector-addons.dtbo \
29 + audioinjector-ultra.dtbo \
30 audioinjector-wm8731-audio.dtbo \
33 --- a/arch/arm/boot/dts/overlays/README
34 +++ b/arch/arm/boot/dts/overlays/README
35 @@ -389,6 +389,12 @@ Params: non-stop-clocks Keeps th
36 is paused or stopped (default off)
39 +Name: audioinjector-ultra
40 +Info: Configures the audioinjector.net ultra soundcard
41 +Load: dtoverlay=audioinjector-ultra
45 Name: audioinjector-wm8731-audio
46 Info: Configures the audioinjector.net audio add on soundcard
47 Load: dtoverlay=audioinjector-wm8731-audio
49 +++ b/arch/arm/boot/dts/overlays/audioinjector-ultra-overlay.dts
51 +// Definitions for audioinjector.net audio add on soundcard
56 + compatible = "brcm,bcm2708";
68 + #address-cells = <1>;
73 + #sound-dai-cells = <0>;
74 + compatible = "cirrus,cs4265";
76 + reset-gpios = <&gpio 5 0>;
85 + compatible = "simple-audio-card";
86 + i2s-controller = <&i2s>;
89 + simple-audio-card,name = "audioinjector-ultra";
91 + simple-audio-card,widgets =
95 + simple-audio-card,routing =
96 + "OUTPUTS","LINEOUTL",
97 + "OUTPUTS","LINEOUTR",
98 + "OUTPUTS","SPDIFOUT",
100 + "LINEINR","INPUTS",
104 + simple-audio-card,format = "i2s";
106 + simple-audio-card,bitclock-master = <&sound_master>;
107 + simple-audio-card,frame-master = <&sound_master>;
109 + simple-audio-card,cpu {
110 + sound-dai = <&i2s>;
111 + dai-tdm-slot-num = <2>;
112 + dai-tdm-slot-width = <32>;
115 + sound_master: simple-audio-card,codec {
116 + sound-dai = <&cs4265>;
117 + system-clock-frequency = <12288000>;
122 --- a/arch/arm/configs/bcm2709_defconfig
123 +++ b/arch/arm/configs/bcm2709_defconfig
124 @@ -926,6 +926,7 @@ CONFIG_SND_SOC_AK4554=m
125 CONFIG_SND_SOC_CS4271_I2C=m
126 CONFIG_SND_SOC_SPDIF=m
127 CONFIG_SND_SOC_WM8804_I2C=m
128 +CONFIG_SND_SOC_CS4265=m
129 CONFIG_SND_SIMPLE_CARD=m
130 CONFIG_HID_BATTERY_STRENGTH=y
132 --- a/arch/arm/configs/bcmrpi_defconfig
133 +++ b/arch/arm/configs/bcmrpi_defconfig
134 @@ -919,6 +919,7 @@ CONFIG_SND_SOC_AK4554=m
135 CONFIG_SND_SOC_CS4271_I2C=m
136 CONFIG_SND_SOC_SPDIF=m
137 CONFIG_SND_SOC_WM8804_I2C=m
138 +CONFIG_SND_SOC_CS4265=m
139 CONFIG_SND_SIMPLE_CARD=m
140 CONFIG_HID_BATTERY_STRENGTH=y