Skip to content

Commit d91e9bd

Browse files
Joakim Zhangtiwai
authored andcommitted
ALSA: hda: add CIX IPBLOQ HDA controller support
Add CIX IPBLOQ HDA controller support, which is integrated into CIX SKY1 audio subsystem. HDA controller supports 64bit, but the audio subsystem can only 32bit transaction. Use jack polling mode as there is a hardware issue, lead to interrupt strom if the RIRB interrupt enabled. Host and hdac has different view of memory, so need do dma address translation. Signed-off-by: Joakim Zhang <joakim.zhang@cixtech.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Link: https://patch.msgid.link/20251205154621.3019640-4-joakim.zhang@cixtech.com
1 parent a4f2fa5 commit d91e9bd

3 files changed

Lines changed: 452 additions & 0 deletions

File tree

sound/hda/controllers/Kconfig

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,20 @@ config SND_HDA_TEGRA
3030
To compile this driver as a module, choose M here: the module
3131
will be called snd-hda-tegra.
3232

33+
config SND_HDA_CIX_IPBLOQ
34+
tristate "CIX IPBLOQ HD Audio"
35+
depends on ARCH_CIX || COMPILE_TEST
36+
select SND_HDA
37+
select SND_HDA_ALIGNED_MMIO
38+
help
39+
Say Y here to support the HDA controller present in CIX SoCs
40+
41+
This options enables support for the HD Audio controller
42+
present in some CIX SoCs.
43+
44+
To compile this driver as a module, choose M here: the module
45+
will be called snd-hda-cix-ipbloq.
46+
3347
config SND_HDA_ACPI
3448
tristate "HD Audio ACPI"
3549
depends on ACPI

sound/hda/controllers/Makefile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
# SPDX-License-Identifier: GPL-2.0
22
snd-hda-intel-y := intel.o
33
snd-hda-tegra-y := tegra.o
4+
snd-hda-cix-ipbloq-y := cix-ipbloq.o
45
snd-hda-acpi-y := acpi.o
56

67
subdir-ccflags-y += -I$(src)/../common
@@ -10,4 +11,5 @@ CFLAGS_intel.o := -I$(src)
1011

1112
obj-$(CONFIG_SND_HDA_INTEL) += snd-hda-intel.o
1213
obj-$(CONFIG_SND_HDA_TEGRA) += snd-hda-tegra.o
14+
obj-$(CONFIG_SND_HDA_CIX_IPBLOQ) += snd-hda-cix-ipbloq.o
1315
obj-$(CONFIG_SND_HDA_ACPI) += snd-hda-acpi.o

0 commit comments

Comments
 (0)