Re: snd_hdsp missing on raspberrypi pi 5

David Kessler <[email protected]> Mon, 20 May 2024 10:39:25 +0200
Newsgroups gmane.linux.alsa.user
Message-ID <[email protected]>
This is a multi-part message in MIME format.
--===============7931915397835586432==
Content-Type: multipart/alternative;
 boundary="------------qDf2j0JdHZvx0i4jVXscwdDZ"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------qDf2j0JdHZvx0i4jVXscwdDZ
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Adding dtoverlay=pcie-32bit-dma too /boot/firmware/config.txt is helping 
a lot! The card is recognized in alsa! But yet no controls but says it 
wants to update firmware! I can feel I am close!

Le 20.05.24 à 10:11, David Kessler a écrit :
>
> As of
>
> https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/tree/sound/pci/rme9652/hdsp.c?h=v6.8.10
>
> on line 3768 in
>
> |
> static  int  snd_hdsp_initialize_memory(struct  hdsp  *hdsp)
> {
> 	struct  snd_dma_buffer  *capture_dma,  *playback_dma;
>
> 	capture_dma  =  snd_hammerfall_get_buffer(hdsp->pci,  HDSP_DMA_AREA_BYTES);
> 	playback_dma  =  snd_hammerfall_get_buffer(hdsp->pci,  HDSP_DMA_AREA_BYTES);
> 	if  (!capture_dma  ||  !playback_dma)  {
> 		dev_err(hdsp->card->dev,
> 			"%s: no buffers available\n",  hdsp->card_name);
> 		return  -ENOMEM;
> 	}|
>
> Who is responsible for this? We must have a talk! (:
>
> Le 20.05.24 à 09:07, David Kessler a écrit :
>> From what I can tell comparing to a working system is that I have all 
>> needed kernel modules loaded. the oss are indeed no longer needed. 
>> Thank's for pointing me out.
>>
>> Here a paste bin with the info I could gather.
>>
>> https://pastebin.com/dAfDDnkM
>>
>> The missing interrupt I wonder about and still the no available 
>> buffer error which returns -12 but also the memory address is stated 
>> beeing [virtual] on the PI. Is there something wrong with the bus not 
>> beeing PCI standard compliant?
>>
>> What my intuition tells me is that the PI is handling the DMA of the 
>> PCI bus in a different way than other architecture. I am not sure 
>> what to do as to troubleshoot further /: Read code?
>>
>> Thank's
>>
>> Le 19.05.24 à 23:51, Robert M. Riches Jr. a écrit :
>>
>>> Are you sure those are current?  "oss" usually refers to the
>>> open-source-sound that predated ALSA around 25 years ago.
>>>
>>> The modinfo description from kernel 5.10.0 for snd-pcm-oss
>>> seems to indicate it's for OSS emulation: "PCM OSS emulation
>>> for ALSA."  For kernel 5.10.0-29-amd64 from Devuan Chimaera,
>>> snd-seq-oss is not even listed.
>>>
>>> HTH
>>>
>>
>>
>> _______________________________________________
>> Alsa-user mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/alsa-user
>
>
> _______________________________________________
> Alsa-user mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/alsa-user
--------------qDf2j0JdHZvx0i4jVXscwdDZ
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 8bit

<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>Adding dtoverlay=pcie-32bit-dma too /boot/firmware/config.txt is
      helping a lot! The card is recognized in alsa! But yet no controls
      but says it wants to update firmware! I can feel I am close!</p>
    <div class="moz-cite-prefix">Le 20.05.24 à 10:11, David Kessler a
      écrit :<br>
    </div>
    <blockquote type="cite"
      cite="mid:[email protected]">
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <p>As of</p>
      <p><a class="moz-txt-link-freetext"
href="https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/tree/sound/pci/rme9652/hdsp.c?h=v6.8.10"
          moz-do-not-send="true">https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/tree/sound/pci/rme9652/hdsp.c?h=v6.8.10</a></p>
      <p>on line 3768 in</p>
      <pre><code><pre><span class="k">static</span> <span class="kt">int</span> <span
      class="nf">snd_hdsp_initialize_memory</span><span class="p">(</span><span
      class="k">struct</span> <span class="n">hdsp</span> <span
      class="o">*</span><span class="n">hdsp</span><span class="p">)</span>
<span class="p">{</span>
	<span class="k">struct</span> <span class="n">snd_dma_buffer</span> <span
      class="o">*</span><span class="n">capture_dma</span><span
      class="p">,</span> <span class="o">*</span><span class="n">playback_dma</span><span
      class="p">;</span>

	<span class="n">capture_dma</span> <span class="o">=</span> <span
      class="n">snd_hammerfall_get_buffer</span><span class="p">(</span><span
      class="n">hdsp</span><span class="o">-&gt;</span><span class="n">pci</span><span
      class="p">,</span> <span class="n">HDSP_DMA_AREA_BYTES</span><span
      class="p">);</span>
	<span class="n">playback_dma</span> <span class="o">=</span> <span
      class="n">snd_hammerfall_get_buffer</span><span class="p">(</span><span
      class="n">hdsp</span><span class="o">-&gt;</span><span class="n">pci</span><span
      class="p">,</span> <span class="n">HDSP_DMA_AREA_BYTES</span><span
      class="p">);</span>
	<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span
      class="n">capture_dma</span> <span class="o">||</span> <span
      class="o">!</span><span class="n">playback_dma</span><span
      class="p">)</span> <span class="p">{</span>
		<span class="n">dev_err</span><span class="p">(</span><span class="n">hdsp</span><span
      class="o">-&gt;</span><span class="n">card</span><span class="o">-&gt;</span><span
      class="n">dev</span><span class="p">,</span>
			<span class="s">"%s: no buffers available</span><span class="se">\n</span><span
      class="s">"</span><span class="p">,</span> <span class="n">hdsp</span><span
      class="o">-&gt;</span><span class="n">card_name</span><span
      class="p">);</span>
		<span class="k">return</span> <span class="o">-</span><span class="n">ENOMEM</span><span
      class="p">;</span>
	<span class="p">}</span></pre></code></pre>
      <p>Who is responsible for this? We must have a talk! (:<br>
      </p>
      <div class="moz-cite-prefix">Le 20.05.24 à 09:07, David Kessler a
        écrit :<br>
      </div>
      <blockquote type="cite"
        cite="mid:[email protected]">From
        what I can tell comparing to a working system is that I have all
        needed kernel modules loaded. the oss are indeed no longer
        needed. Thank's for pointing me out. <br>
        <br>
        Here a paste bin with the info I could gather. <br>
        <br>
        <a class="moz-txt-link-freetext"
          href="https://pastebin.com/dAfDDnkM" moz-do-not-send="true">https://pastebin.com/dAfDDnkM</a>
        <br>
        <br>
        The missing interrupt I wonder about and still the no available
        buffer error which returns -12 but also the memory address is
        stated beeing [virtual] on the PI. Is there something wrong with
        the bus not beeing PCI standard compliant? <br>
        <br>
        What my intuition tells me is that the PI is handling the DMA of
        the PCI bus in a different way than other architecture. I am not
        sure what to do as to troubleshoot further /: Read code? <br>
        <br>
        Thank's <br>
        <br>
        Le 19.05.24 à 23:51, Robert M. Riches Jr. a écrit : <br>
        <br>
        <blockquote type="cite">Are you sure those are current?  "oss"
          usually refers to the <br>
          open-source-sound that predated ALSA around 25 years ago. <br>
          <br>
          The modinfo description from kernel 5.10.0 for snd-pcm-oss <br>
          seems to indicate it's for OSS emulation: "PCM OSS emulation <br>
          for ALSA."  For kernel 5.10.0-29-amd64 from Devuan Chimaera, <br>
          snd-seq-oss is not even listed. <br>
          <br>
          HTH <br>
          <br>
        </blockquote>
        <br>
        <br>
        _______________________________________________ <br>
        Alsa-user mailing list <br>
        <a class="moz-txt-link-abbreviated moz-txt-link-freetext"
          href="mailto:[email protected]"
          moz-do-not-send="true">[email protected]</a> <br>
        <a class="moz-txt-link-freetext"
          href="https://lists.sourceforge.net/lists/listinfo/alsa-user"
          moz-do-not-send="true">https://lists.sourceforge.net/lists/listinfo/alsa-user</a>
        <br>
      </blockquote>
      <br>
      <fieldset class="moz-mime-attachment-header"></fieldset>
      <br>
      <fieldset class="moz-mime-attachment-header"></fieldset>
      <pre class="moz-quote-pre" wrap="">_______________________________________________
Alsa-user mailing list
<a class="moz-txt-link-abbreviated" href="mailto:[email protected]">[email protected]</a>
<a class="moz-txt-link-freetext" href="https://lists.sourceforge.net/lists/listinfo/alsa-user">https://lists.sourceforge.net/lists/listinfo/alsa-user</a>
</pre>
    </blockquote>
  </body>
</html>

--------------qDf2j0JdHZvx0i4jVXscwdDZ--


--===============7931915397835586432==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline


--===============7931915397835586432==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Alsa-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/alsa-user

--===============7931915397835586432==--