All of lore.kernel.org
 help / color / mirror / Atom feed
From: Arnaud Pouliquen <arnaud.pouliquen@st.com>
To: alsa-devel@alsa-project.org
Cc: broonie@kernel.org, arnaud.pouliquen@st.com, lgirdwood@gmail.com
Subject: [PATCH 0/7] asoc: Add audio for sti platforms
Date: Tue, 14 Apr 2015 15:35:24 +0200	[thread overview]
Message-ID: <1429018531-29025-1-git-send-email-arnaud.pouliquen@st.com> (raw)

version 1:
	- First patches submission

Set of patches concerns the audio part of the STi platform

Hardware is split in two main blocks:
Unipheriperal IPs and codec IPs

Uniperipheral IPs:
Ips in charge of the I2S buses
Uniperipheral IPs are in charge the PCM rendering/capturing on/from I2S.
- 4 uniperipheral player IPs receive the PCM audio data or audio encoded
bit stream data from the memory (via FDMA)and performs optional IEC-60958 or
IEC-61937 formatting on the audio data and sends them out on the I2S output.
- 2 uniperipheral reader IPS receive the PCM audio or encoded bit stream on
the I2S input interface and writes the processed data in memory (via FDMA)

Codec IPs:
- HDMI_TX: format and generate HDMI signal.
- SPDIF: format and generate biphase signal for SPDIF output
- DAC: format and generate stereo analogic signal
- HDMI_RX: receive HDMI signal from external source.

In addition 2 I2S/TDM interfaces are available to connect external ICs
- PCM_IN to external capture codec (ADC, BT...)
- PCM_OUT for external player codec (DAC, BT..)

On Sti platform audio driver is splitted in 2 part to support Hw architecture
- sti_audio_platform for uniperipheral IPs mmannagement
- sti-sas codec for codec IP management

	+-----------------------+        +-----------------+
	|   +-----------------+ |        |                 |
	|   |    +---------+  | |        | +---------+     |
	|   |    |Uniperif |  | |        | |  HDMI   |     | +---+
	|   |    |player 0 +--------------->   TX    +------->   |
	|   |    +---------+  | |        | +---------+     | +---+
	|   |    +---------+  | |        |                 |
	|   |    |Uniperif |  | |        |                 | +---+
	|   |    |player 1 +--------------------------------->   |
	|   |    +---------+  | |        |                 | +---+
	|   |    +---------+  | |        | +---------+     | +---+
	|   |    |Uniperif |  | |        | |   DAC   |     | |   |
	|   |    |player 2 +--------------->         +------^----+
	|   |    +---------+  | |        | +---------+     |
	|   |    +---------+  | |        | +---------+     |
	|   |    |Uniperif |  | |        | |  SPDIF  |     | +---+
	|   |    |player 3 +--------------->         +------->   |
	|   |    +---------+  | |        | +---------+     | +---+
	|   |    +---------+  | |        |                 |
	|   |    |Uniperif |  | |        |                 | +---+
	|   |    |reader 0 <---------------------------------+   |
	|   |    +---------+  | |        |                 | +---+
	|   |    +---------+  | |        | +---------+     |
	|   |    |Uniperif |  | |        | |  HDMIF  |     | +---+
	|   |    |reader 1 <---------------+   RX    <-------+   |
	|   |    +---------+  | |        | +---------+     | +---+
	|   |                 | |        |                 |
	|   |     CPU DAI     | |        |                 |
	|   +-----------------+ |        |                 |
	|     STI platform      |        |    SAS CODEC    |
	+-----------------------+        +-----------------+

In the first version of the driver only SPDIF and DAC are supported.
in future HDMI TX, HDMI_RX and support for TDM mode should be added.

Arnaud Pouliquen (7):
  ASoC: sti: add binding for ASoc driver
  Asoc: sti: add uniperipheral header file
  Asoc: sti: add CPU DAI driver for playback
  Asoc: sti: add CPU DAI driver for capture
  Asoc: sti: Add platform driver
  ASoc: Add ability to build sti drivers
  ASoc: Codec: add sti platform codec

 .../devicetree/bindings/sound/st,sti-asoc-card.txt |  176 +++
 sound/soc/Kconfig                                  |    1 +
 sound/soc/Makefile                                 |    1 +
 sound/soc/codecs/Kconfig                           |    4 +
 sound/soc/codecs/Makefile                          |    2 +
 sound/soc/codecs/sti-sas.c                         |  663 ++++++++++
 sound/soc/sti/Kconfig                              |   17 +
 sound/soc/sti/Makefile                             |    5 +
 sound/soc/sti/sti_platform.c                       |  643 +++++++++
 sound/soc/sti/uniperif.h                           | 1236 ++++++++++++++++++
 sound/soc/sti/uniperif_player.c                    | 1367 ++++++++++++++++++++
 sound/soc/sti/uniperif_reader.c                    |  493 +++++++
 12 files changed, 4608 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/sound/st,sti-asoc-card.txt
 create mode 100644 sound/soc/codecs/sti-sas.c
 create mode 100644 sound/soc/sti/Kconfig
 create mode 100644 sound/soc/sti/Makefile
 create mode 100644 sound/soc/sti/sti_platform.c
 create mode 100644 sound/soc/sti/uniperif.h
 create mode 100644 sound/soc/sti/uniperif_player.c
 create mode 100644 sound/soc/sti/uniperif_reader.c

-- 
1.9.1

             reply	other threads:[~2015-04-14 13:37 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-04-14 13:35 Arnaud Pouliquen [this message]
2015-04-14 13:35 ` [PATCH 1/7] ASoC: sti: add binding for ASoc driver Arnaud Pouliquen
2015-04-18 13:12   ` Mark Brown
2015-04-14 13:35 ` [PATCH 2/7] Asoc: sti: add uniperipheral header file Arnaud Pouliquen
2015-07-10 18:08   ` Applied "ASoC: sti: Add uniperipheral header file" to the asoc tree Mark Brown
2015-04-14 13:35 ` [PATCH 3/7] Asoc: sti: add CPU DAI driver for playback Arnaud Pouliquen
2015-04-24 18:15   ` Mark Brown
2015-04-27 13:58     ` Arnaud Pouliquen
2015-04-27 19:46       ` Mark Brown
2015-04-14 13:35 ` [PATCH 4/7] Asoc: sti: add CPU DAI driver for capture Arnaud Pouliquen
2015-04-24 18:20   ` Mark Brown
2015-04-27 14:53     ` Arnaud Pouliquen
2015-04-27 20:00       ` Mark Brown
2015-04-14 13:35 ` [PATCH 5/7] Asoc: sti: Add platform driver Arnaud Pouliquen
2015-04-14 13:35 ` [PATCH 6/7] ASoc: Add ability to build sti drivers Arnaud Pouliquen
2015-04-14 13:35 ` [PATCH 7/7] ASoc: Codec: add sti platform codec Arnaud Pouliquen
2015-04-18 13:09   ` Mark Brown
2015-04-20  9:13     ` Arnaud Pouliquen
2015-04-20 20:33       ` Mark Brown

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1429018531-29025-1-git-send-email-arnaud.pouliquen@st.com \
    --to=arnaud.pouliquen@st.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=broonie@kernel.org \
    --cc=lgirdwood@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.