<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    Well you could remove it locally if it solves your problem at hand.<br>
    <br>
    But keep in mind that a lot of ARM boards are simply not compliant
    to the PCIe specification and the hardware won't work correctly on
    those in general.<br>
    <br>
    I'm pretty sure you have one of those cases here.<br>
    <br>
    Christian.<br>
    <br>
    <div class="moz-cite-prefix">Am 30.09.21 um 03:26 schrieb 李真能:<br>
    </div>
    <blockquote type="cite"
      cite="mid:dc3c0e5c-a1cf-4d98-030a-967bad2c8d01@kylinos.cn">
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <p>So, Can I remove suspend process in amdgpu_pci_shutdown if  I
        don't  use amdgpu driver in vm?</p>
      <p><span id="tran_0_0" class="">Thank you so much for</span><span>
          your </span><span id="tran_0_1" class="">reply</span><span>!</span></p>
      <div class="moz-cite-prefix">在 2021/9/30 上午5:12, Alex Deucher 写道:<br>
      </div>
      <blockquote type="cite"
cite="mid:CADnq5_MC4XPWcgT0FE5mmghZD9+YPaaAXPAkzUjFEO-hxr20Eg@mail.gmail.com">
        <pre class="moz-quote-pre" wrap="">On Wed, Sep 29, 2021 at 3:25 AM 李真能 <a class="moz-txt-link-rfc2396E" href="mailto:lizhenneng@kylinos.cn" moz-do-not-send="true"><lizhenneng@kylinos.cn></a> wrote:
</pre>
        <blockquote type="cite">
          <pre class="moz-quote-pre" wrap="">Hello:

         When I do loop  auto test of reboot, I found  kernel may halt
on memcpy_fromio of amdgpu's amdgpu_uvd_suspend, so I remove suspend
process in amdgpu_pci_shutdown, and it will fix this bug.

I have 3 questions to ask:

1. In amdgpu_pci_shutdown, the comment explains why we must execute
suspend,  so I know VM will call amdgpu driver in which situations, as I
know, VM's graphics card is a virtual card;

2. I see a path that is commited by Alex Deucher, the commit message is
as follows:

drm/amdgpu: just suspend the hw on pci shutdown

We can't just reuse pci_remove as there may be userspace still
     doing things.

My question is:In which situations, there may be  userspace till doing
things.

3. Why amdgpu driver is halted on memcpy_fromio of amdgpu_uvd_suspend, I
haven't launch any video app during reboot test, is it the bug of pci bus?

Test environment:

CPU: arm64
</pre>
        </blockquote>
        <pre class="moz-quote-pre" wrap="">I suspect the problem is something ARM specific.  IIRC, we added the
memcpy_fromio() to work around a limitation in ARM related to CPU
mappings of PCI BAR memory.  The whole point of the PCI shutdown
callback is to put the device into a quiescent state (e.g., stop all
DMAs and asynchronous engines, etc.).  Some of that tear down requires
access to PCI BARs.

Alex


</pre>
        <blockquote type="cite">
          <pre class="moz-quote-pre" wrap="">Graphics card: r7340(amdgpu), rx550

OS: ubuntu 2004

</pre>
        </blockquote>
      </blockquote>
    </blockquote>
    <br>
  </body>
</html>