Skip to content

Commit 7976baf

Browse files
povikjannau
authored andcommitted
dmaengine: apple-sio: Add Apple SIO driver
Add a dmaengine driver for the Apple SIO coprocessor found on Apple SoCs where it provides DMA services. Have the driver support cyclic transactions so that ALSA drivers can rely on it in audio output to HDMI and DisplayPort. Signed-off-by: Martin Povišer <povik+lin@cutebit.org>
1 parent 959d890 commit 7976baf

4 files changed

Lines changed: 925 additions & 0 deletions

File tree

MAINTAINERS

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2397,9 +2397,11 @@ M: Martin Povišer <povik+lin@cutebit.org>
23972397
L: asahi@lists.linux.dev
23982398
L: linux-sound@vger.kernel.org
23992399
S: Maintained
2400+
F: Documentation/devicetree/bindings/dma/apple,sio.yaml
24002401
F: Documentation/devicetree/bindings/sound/adi,ssm3515.yaml
24012402
F: Documentation/devicetree/bindings/sound/cirrus,cs42l84.yaml
24022403
F: Documentation/devicetree/bindings/sound/apple,*
2404+
F: drivers/dma/apple-sio.c
24032405
F: sound/soc/apple/*
24042406
F: sound/soc/codecs/cs42l83-i2c.c
24052407
F: sound/soc/codecs/cs42l84.*

drivers/dma/Kconfig

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,16 @@ config APPLE_ADMAC
9292
help
9393
Enable support for Audio DMA Controller found on Apple Silicon SoCs.
9494

95+
config APPLE_SIO
96+
tristate "Apple SIO support"
97+
depends on ARCH_APPLE || COMPILE_TEST
98+
depends on APPLE_RTKIT
99+
depends on OF_ADDRESS
100+
select DMA_ENGINE
101+
help
102+
Enable support for the SIO coprocessor found on Apple Silicon SoCs
103+
where it provides DMA services.
104+
95105
config ARM_DMA350
96106
tristate "Arm DMA-350 support"
97107
depends on ARM || ARM64 || COMPILE_TEST

drivers/dma/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ obj-$(CONFIG_ALTERA_MSGDMA) += altera-msgdma.o
1717
obj-$(CONFIG_AMBA_PL08X) += amba-pl08x.o
1818
obj-$(CONFIG_AMCC_PPC440SPE_ADMA) += ppc4xx/
1919
obj-$(CONFIG_APPLE_ADMAC) += apple-admac.o
20+
obj-$(CONFIG_APPLE_SIO) += apple-sio.o
2021
obj-$(CONFIG_ARM_DMA350) += arm-dma350.o
2122
obj-$(CONFIG_AT_HDMAC) += at_hdmac.o
2223
obj-$(CONFIG_AT_XDMAC) += at_xdmac.o

0 commit comments

Comments
 (0)