<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Linux simple-audio-card missing volume controls in i.MX Processors</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/Linux-simple-audio-card-missing-volume-controls/m-p/2044510#M234019</link>
    <description>&lt;P&gt;Ok, I see... WM8960 is connected via I2C and so it is completely another thing... it can receive control commands (via I2C) and maybe it can control the output volume and/or balance that way...&lt;/P&gt;&lt;P&gt;Do you know if perhaps what I am experiencing is a "limitation" of the "simple-audio-card" approach?&lt;/P&gt;&lt;P&gt;In other words: with "simple-card-audio" approach (the only one possible for WM8524, since it do not have any control interfaces, but only digital audio) is it possible to let Linux control the sound card volume/balance?&lt;/P&gt;&lt;P&gt;The only way it could do that will be by manipulating digital audio values before sending them on the I2S bus... is something like that implemented? maybe is something to be enabled some way?&lt;/P&gt;</description>
    <pubDate>Fri, 14 Feb 2025 11:14:12 GMT</pubDate>
    <dc:creator>morix</dc:creator>
    <dc:date>2025-02-14T11:14:12Z</dc:date>
    <item>
      <title>Linux simple-audio-card missing volume controls</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Linux-simple-audio-card-missing-volume-controls/m-p/2041553#M233857</link>
      <description>&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;P&gt;I am working on an embedded device built around a NXP i.MX8MP, building the system image via Yocto.&lt;/P&gt;&lt;P&gt;About the sound subsystem, the board I am working on is equipped with a Cirrus Logic WM8524 DAC, connected on SAI1; the configuration in the Linux device tree is as following:&lt;/P&gt;&lt;PRE&gt;    wm8524: audio-codec {
        #sound-dai-cells = &amp;lt;0&amp;gt;;
        compatible = "wlf,wm8524";
        pinctrl-names = "default";
        pinctrl-0 = &amp;lt;&amp;amp;pinctrl_sound_wm8524&amp;gt;;
        wlf,mute-gpios = &amp;lt;&amp;amp;gpio4 0 GPIO_ACTIVE_LOW&amp;gt;;
    };
    
    sound-wm8524 {
        compatible = "simple-audio-card";
        simple-audio-card,name = "wm8524-audio";
        simple-audio-card,format = "i2s";
        simple-audio-card,frame-master = &amp;lt;&amp;amp;cpudai&amp;gt;;
        simple-audio-card,bitclock-master = &amp;lt;&amp;amp;cpudai&amp;gt;;
        simple-audio-card,widgets =
            "Line", "Left Line Out Jack",
            "Line", "Right Line Out Jack";
        simple-audio-card,routing =
            "Left Line Out Jack", "LINEVOUTL",
            "Right Line Out Jack", "LINEVOUTR";
        
        cpudai: simple-audio-card,cpu {
            sound-dai = &amp;lt;&amp;amp;sai1&amp;gt;;
        };
        
        simple-audio-card,codec {
            sound-dai = &amp;lt;&amp;amp;wm8524&amp;gt;;
            clocks = &amp;lt;&amp;amp;audio_blk_ctrl IMX8MP_CLK_AUDIOMIX_SAI1_MCLK1&amp;gt;;
        };
    };&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;With this configuration I am perfectly able to play music with gstplay-1.0, for example, and connecting a couple of speakers to the board I can actually hear the music being nicely played.&lt;/P&gt;&lt;P&gt;&lt;EM&gt;BUT&lt;/EM&gt;&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;At boot, Linux says that "No soundcards are detected";&lt;/LI&gt;&lt;LI&gt;Consequently (at least, I think) I can't see any volume controls in alsamixer or amixer.&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;So, here are my question and/or request for clarification, if somebody can help me:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;&lt;P&gt;WM8524 has no I2C/SPI/serial connection... but only I2S... so the possibility to let it manage the volume on its own is that there is the possibility to send some "control command" over I2S... but as far as I can understand surfing the web, that is not possible... or at least, in several places I read something like Regarding I2S, the volume is set by scaling the values in the digital data... is that correct?&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;if point 1) is correct, my last chance is that Linux is able to "pre-process" digital data before sending them to the codec... and I think that this should be done at "simple-audio-card" level... is that correct? is that possible?&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;Finally, if my assumptions at both 1) are 2) are correct, why am I not seeing any volume controls in alsamixer/amixer for my sound card? And why the sound card is not detected at all during Linux boot? Any ideas?&lt;/P&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;Thanks for the support!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Tue, 11 Feb 2025 08:13:20 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Linux-simple-audio-card-missing-volume-controls/m-p/2041553#M233857</guid>
      <dc:creator>morix</dc:creator>
      <dc:date>2025-02-11T08:13:20Z</dc:date>
    </item>
    <item>
      <title>Re: Linux simple-audio-card missing volume controls</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Linux-simple-audio-card-missing-volume-controls/m-p/2042153#M233897</link>
      <description>&lt;P&gt;I tested this on imx8mp evk board successfully, what do you mean you couldn't see the volume controls? did you use the correct command? and pls give me the result when you use "aplay -l"&lt;/P&gt;</description>
      <pubDate>Wed, 12 Feb 2025 02:42:33 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Linux-simple-audio-card-missing-volume-controls/m-p/2042153#M233897</guid>
      <dc:creator>joanxie</dc:creator>
      <dc:date>2025-02-12T02:42:33Z</dc:date>
    </item>
    <item>
      <title>Re: Linux simple-audio-card missing volume controls</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Linux-simple-audio-card-missing-volume-controls/m-p/2042738#M233936</link>
      <description>&lt;P&gt;Hello joanxie.&lt;/P&gt;&lt;P&gt;Do you mean that you tested exactly WM8524 with the devicetree I provided in my post, and you are able to control volume in &lt;FONT face="courier new,courier"&gt;alsamixer&lt;/FONT&gt;/&lt;FONT face="courier new,courier"&gt;amixer&lt;/FONT&gt;?&lt;/P&gt;&lt;P&gt;Anyway, you asked me about the about of &lt;FONT face="courier new,courier"&gt;aplay -l&lt;/FONT&gt; and here it is:&lt;/P&gt;&lt;PRE&gt;**** List of PLAYBACK Hardware Devices ****&lt;BR /&gt;card 0: wm8524audio [wm8524-audio], device 0: 30c10000.sai-wm8524-hifi wm8524-hifi-0 [30c10000.sai-wm8524-hifi wm8524-hifi-0]&lt;BR /&gt;&amp;nbsp; Subdevices: 1/1&lt;BR /&gt;&amp;nbsp; Subdevice #0: subdevice #0&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I also attach the an image called &lt;FONT face="courier new,courier"&gt;alsamixer.png&lt;/FONT&gt; to show you exactly what I get in &lt;FONT face="courier new,courier"&gt;alsamixer&lt;/FONT&gt;.&lt;/P&gt;&lt;P&gt;Finally I attach the dump of &lt;FONT face="courier new,courier"&gt;dmesg&lt;/FONT&gt;, where you can read "&lt;FONT face="courier new,courier"&gt;No soundcards found&lt;/FONT&gt;".&lt;/P&gt;</description>
      <pubDate>Wed, 12 Feb 2025 16:16:18 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Linux-simple-audio-card-missing-volume-controls/m-p/2042738#M233936</guid>
      <dc:creator>morix</dc:creator>
      <dc:date>2025-02-12T16:16:18Z</dc:date>
    </item>
    <item>
      <title>Re: Linux simple-audio-card missing volume controls</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Linux-simple-audio-card-missing-volume-controls/m-p/2042931#M233945</link>
      <description>&lt;P&gt;no, I didn't have board with this codec, I tested exist codec wm8960, what result when you use command "&lt;SPAN&gt;amixer -c0 controls&lt;/SPAN&gt;" ? I have the same&amp;nbsp;&lt;SPAN&gt;"&lt;/SPAN&gt;&lt;FONT face="courier new,courier"&gt;No soundcards found&lt;/FONT&gt;&lt;SPAN&gt;". in the boot logfile too&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 13 Feb 2025 01:15:48 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Linux-simple-audio-card-missing-volume-controls/m-p/2042931#M233945</guid>
      <dc:creator>joanxie</dc:creator>
      <dc:date>2025-02-13T01:15:48Z</dc:date>
    </item>
    <item>
      <title>Re: Linux simple-audio-card missing volume controls</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Linux-simple-audio-card-missing-volume-controls/m-p/2043188#M233958</link>
      <description>&lt;P&gt;The output is nothing (empty):&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;root@2414a:~# amixer -c0 controls&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT face="courier new,courier"&gt;root@2414a:~#&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;With WM8960 are you able to see standard volume/balance controls in &lt;FONT face="courier new,courier"&gt;alsamixer&lt;/FONT&gt;/&lt;FONT face="courier new,courier"&gt;amixer&lt;/FONT&gt;?&lt;/P&gt;&lt;P&gt;You too with WM8960 make use of a &lt;FONT face="courier new,courier"&gt;simple-audio-card&lt;/FONT&gt; node in your devicetree? Can you share with me your own devicetree (at least the relevant part) so that maybe I will be able to spot some differences with respect to mine?&lt;/P&gt;</description>
      <pubDate>Thu, 13 Feb 2025 07:47:50 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Linux-simple-audio-card-missing-volume-controls/m-p/2043188#M233958</guid>
      <dc:creator>morix</dc:creator>
      <dc:date>2025-02-13T07:47:50Z</dc:date>
    </item>
    <item>
      <title>Re: Linux simple-audio-card missing volume controls</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Linux-simple-audio-card-missing-volume-controls/m-p/2044498#M234016</link>
      <description>&lt;P&gt;With WM8960 are you able to see standard volume/balance controls in &lt;FONT face="courier new,courier"&gt;alsamixer&lt;/FONT&gt;/&lt;FONT face="courier new,courier"&gt;amixer&lt;/FONT&gt;?&lt;/P&gt;
&lt;P&gt;&amp;gt;yes&lt;/P&gt;
&lt;P&gt;You too with WM8960 make use of a &lt;FONT face="courier new,courier"&gt;simple-audio-card&lt;/FONT&gt; node in your devicetree?&lt;/P&gt;
&lt;P&gt;&amp;gt;you can refer to the dts file, wm8960 doesn't use &lt;FONT face="courier new,courier"&gt;simple-audio-card&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="https://github.com/nxp-imx/linux-imx/blob/lf-6.6.y/arch/arm64/boot/dts/freescale/imx8mp-evk.dts#L150" target="_blank"&gt;https://github.com/nxp-imx/linux-imx/blob/lf-6.6.y/arch/arm64/boot/dts/freescale/imx8mp-evk.dts#L150&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 14 Feb 2025 10:42:47 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Linux-simple-audio-card-missing-volume-controls/m-p/2044498#M234016</guid>
      <dc:creator>joanxie</dc:creator>
      <dc:date>2025-02-14T10:42:47Z</dc:date>
    </item>
    <item>
      <title>Re: Linux simple-audio-card missing volume controls</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Linux-simple-audio-card-missing-volume-controls/m-p/2044510#M234019</link>
      <description>&lt;P&gt;Ok, I see... WM8960 is connected via I2C and so it is completely another thing... it can receive control commands (via I2C) and maybe it can control the output volume and/or balance that way...&lt;/P&gt;&lt;P&gt;Do you know if perhaps what I am experiencing is a "limitation" of the "simple-audio-card" approach?&lt;/P&gt;&lt;P&gt;In other words: with "simple-card-audio" approach (the only one possible for WM8524, since it do not have any control interfaces, but only digital audio) is it possible to let Linux control the sound card volume/balance?&lt;/P&gt;&lt;P&gt;The only way it could do that will be by manipulating digital audio values before sending them on the I2S bus... is something like that implemented? maybe is something to be enabled some way?&lt;/P&gt;</description>
      <pubDate>Fri, 14 Feb 2025 11:14:12 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Linux-simple-audio-card-missing-volume-controls/m-p/2044510#M234019</guid>
      <dc:creator>morix</dc:creator>
      <dc:date>2025-02-14T11:14:12Z</dc:date>
    </item>
    <item>
      <title>Re: Linux simple-audio-card missing volume controls</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Linux-simple-audio-card-missing-volume-controls/m-p/2046088#M234120</link>
      <description>&lt;P&gt;I think this is related to&amp;nbsp;Audio Mixer enable, not I2C, for more detailed information, pls refer to the&amp;nbsp;chapter 7.5 Audio Mixer (AUDMIX)&lt;/P&gt;</description>
      <pubDate>Tue, 18 Feb 2025 07:49:41 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Linux-simple-audio-card-missing-volume-controls/m-p/2046088#M234120</guid>
      <dc:creator>joanxie</dc:creator>
      <dc:date>2025-02-18T07:49:41Z</dc:date>
    </item>
  </channel>
</rss>

