Skip to content

Commit e600153

Browse files
authored
Merge pull request #37 from hogliux/support-for-audioinjector-octo
Add support for Audio Injector Octo multichannel audio HAT
2 parents 1a0fdaf + 0c0ac6d commit e600153

File tree

8 files changed

+455
-17
lines changed

8 files changed

+455
-17
lines changed

arch/arm/boot/dts/overlays/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ dtbo-$(CONFIG_ARCH_ROCKCHIP) += \
2424
mcp2515-can0.dtbo \
2525
googlevoicehat-soundcard.dtbo \
2626
ads7846-tinker.dtbo \
27+
audioinjector-addons.dtbo \
2728
camera-ov5647.dtbo
2829

2930
targets += dtbs dtbs_install
Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
// Definitions for audioinjector.net audio add on soundcard
2+
/dts-v1/;
3+
/plugin/;
4+
5+
#include <dt-bindings/pinctrl/rockchip.h>
6+
7+
/ {
8+
compatible = "rockchip,rk3288-miniarm", "rockchip,rk3288";
9+
10+
fragment@0 {
11+
target = <&i2s>;
12+
__overlay__ {
13+
status = "okay";
14+
rockchip,bcm2835_compatibility_mode = <1>;
15+
};
16+
};
17+
18+
fragment@1 {
19+
target = <&i2c1>;
20+
__overlay__ {
21+
#address-cells = <1>;
22+
#size-cells = <0>;
23+
status = "okay";
24+
25+
cs42448: cs42448@48 {
26+
#sound-dai-cells = <0>;
27+
compatible = "cirrus,cs42448";
28+
reg = <0x48>;
29+
clocks = <&cs42448_mclk>;
30+
clock-names = "mclk";
31+
status = "okay";
32+
};
33+
34+
cs42448_mclk: codec-mclk {
35+
compatible = "fixed-clock";
36+
#clock-cells = <0>;
37+
clock-frequency = <49152000>;
38+
};
39+
};
40+
};
41+
42+
fragment@2 {
43+
target-path = "/sound-ext-card";
44+
snd: __overlay__ {
45+
compatible = "ai,audioinjector-octo-soundcard";
46+
mult-gpios = <&gpio5 RK_PB6 0>, <&gpio5 RK_PB7 0>, <&gpio5 RK_PB2 0>,
47+
<&gpio5 RK_PB3 0>;
48+
reset-gpios = <&gpio5 RK_PB5 0>;
49+
i2s-controller = <&i2s>;
50+
codec = <&cs42448>;
51+
status = "okay";
52+
};
53+
};
54+
55+
fragment@3 {
56+
target-path = "/sound-simple-card";
57+
__overlay__ {
58+
status = "disabled";
59+
};
60+
};
61+
62+
fragment@4 {
63+
target = <&hdmi>;
64+
__overlay__ {
65+
hdmi-i2s-audio-disable;
66+
};
67+
};
68+
69+
__overrides__ {
70+
non-stop-clocks = <&snd>, "non-stop-clocks?";
71+
};
72+
};

arch/arm/configs/miniarm-rk3288_defconfig

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -615,6 +615,8 @@ CONFIG_SND_SOC_ROCKCHIP_MAX98090=y
615615
CONFIG_SND_SOC_ROCKCHIP_RT5645=y
616616
CONFIG_SND_SOC_CX20810=y
617617
CONFIG_SND_SOC_RT5616=y
618+
CONFIG_SND_SOC_CS42XX8=m
619+
CONFIG_SND_SOC_CS42XX8_I2C=m
618620
CONFIG_SND_SOC_RT5640=y
619621
CONFIG_SND_SOC_SEEEDVOICEHAT_CARD=y
620622
CONFIG_SND_SOC_SPDIF=y
@@ -895,3 +897,4 @@ CONFIG_CAN_DEV=y
895897
CONFIG_CAN_MCP251X=y
896898
CONFIG_SND_SOC_GOOGLEVOICEHAT_CARD=y
897899
CONFIG_OVERLAY_FS=y
900+
CONFIG_SND_AUDIOINJECTOR_OCTO_SOUNDCARD=m

sound/soc/bcm/Makefile

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,3 @@
22
snd-soc-bcm2835-i2s-objs := bcm2835-i2s.o
33

44
obj-$(CONFIG_SND_BCM2835_SOC_I2S) += snd-soc-bcm2835-i2s.o
5-

sound/soc/rockchip/Kconfig

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -201,3 +201,10 @@ config SND_SOC_SEEEDVOICEHAT_CARD
201201
tristate "Support for Seeed voice HAT sound card"
202202
help
203203
Say Y or M if you want to add support for Seeed voice sound card.
204+
205+
config SND_AUDIOINJECTOR_OCTO_SOUNDCARD
206+
tristate "Support for audioinjector.net Octo channel (Hat) soundcard"
207+
depends on SND_SOC_ROCKCHIP
208+
select SND_SOC_CS42XX8_I2C
209+
help
210+
Say Y or M if you want to add support for audioinjector.net octo sound card.

sound/soc/rockchip/Makefile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ snd-soc-justboom-dac-objs := justboom-dac.o
4141
snd-soc-justboom-digi-objs := justboom-digi.o
4242
snd-soc-googlevoicehat-soundcard-objs := googlevoicehat-soundcard.o
4343
snd-soc-googlevoicehat-codec-objs := googlevoicehat-codec.o
44+
snd-soc-audioinjector-octo-soundcard-objs := audioinjector-octo-soundcard.o
4445

4546
obj-$(CONFIG_SND_SOC_ROCKCHIP_DA7219) += snd-soc-rockchip-da7219.o
4647
obj-$(CONFIG_SND_SOC_ROCKCHIP_HDMI_ANALOG) += snd-soc-rockchip-hdmi-analog.o
@@ -63,3 +64,4 @@ obj-$(CONFIG_SND_SOC_JUSTBOOM_DIGI) += snd-soc-justboom-digi.o
6364
obj-$(CONFIG_SND_SOC_GOOGLEVOICEHAT_CARD) += snd-soc-googlevoicehat-soundcard.o
6465
obj-$(CONFIG_SND_SOC_GOOGLEVOICEHAT_CARD) += snd-soc-googlevoicehat-codec.o
6566
obj-$(CONFIG_SND_SOC_SEEEDVOICEHAT_CARD) += seeedvoicehat/
67+
obj-$(CONFIG_SND_AUDIOINJECTOR_OCTO_SOUNDCARD) += snd-soc-audioinjector-octo-soundcard.o

0 commit comments

Comments
 (0)