[PATCH v2 0/4] Add SPDIF support for Allwinner SoCs

From: codekipper
Date: Wed Sep 30 2015 - 13:51:08 EST

From: Marcus Cooper <codekipper@xxxxxxxxx>

This patch set adds support for the Allwinner SPDIF transceiver as present
on the A10, A20 and A31 SoC boards.

For now just the SPDIF transmitter has been tested on a Mele A2000.

In order for this patch set to be functional we require audio clock patches
which will be delivered separately. For those that are interested I've pushed
the patches here with all the required changes to get SPDIF audio out of the


This is version 2 of the patch series. After Mark's initial comments I realised
that I shouldn't of blindly copied the register set-up from the original SDK
that was released. It doesn't help also that the datasheet that finally emerged
lacked a serious amount of detail. If anybody does recognise the IP used for the
block then please speak out.

In short, much of the code that was in the first release is no longer here.

I'm still unsure about the machine driver setup. Simple card seems a bit overkill
and what I've added is pretty much a copy of what is done in imx-spdif. I'm not
planning on arguing the case for my method so if you can advise then I'm all

Thanks in advance,

Changes since v1:
- Moved sunxi-machine-spdif.c to seperate patch
- replaced sunxi in naming scheme with sun4i in the sun4i-spdif driver.
- split tx controller into seperate enable/disable functions
- moved setclk and setfmt functionality into hw params
- added support for mono signals.
- cleaned up probe clock set up.
- removed all writes to transmit status registers.
- removed of_id
- removed power management code.
- Added support for more rates.
Marcus Cooper (4):
dt-bindings: add sunxi SPDIF transceiver bindings
dt-binding: Add sunxi S/PDIF machine driver
ASoC: sunxi: Add S/PDIF machine driver.
ASOC: sunxi: Add support for the spdif block

.../devicetree/bindings/sound/sunxi,spdif.txt | 49 ++
.../bindings/sound/sunxi-audio-spdif.txt | 36 ++
sound/soc/sunxi/Kconfig | 12 +
sound/soc/sunxi/Makefile | 4 +
sound/soc/sunxi/sun4i-spdif.c | 612 +++++++++++++++++++++
sound/soc/sunxi/sunxi-machine-spdif.c | 108 ++++
6 files changed, 821 insertions(+)
create mode 100644 Documentation/devicetree/bindings/sound/sunxi,spdif.txt
create mode 100644 Documentation/devicetree/bindings/sound/sunxi-audio-spdif.txt
create mode 100644 sound/soc/sunxi/sun4i-spdif.c
create mode 100644 sound/soc/sunxi/sunxi-machine-spdif.c


To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/