[yocto] [Spam - Sospetto] Re: IMX6Q add new sound simple sound card

nick83ola nick83ola at gmail.com
Tue Jul 17 02:25:06 PDT 2018


Hi,
the chip has his internal "codec" you can see from the datasheet that has
an i2s for the audio and an i2c interface for configuration.
the codec that you select *ak4648* needs an initialization phase that is
done usually via i2c.
If the driver can't find the codec it will simply disable itself (and you
don't see the alsa audio card)

First try to make the dummy codec work.
If its working you should be able to see that alsa recognize the dummy
soundcard and to be able to play something and see the i2s signal on the
board with an oscilloscope/logic analyzer

After that you probably need to develop a codec driver for that particular
chip.

Probably the alsa mailing list is the right place to get help regarding
this.

You can have a look at my previous post on those topics (I was in the same
boat as you :-) )
https://community.nxp.com/thread/391216
http://mailman.alsa-project.org/pipermail/alsa-devel/2016-May/108068.html

Cheers
Nick



On Mon, 16 Jul 2018 at 10:38, Riccardo Casagrande <
riccardo.casagrande at multiconn.it> wrote:

> Hello Nick
>
> the i.MX6Q is not connected to a codec but directly to 3 FDA2100 from
> STMicroelectronics, these chips are digital power amplifiers. On input I
> have 2 input from ADCs.
> I wrote several sound nodes but at moment the best result is no error at
> boot, the sound card listed under /proc/device-tree but not in alsa.
>
> This is the device-tree sub node
>
> sound-fda2100 {
>         compatible = "simple-audio-card";
>         simple-audio-card,name = "MTC-FDA2100-Card";
>         simple-audio-card,format = "i2s";
>         simple-audio-card,widgets =
>             "Microphone", "Microphone Jack",
>             "Headphone", "Headphone Jack",
>             "Speaker", "External Speaker";
>         simple-audio-card,routing =
>             "MIC_IN", "Microphone Jack",
>             "Headphone Jack", "HP_OUT",
>             "External Speaker", "LINE_OUT";
>
>         simple-audio-card,bitclock-master = <&cpu_dai>;
>             simple-audio-card,frame-master = <&cpu_dai>;
>             cpu_dai: simple-audio-card,cpu {
>                 sound-dai = <&ssi1 0>;
>             };
>            codec_dai: simple-audio-card,codec {
>                 sound-dai = <&codec_test>;
>             };
>     };
>
> codec_test: codec_test {
>     compatible = "linux,snd-soc-dummy";
>         #sound-dai-cells = <0>;
>      };
>
> And last week I found that "dummy codec is not supported in NXP linux
> release" as reported here https://community.nxp.com/thread/466938
>
> ------------------------------
> ----- Messaggio Originale -----
> Da: "nick83ola" <nick83ola at gmail.com>
> A: riccardo.casagrande at multiconn.it
> Cc: yocto at yoctoproject.org
> Data: 16/07/2018 10:37
> Oggetto: [Spam - Sospetto] Re: [yocto] IMX6Q add new sound simple sound
> card
>
> Hi,
> how is your sound card connected?
> If you look at the devicetree for a sound card to work you have to
> configure
>
>    - system clock
>    - device that handle the communication with the sound card (f ex i2s,
>    or i2c or usb, or whatever) (sound-dai)
>    - the soundcard itself (codec?)
>
>
> So you need more information regarding your hardware, the codec, how is
> connected, etc etc
>
>
>
> Look at the source of the simple audio card driver and maybe at some other
> driver in the kernel source
>
>
>
> Cheers
> Nick
>
>
>
> -----------------------------------------------------------------------------------------------------
>
>
> sound {
> * simple-audio-card,cpu* {
> sound-dai = <& * sh_fsi2 0* >;
> };
>
> dailink0_master: simple-audio-card, * codec* {
> sound-dai = <& * ak4648* >;
> clocks = <& * osc* >;
> };
> };
>
> &i2c0 {
> ak4648: ak4648 at 12 {
> #sound-dai-cells = <0>;
> * compatible = "asahi-kasei,ak4648";*
> reg = <0x12>;
> };
> };
>
> sh_fsi2: sh_fsi2 at ec230000 {
> #sound-dai-cells = <1>;
> * compatible = "renesas,sh_fsi2";*
> reg = <0xec230000 0x400>;
> interrupt-parent = <&gic>;
> interrupts = <0 146 0x4>;
> };
>
>
>
>
> On Thu, 5 Jul 2018 at 16:13, Riccardo Casagrande <
> riccardo.casagrande at multiconn.it  <riccardo.casagrande at multiconn.it> >
> wrote:
>
>
>>
>> Hello all,
>>
>> I'm new to Linux/Yocto world. I'm working on iMX6Q and I need to add a
>> new sound card and recognized from alsamixer.
>> I spent days on internet looking for examples and tutorials but at the
>> moment alsa never see my sound card.
>> This is one of the tutorials I followed
>> https://elixir.bootlin.com/linux/v4.5/source/Documentation/devicetree/bindings/sound/simple-card.txt
>> <https://elixir.bootlin.com/linux/v4.5/source/Documentation/devicetree/bindings/sound/simple-card.txt>
>>
>>
>> What I've done?
>> - Activated support for generic sound board on menuconfig
>> - Added new "sound" node in device tree file with minimal
>> properties/subnotes
>> - Compiled the kernel
>> - Compiled and flashed the image
>>
>>
>> but alsamixer still doesn't recognize my sound card, what am I missing?
>>
>>
>> Thanks.
>>
>>
>>
>> --
>> _______________________________________________
>> yocto mailing list
>> yocto at yoctoproject.org  <yocto at yoctoproject.org>
>> https://lists.yoctoproject.org/listinfo/yocto
>> <https://lists.yoctoproject.org/listinfo/yocto>
>>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/yocto/attachments/20180717/34f51cfb/attachment-0001.html>


More information about the yocto mailing list