linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: flatmax@flatmax.org (Matt Flax)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 1/3] ASoC : Add an IC bit and frame master mode (SoC and Codec slave).
Date: Sat, 25 Feb 2017 16:03:12 +1100	[thread overview]
Message-ID: <057bbc69c3dcbb5199782ae6fe44d73862b8a1d1.1487997974.git.flatmax@flatmax.org> (raw)
In-Reply-To: <cover.1487997974.git.flatmax@flatmax.org>

This patch adds a new clock mode to the SoC system. The new mode
allows for an IC (between the SoC and the Codec) to be bit and
frame master.

As SoC and codec drivers default to return -EINVAL, this new mode
can not set either as master.

Signed-off-by: Matt Flax <flatmax@flatmax.org>
---
 include/sound/soc-dai.h | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/include/sound/soc-dai.h b/include/sound/soc-dai.h
index 200e1f0..22f516f 100644
--- a/include/sound/soc-dai.h
+++ b/include/sound/soc-dai.h
@@ -77,14 +77,17 @@ struct snd_compr_stream;
 /*
  * DAI hardware clock masters.
  *
- * This is wrt the codec, the inverse is true for the interface
- * i.e. if the codec is clk and FRM master then the interface is
- * clk and frame slave.
+ * SND_SOC_DAIFMT_C* definitions are wrt the codec, the inverse is true
+ * for the interface. i.e. if the codec is clk and FRM master then the
+ * interface is clk and frame slave.
+ * The SND_SOC_DAIFMT_IBM_IFM indicates that an IC inbetween the codec and SoC
+ * is master. In SND_SOC_DAIFMT_IBM_IFM mode both the codec and SoC are slaves.
  */
 #define SND_SOC_DAIFMT_CBM_CFM		(1 << 12) /* codec clk & FRM master */
 #define SND_SOC_DAIFMT_CBS_CFM		(2 << 12) /* codec clk slave & FRM master */
 #define SND_SOC_DAIFMT_CBM_CFS		(3 << 12) /* codec clk master & frame slave */
 #define SND_SOC_DAIFMT_CBS_CFS		(4 << 12) /* codec clk & FRM slave */
+#define SND_SOC_DAIFMT_IBM_IFM		(5 << 12) /* IC clk & FRM master */
 
 #define SND_SOC_DAIFMT_FORMAT_MASK	0x000f
 #define SND_SOC_DAIFMT_CLOCK_MASK	0x00f0
-- 
2.7.4

  reply	other threads:[~2017-02-25  5:03 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-02-25  5:03 [PATCH 0/3] ASoC: Enable a new IC master mode: bcm2835<=>IC<=>cs42xx8 Matt Flax
2017-02-25  5:03 ` Matt Flax [this message]
2017-03-15 19:02   ` [PATCH 1/3] ASoC : Add an IC bit and frame master mode (SoC and Codec slave) Mark Brown
2017-02-25  5:03 ` [PATCH 2/3] ASoC: cs42xx8: allow IC master mode Matt Flax
2017-02-25  5:03 ` [PATCH 3/3] ASoC: bcm2835: Add mutichannel mode in DSP and IC master modes Matt Flax
2017-02-25 13:39 ` [PATCH 0/3] ASoC: Enable a new IC master mode: bcm2835<=>IC<=>cs42xx8 Matthias Reichl
2017-02-25 22:13   ` [alsa-devel] " Matt Flax
2017-02-26 14:49     ` Matthias Reichl
2017-02-26 20:21       ` Matt Flax
2017-02-26 22:16         ` Matthias Reichl
2017-02-26 22:35           ` Matt Flax
2017-02-27  8:04             ` Matthias Reichl
2017-02-27 10:08               ` Matt Flax
2017-02-27 10:30                 ` Matthias Reichl
2017-02-27 11:21                   ` Matt Flax
2017-02-27 11:51                     ` Matthias Reichl
2017-02-28  9:59                       ` Charles Keepax
2017-03-15 19:01                         ` Mark Brown
2017-03-16 20:51                           ` Matt Flax
2017-03-16 21:27                             ` Lars-Peter Clausen
2017-03-16 22:14                               ` Matt Flax
2017-03-21 21:21                                 ` Emmanuel Fusté
2017-03-21 22:11                                   ` Matthias Reichl
2017-03-21 23:29                                     ` Matt Flax
2017-03-22  9:43                                       ` Charles Keepax
2017-03-22 12:04                                         ` Matt Flax
2017-03-22 12:34                                           ` Charles Keepax
2017-03-22 15:38                                           ` Stephen Warren
2017-03-24 19:11                                             ` Mark Brown
2017-03-24 19:09                                           ` Mark Brown
2017-03-25  5:45                                             ` Matt Flax
2017-03-27 10:01                                               ` Mark Brown
2017-03-27 10:35                                                 ` Matt Flax
2017-03-27 11:30                                                   ` Mark Brown
2017-03-26 19:02                                     ` Emmanuel Fusté
2017-02-28 10:10         ` Charles Keepax
2017-02-26 20:41       ` Emmanuel Fusté
2017-02-27  9:14         ` Matthias Reichl
2017-02-27 19:12           ` Emmanuel Fusté

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=057bbc69c3dcbb5199782ae6fe44d73862b8a1d1.1487997974.git.flatmax@flatmax.org \
    --to=flatmax@flatmax.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).