Re: Device-tree overlay: simple-audio-codec for Simple-audio-card ?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, May 13, 2018 at 1:53 PM, Winfried Ritsch <ritsch@xxxxxx> wrote:
> I try to get digital audio input for 16 TDM channels on a  "mcasp" on a
> beaglebone working, no I2C, no SPI,... no controls, without writing a kernel
> driver. Did some (re)search,  I dont understand everything, just guess from
> the documentations found:
>
> There is the simple-audio-card, described in simple-audio-card.txt in the
> kernel documentation, which "only" needs to write a proper device-tree overlay
> nowadays for uboot-devicetree overlay on an beaglebone.
>
> I stuck now writing the overlay, choosing a proper codec  for the devicetree
> file, so here my question:
>
> Is there a simple audio-codec  I can reference for this usage ?
>
> simple_audio_card.txt says:
>
>    Required dai-link subnodes:
>
>    - cpu                                        : CPU   sub-node
>    - codec                                      : CODEC sub-node
>
>
> the fragment would contain:
>
>                         sound_master: simple-audio-card,cpu {
>                                         sound-dai = <&mcasp0>;
>                                         clocks = <&clk_mcasp0>;
>                         };
>                         simple-audio-card,codec {
>                                         sound-dai = <&??????>;
>                         };
>
>
> Also any hints to further documentation is also appreciated.
>
> Background info:
>    Try to generate an bitblock and framesync which clock in 16 slots of 16
> bits for digital microphone array which does not have any controls using the
> mcasp0 on a beaglebone green.
>
> mfg
>  winfried ritsch
>
>
> ------------------------------------------------------------------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> _______________________________________________
> Alsa-user mailing list
> Alsa-user@xxxxxxxxxxxxxxxxxxxxx
> https://lists.sourceforge.net/lists/listinfo/alsa-user


Hi there,
  I think this might be able to help:
https://medium.com/@caleb_22836/how-to-get-the-mx6-ssi-port-up-and-running-in-tdm-mode-dbce02a15e81.

You'll need to rebuild the kernel, if you're not familiar with doing
that... there are tutorials.  It's easy on a fast enough linux
computer.

The important part that I think you need (from Arnaud) is this patch
labeled: "ASoC: soc_utils: add devicetree bindings to dummy driver"
(https://github.com/ccrome/linux-mx6-ssi-test)

There is already a dummy driver in the kernel, but it has no device
tree bindings.  That patch adds it.  Once that's all installed, and
you've enabled the device in the kernel build, then you can try adding
the right bits to the device tree.  Something vaguely like this, but
I'm not at all sure... it's not tested...

+/ {
+ codec_test: codec_test {
+ compatible = "linux,snd-soc-dummy";
+ #sound-dai-cells = <0>;
+ };
+
+
+ sound@2 {
+ compatible = "simple-audio-card";
+ simple-audio-card,name = "loopback-ssi-test";
+ simple-audio-card,format="dsp_a";
+
+ simple-audio-card,frame-master = <&sound2_ssi>;  <---- change for
your mcbsp/mcasp
+ simple-audio-card,bitclock-master = <&sound2_ssi>; <---- change
+ sound2_ssi: simple-audio-card,cpu {
+ sound-dai = <&ssi3>; <---- change for your mcasp
+ system-clock-frequency = <1536000>; <--- same here?  I don't know
+ dai-tdm-slot-num = <8>;
+ dai-tdm-slot-width = <16>;
+ };
+ sound2codec: simple-audio-card,codec {
+ sound-dai = <&codec_test>;
+ };
+ };
+


Something sorta like that maybe.


Sorry I don't know better :-)

-Caleb

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Alsa-user mailing list
Alsa-user@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/alsa-user



[Index of Archives]     [ALSA Devel]     [Linux Audio Users]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]

  Powered by Linux