[alsa-devel] [RFC PATCH 14/14] ASoC: qcom: document apq8016 machine driver bindings

Kenneth Westfield kwestfie at codeaurora.org
Wed May 6 07:41:13 CEST 2015


On Tue, May 05, 2015 at 12:17:01AM -0700, Srinivas Kandagatla wrote:
> On 03/05/15 01:03, Kenneth Westfield wrote:
> >On Thu, Apr 30, 2015 at 06:18:26PM +0100, Srinivas Kandagatla wrote:
> >>This patch adds bindings for apq8016 machine driver.
> >>On APQ8016 4 MI2S can be configured to different sinks like internal
> >>codec/external codec, this connection is controlled via 2 iomux
> >>registers.
> >>
> >>+sound: sound {
> >>+	compatible = "qcom,apq8016-sndcard";
> >>+	reg = <0x07702000 0x4>, <0x07702004 0x4>;
> >>+	reg-names = "mic-iomux", "spkr-iomux";
> >>+	qcom,model = "DB410c";
> >>+
> >>+	/* I2S - Internal codec */
> >>+	internal-dai-link at 0 {
> >>+		cpu { /* PRIMARY */
> >>+			sound-dai = <&lpass MI2S_PRIMARY>;
> >>+		};
> >>+		codec {
> >>+			sound-dai = <&wcd_codec 0>;
> >>+		};
> >>+	};
> >>+
> >>+	/* External Primary or External Secondary -ADV7533 HDMI */
> >>+	external-dai-link at 0 {
> >>+		external;
> >>+		cpu { /* QUAT */
> >>+			sound-dai = <&lpass MI2S_QUATERNARY>;
> >>+		};
> >>+		codec {
> >>+			sound-dai = <&adv_bridge 0>;
> >>+		};
> >>+	};
> >>+};
> >
> >OK, although I will need to double-check this with the spec, it seems
> >(from the patches) that there are 4 I2S ports, 2 of which are being
> >used.  Usually, multi-channel audio is sent to the primary dai (which
> >is MI2S), which then gets sent to the other ports by HW.  If that holds
> >true for this SOC, then the external cpu dai should be labelled I2S,
> >not MI2S.  If not, then both should be labelled as I2S (and the DAI
> >channel constraints should be reduced to 1-2).
> >
> I have got very limited access to documentation, which obviously
> does not have any info related to channel capabilities. I was
> thinking that all the playback ports support multi-channel. I might
> be wrong though.

After checking the specs, the four playback DAIs are, in fact,
multi-channel.  Therefore, MI2S_ is the correct prefix for them.

> 
> >Looking at patch 12, the internal DAI is labelled Headset and the
> >external DAI is labelled HDMI.
> This naming is very specific to the SBC board.
> 
>   I will check the spec to see if the QUAT
> >I2S port can handle multi-channel.
> External HDMI bridge on the other side only supports 2-channels, but
> if you can re-check on the channel capabilities would be good.

Ah, ok.  Then no need to worry about multi-channel playback.  Just need
to ensure the codec drivers constrain the channels to mono/stereo.

-- 
Kenneth Westfield
Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, 
a Linux Foundation Collaborative Project


More information about the Alsa-devel mailing list