mbox series

[v10,00/15] Add Allwinner H3/H5/H6/A64 HDMI audio

Message ID 20201030144648.397824-1-peron.clem@gmail.com (mailing list archive)
Headers show
Series Add Allwinner H3/H5/H6/A64 HDMI audio | expand

Message

Clément Péron Oct. 30, 2020, 2:46 p.m. UTC
Hi,

This series add H6 I2S support and the I2S node missing to support
HDMI audio in different Allwinner SoC.

As we first use some TDM property to make the I2S working with the
simple soundcard. We have now drop this simple sound card and a
proper dedicated soundcard will be introduce later.

This make the title of this series wrong now but to be able to
follow the previous release I keep the same name.

Regards,
Clement

Change since v9:
- fix lrck_period computation for I2S justified mode

Change since v8:
- move the comment near the function prototype
- collect Maxime Ripard tags

Change since v7:
- rebase on next-20201026
- comment about slots and slot_width

Change since v6:
- move set_channel_cfg() in first position
- convert return value to decimal

Change since v5:
- Drop HDMI simple soundcard
- Collect Chen-Yu Tsai tags
- Configure channels from 9 to 15.
- Remove DMA RX for H3/H5
- Fix Documentation for H3/H5

Change since v4:
- add more comment on get_wss() and set_channel_cfg() patch
- merge soundcard and DAI HDMI patches

Change since v3:
- add Samuel Holland patch to reconfigure FIFO_TX_REG when suspend is enabled
- readd inversion to H6 LRCK sun50i_h6_i2s_set_soc_fmt()
- Fix get_wss() for sun4i
- Add a commit to fix checkpatch warning

Change since v2:
- rebase on next-20200918
- drop revert LRCK polarity patch
- readd simple-audio-card,frame-inversion in dts
- Add patch for changing set_chan_cfg params

Change since v1:
- rebase on next-20200828
- add revert LRCK polarity
- remove all simple-audio-card,frame-inversion in dts
- add Ondrej patches for Orange Pi board
- Add arm64 defconfig patch

Clément Péron (7):
  ASoC: sun4i-i2s: Fix lrck_period computation for I2S justified mode
  ASoC: sun4i-i2s: Change set_chan_cfg() params
  ASoC: sun4i-i2s: Change get_sr() and get_wss() to be more explicit
  ASoC: sun4i-i2s: Fix sun8i volatile regs
  ASoC: sun4i-i2s: fix coding-style for callback definition
  arm64: defconfig: Enable Allwinner i2s driver
  dt-bindings: sound: sun4i-i2s: Document H3 with missing RX channel
    possibility

Jernej Skrabec (3):
  ASoC: sun4i-i2s: Add support for H6 I2S
  dt-bindings: ASoC: sun4i-i2s: Add H6 compatible
  arm64: dts: allwinner: h6: Add I2S1 node

Marcus Cooper (4):
  ASoC: sun4i-i2s: Set sign extend sample
  ASoC: sun4i-i2s: Add 20 and 24 bit support
  arm64: dts: allwinner: a64: Add I2S2 node
  arm: dts: sunxi: h3/h5: Add I2S2 node

Samuel Holland (1):
  ASoC: sun4i-i2s: Fix setting of FIFO modes

 .../sound/allwinner,sun4i-a10-i2s.yaml        |   6 +-
 arch/arm/boot/dts/sunxi-h3-h5.dtsi            |  13 +
 arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi |  14 +
 arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi  |  13 +
 arch/arm64/configs/defconfig                  |   1 +
 sound/soc/sunxi/sun4i-i2s.c                   | 388 +++++++++++++++---
 6 files changed, 378 insertions(+), 57 deletions(-)

Comments

Mark Brown Oct. 30, 2020, 7:41 p.m. UTC | #1
On Fri, 30 Oct 2020 15:46:33 +0100, Clément Péron wrote:
> This series add H6 I2S support and the I2S node missing to support
> HDMI audio in different Allwinner SoC.
> 
> As we first use some TDM property to make the I2S working with the
> simple soundcard. We have now drop this simple sound card and a
> proper dedicated soundcard will be introduce later.
> 
> [...]

Applied to

   https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next

Thanks!

[01/11] ASoC: sun4i-i2s: Fix lrck_period computation for I2S justified mode
        commit: 93c0210671d8f3ec2262da703fab93a1497158a8
[02/11] ASoC: sun4i-i2s: Change set_chan_cfg() params
        commit: c779e2de0ac6156bea63e759481ee383587336cc
[03/11] ASoC: sun4i-i2s: Add support for H6 I2S
        commit: 73adf87b7a5882408b0a17da59e69df4be12a968
[04/11] ASoC: sun4i-i2s: Change get_sr() and get_wss() to be more explicit
        commit: 9c2d255f0e63f8e54bd8345f9c59c4060cf4bbd4
[05/11] ASoC: sun4i-i2s: Set sign extend sample
        commit: d8659dd9a13ce7a92c017c352aea1c390f300937
[06/11] ASoC: sun4i-i2s: Add 20 and 24 bit support
        commit: 6ad7ca6297f8679162ee62ed672b603e8d004146
[07/11] ASoC: sun4i-i2s: Fix sun8i volatile regs
        commit: 64359246abe4421ad409be5b0bc9a534caa18b7d
[08/11] ASoC: sun4i-i2s: Fix setting of FIFO modes
        commit: 38d7adc0a003298013786cfffe5f4cc907009d30
[09/11] ASoC: sun4i-i2s: fix coding-style for callback definition
        commit: 08c7b7d546fddce76d500e5e5767aa08836f7cae
[10/11] ASoC: sun4i-i2s: Add H6 compatible
        commit: e84f44ba4604e55a51e7caf01464f220d0eabef4
[11/11] ASoC: sun4i-i2s: Document H3 with missing RX channel possibility
        commit: 0bc1bf241de551842535c3d0b080e0f38c11aed1

All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent to Linus during
the next merge window (or sooner if it is a bug fix), however if
problems are discovered then the patch may be dropped or reverted.

You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.

If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.

Please add any relevant lists and maintainers to the CCs when replying
to this mail.

Thanks,
Mark
Jernej Škrabec Oct. 30, 2020, 8:59 p.m. UTC | #2
Dne petek, 30. oktober 2020 ob 21:50:43 CET je Stefan Monnier napisal(a):
> >> This series add H6 I2S support and the I2S node missing to support
> >> HDMI audio in different Allwinner SoC.
> > 
> > Applied to
> > 
> >    https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git
> >    for-next
> 
> Yay!

Note that this doesn't bring HDMI audio card just yet. Another driver will be 
needed for that.

> 
> Now, I wonder: will that make it easier to add support for HDMI-Audio for
> the A10/A20?

No, A10/A20 HDMI audio uses completely different interface.

> 
> (there was a patch for that submitted earlier this year by Stefan
> Mavrodiev <stefan@olimex.com>, but it seems there hasn't been any
> progress on it since then (I think the last message on it concluded that
> it should be rewritten to use ALSA instead of ASoC)).

IIUC original author left Olimex, so work stalled.

Best regards,
Jernej

> 
> [ To clarify, don't know what's the difference between ALSA and ASoC;
>   I'm only interested here as an owner of an A20 box on which I'd
>   love to be able to use the HDMI-Audio.  ]
> 
> 
> -- Stefan
Maxime Ripard Nov. 2, 2020, 2:10 p.m. UTC | #3
On Fri, Oct 30, 2020 at 07:41:21PM +0000, Mark Brown wrote:
> On Fri, 30 Oct 2020 15:46:33 +0100, Clément Péron wrote:
> > This series add H6 I2S support and the I2S node missing to support
> > HDMI audio in different Allwinner SoC.
> > 
> > As we first use some TDM property to make the I2S working with the
> > simple soundcard. We have now drop this simple sound card and a
> > proper dedicated soundcard will be introduce later.
> > 
> > [...]
> 
> Applied to
> 
>    https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next
> 
> Thanks!
> 
> [01/11] ASoC: sun4i-i2s: Fix lrck_period computation for I2S justified mode
>         commit: 93c0210671d8f3ec2262da703fab93a1497158a8
> [02/11] ASoC: sun4i-i2s: Change set_chan_cfg() params
>         commit: c779e2de0ac6156bea63e759481ee383587336cc
> [03/11] ASoC: sun4i-i2s: Add support for H6 I2S
>         commit: 73adf87b7a5882408b0a17da59e69df4be12a968
> [04/11] ASoC: sun4i-i2s: Change get_sr() and get_wss() to be more explicit
>         commit: 9c2d255f0e63f8e54bd8345f9c59c4060cf4bbd4
> [05/11] ASoC: sun4i-i2s: Set sign extend sample
>         commit: d8659dd9a13ce7a92c017c352aea1c390f300937
> [06/11] ASoC: sun4i-i2s: Add 20 and 24 bit support
>         commit: 6ad7ca6297f8679162ee62ed672b603e8d004146
> [07/11] ASoC: sun4i-i2s: Fix sun8i volatile regs
>         commit: 64359246abe4421ad409be5b0bc9a534caa18b7d
> [08/11] ASoC: sun4i-i2s: Fix setting of FIFO modes
>         commit: 38d7adc0a003298013786cfffe5f4cc907009d30
> [09/11] ASoC: sun4i-i2s: fix coding-style for callback definition
>         commit: 08c7b7d546fddce76d500e5e5767aa08836f7cae
> [10/11] ASoC: sun4i-i2s: Add H6 compatible
>         commit: e84f44ba4604e55a51e7caf01464f220d0eabef4
> [11/11] ASoC: sun4i-i2s: Document H3 with missing RX channel possibility
>         commit: 0bc1bf241de551842535c3d0b080e0f38c11aed1

Applied the rest, thanks!
Maxime