<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="#0563C1" vlink="#954F72" style="word-wrap:break-word">
<p class="msipheader251902e5" align="Left" style="margin:0"><span style="font-size:10.0pt;font-family:Arial;color:#317100">[AMD Public Use]</span></p>
<br>
<div class="WordSection1">
<p class="MsoNormal">This patch series adds support for mode2 reset for aldebaran. Since the<o:p></o:p></p>
<p class="MsoNormal">reset sequence is completely different from existing ones, it adds<o:p></o:p></p>
<p class="MsoNormal">supports using a new reset control method. The reset control and<o:p></o:p></p>
<p class="MsoNormal">handlers can be installed and handle specific types of resets.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">v1:<o:p></o:p></p>
<p class="MsoNormal">1. Changes to the mode2 sequence as PCI space gets lost during the<o:p></o:p></p>
<p class="MsoNormal">sequence.<o:p></o:p></p>
<p class="MsoNormal">2. Add support to wait for specific events from PMFW. Reset complete is<o:p></o:p></p>
<p class="MsoNormal">considered as one such event.<o:p></o:p></p>
<p class="MsoNormal">3. Add support to wait for reset completion on aldebaran<o:p></o:p></p>
<p class="MsoNormal">4. Add a new reset control and reset handler method. Reset control can<o:p></o:p></p>
<p class="MsoNormal">be installed at device, hive or ip level. For now, it's done only at<o:p></o:p></p>
<p class="MsoNormal">device level<o:p></o:p></p>
<p class="MsoNormal">5. Add reset control mechanism to the current recover sequence.<o:p></o:p></p>
<p class="MsoNormal">6. Expose PSP function to load a list of firmwares<o:p></o:p></p>
<p class="MsoNormal">7. Expose CG/PG set functions for use outside of device<o:p></o:p></p>
<p class="MsoNormal">8. Add mode2 reset and restore sequences for aldebaran.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">v2:<o:p></o:p></p>
<p class="MsoNormal">- Coding style fixes<o:p></o:p></p>
<p class="MsoNormal">- Mutex protection for new smu api (#2)<o:p></o:p></p>
<p class="MsoNormal">- Clear bus mastering before reset (#8)<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Lijo Lazar (8):<o:p></o:p></p>
<p class="MsoNormal">  drm/amd/pm: Modify mode2 msg sequence on aldebaran<o:p></o:p></p>
<p class="MsoNormal">  drm/amd/pm: Add function to wait for smu events<o:p></o:p></p>
<p class="MsoNormal">  drm/amd/pm: Add support for reset completion on aldebaran<o:p></o:p></p>
<p class="MsoNormal">  drm/amdgpu: Add reset control to amdgpu_device<o:p></o:p></p>
<p class="MsoNormal">  drm/amdgpu: Add reset control handling to reset workflow<o:p></o:p></p>
<p class="MsoNormal">  drm/amdgpu: Add PSP public function to load a list of FWs<o:p></o:p></p>
<p class="MsoNormal">  drm/amdgpu: Make set PG/CG state functions public<o:p></o:p></p>
<p class="MsoNormal">  drm/amdgpu: Add mode2 reset support for aldebaran<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">drivers/gpu/drm/amd/amdgpu/Makefile           |   7 +-<o:p></o:p></p>
<p class="MsoNormal">drivers/gpu/drm/amd/amdgpu/aldebaran.c        | 380 ++++++++++++++++++<o:p></o:p></p>
<p class="MsoNormal">drivers/gpu/drm/amd/amdgpu/aldebaran.h        |  34 ++<o:p></o:p></p>
<p class="MsoNormal">drivers/gpu/drm/amd/amdgpu/amdgpu.h           |  20 +-<o:p></o:p></p>
<p class="MsoNormal">drivers/gpu/drm/amd/amdgpu/amdgpu_device.c    |  96 +++--<o:p></o:p></p>
<p class="MsoNormal">drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c       |  17 +-<o:p></o:p></p>
<p class="MsoNormal">drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c       |  17 +<o:p></o:p></p>
<p class="MsoNormal">drivers/gpu/drm/amd/amdgpu/amdgpu_psp.h       |   4 +<o:p></o:p></p>
<p class="MsoNormal">drivers/gpu/drm/amd/amdgpu/amdgpu_reset.c     |  98 +++++<o:p></o:p></p>
<p class="MsoNormal">drivers/gpu/drm/amd/amdgpu/amdgpu_reset.c.ald |  98 +++++<o:p></o:p></p>
<p class="MsoNormal">drivers/gpu/drm/amd/amdgpu/amdgpu_reset.h     |  87 ++++<o:p></o:p></p>
<p class="MsoNormal">drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c         |   8 +-<o:p></o:p></p>
<p class="MsoNormal">drivers/gpu/drm/amd/pm/inc/aldebaran_ppsmc.h  |   3 +-<o:p></o:p></p>
<p class="MsoNormal">drivers/gpu/drm/amd/pm/inc/amdgpu_smu.h       |  16 +-<o:p></o:p></p>
<p class="MsoNormal">drivers/gpu/drm/amd/pm/inc/smu_types.h        |   1 +<o:p></o:p></p>
<p class="MsoNormal">drivers/gpu/drm/amd/pm/inc/smu_v13_0.h        |   5 +<o:p></o:p></p>
<p class="MsoNormal">drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c     |  14 +<o:p></o:p></p>
<p class="MsoNormal">.../drm/amd/pm/swsmu/smu13/aldebaran_ppt.c    |  57 ++-<o:p></o:p></p>
<p class="MsoNormal">.../gpu/drm/amd/pm/swsmu/smu13/smu_v13_0.c    |  42 +-<o:p></o:p></p>
<p class="MsoNormal">drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c        |   2 +-<o:p></o:p></p>
<p class="MsoNormal">drivers/gpu/drm/amd/pm/swsmu/smu_cmn.h        |   2 +<o:p></o:p></p>
<p class="MsoNormal">21 files changed, 956 insertions(+), 52 deletions(-)<o:p></o:p></p>
<p class="MsoNormal">create mode 100644 drivers/gpu/drm/amd/amdgpu/aldebaran.c<o:p></o:p></p>
<p class="MsoNormal">create mode 100644 drivers/gpu/drm/amd/amdgpu/aldebaran.h<o:p></o:p></p>
<p class="MsoNormal">create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_reset.c<o:p></o:p></p>
<p class="MsoNormal">create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_reset.c.ald<o:p></o:p></p>
<p class="MsoNormal">create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_reset.h<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">-- <o:p></o:p></p>
<p class="MsoNormal">2.17.1<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</body>
</html>