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

From: Kenneth Westfield
Date: Wed May 06 2015 - 01:41:21 EST


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@0 {
> >>+ cpu { /* PRIMARY */
> >>+ sound-dai = <&lpass MI2S_PRIMARY>;
> >>+ };
> >>+ codec {
> >>+ sound-dai = <&wcd_codec 0>;
> >>+ };
> >>+ };
> >>+
> >>+ /* External Primary or External Secondary -ADV7533 HDMI */
> >>+ external-dai-link@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
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/