[0/3] ASoC: meson: aiu: add Meson8 SoC family support
mbox series

Message ID 20200220205711.77953-1-martin.blumenstingl@googlemail.com
Headers show
Series
  • ASoC: meson: aiu: add Meson8 SoC family support
Related show

Message

Martin Blumenstingl Feb. 20, 2020, 8:57 p.m. UTC
This series adds support for the AIU audio controller found on the
32-bit Meson8 and Meson8b SoCs (both seem to use the same revision,
but for safety reasons we add two compatible strings).

The only known difference compared to the GX SoCs is the absence of
the I2S divider in the AIU_CLK_CTRL_MORE register. Instead we have
to use a less flexible divider.

I2S testing was done on an Odroid-C1+ with a PCM5102A stereo DAC
board connected (on the J7 header) like this:
Odroid-C1+  | DAC
------------------
pin #1 GND  | GND
pin #3 5V   | VIN
pin #4 MCLK | SCK (optional, DAC can operate without this)
pin #5 LRCK | LCK
pin #5 SCK  | BCK
pin #5 DATA | DIN

In 3-wire I2S the MCLK <-> SCK connection can be omitted. For my tests
I used mclk-fs = <64> in this case.
In 4-wire I2S the MCLK <-> SCK connection is required. For my tests I
used mclk-fs = <256> in this case.


Martin Blumenstingl (3):
  ASoC: meson: aiu: Document Meson8 and Meson8b support in the
    dt-bindings
  ASoC: meson: aiu: introduce a struct for platform specific information
  ASoC: meson: aiu: add support for the Meson8 and Meson8b SoC families

 .../bindings/sound/amlogic,aiu.yaml           |  2 +
 sound/soc/meson/Kconfig                       |  2 +-
 sound/soc/meson/aiu-encoder-i2s.c             | 92 ++++++++++++++-----
 sound/soc/meson/aiu.c                         | 28 +++++-
 sound/soc/meson/aiu.h                         |  6 ++
 5 files changed, 104 insertions(+), 26 deletions(-)

Comments

patchwork-bot+linux-amlogic@kernel.org April 16, 2020, 4:08 p.m. UTC | #1
Hello:

This series was applied to khilman/linux-amlogic.git (refs/heads/for-next).

On Thu, 20 Feb 2020 21:57:08 +0100 you wrote:
> This series adds support for the AIU audio controller found on the
> 32-bit Meson8 and Meson8b SoCs (both seem to use the same revision,
> but for safety reasons we add two compatible strings).
> 
> The only known difference compared to the GX SoCs is the absence of
> the I2S divider in the AIU_CLK_CTRL_MORE register. Instead we have
> to use a less flexible divider.
> 
> [...]


Here is a summary with links:
  - [1/3] ASoC: meson: aiu: Document Meson8 and Meson8b support in the dt-bindings
    https://git.kernel.org/khilman/linux-amlogic/c/62209c9ad2ac29431e91392afb0bd6332ae4c33e
  - [2/3] ASoC: meson: aiu: introduce a struct for platform specific information
    https://git.kernel.org/khilman/linux-amlogic/c/edc761805302db6d63916694d0cdb7468864a47a
  - [3/3] ASoC: meson: aiu: add support for the Meson8 and Meson8b SoC families
    https://git.kernel.org/khilman/linux-amlogic/c/3e25c44598aa44134207ad7b3c5ad6b586135777

You are awesome, thank you!