<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:DengXian;
        panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:"\@DengXian";
        panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
        {font-family:-apple-system;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        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:612.0pt 792.0pt;
        margin:72.0pt 72.0pt 72.0pt 72.0pt;}
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="msipheadera4477989" align="Left" style="margin:0"><span style="font-size:10.0pt;font-family:Arial;color:#0000FF">[AMD Official Use Only]</span></p>
<br>
<div class="WordSection1">
<p class="MsoNormal">Fix discovery ip failed, and the log:<o:p></o:p></p>
<p class="MsoNormal"><span style="font-size:10.5pt;font-family:-apple-system;color:#172B4D;background:white">   56.129549] [drm:amdgpu_discovery_validate_ip [amdgpu]] *ERROR* Unexpected number_instance (64) from ip discovery blob</span><span style="font-size:10.5pt;font-family:-apple-system;color:#172B4D"><br>
<span style="background:white">[   56.130129] [drm:amdgpu_discovery_validate_ip [amdgpu]] *ERROR* Unexpected hw_id (45056) from ip discovery blob</span><br>
<span style="background:white">[   56.130701] [drm:amdgpu_discovery_validate_ip [amdgpu]] *ERROR* Unexpected number_instance (66) from ip discovery blob</span><br>
<span style="background:white">[   56.131283] [drm:amdgpu_discovery_validate_ip [amdgpu]] *ERROR* Unexpected hw_id (45568) from ip discovery blob</span><br>
<span style="background:white">[   56.131855] [drm:amdgpu_discovery_validate_ip [amdgpu]] *ERROR* Unexpected number_instance (66) from ip discovery blob</span><br>
<span style="background:white">[   56.132436] [drm:amdgpu_discovery_validate_ip [amdgpu]] *ERROR* Unexpected hw_id (480) from ip discovery blob</span><br>
<span style="background:white">[   56.133053] [drm:amdgpu_discovery_validate_ip [amdgpu]] *ERROR* Unexpected hw_id (608) from ip discovery blob</span><br>
<span style="background:white">[   56.133626] [drm:amdgpu_discovery_validate_ip [amdgpu]] *ERROR* Unexpected hw_id (640) from ip discovery blob</span><br>
<span style="background:white">[   56.134207] [drm:amdgpu_discovery_validate_ip [amdgpu]] *ERROR* Unexpected number_instance (64) from ip discovery blob</span><br>
<span style="background:white">[   56.134780] [drm:amdgpu_discovery_validate_ip [amdgpu]] *ERROR* Unexpected number_instance (64) from ip discovery blob</span><br>
<span style="background:white">[   56.135360] [drm:amdgpu_discovery_validate_ip [amdgpu]] *ERROR* Unexpected hw_id (28672) from ip discovery blob</span></span><o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c<o:p></o:p></p>
<p class="MsoNormal">index 766006a075ec..a778b0392e9f 100644<o:p></o:p></p>
<p class="MsoNormal">--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c<o:p></o:p></p>
<p class="MsoNormal">+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c<o:p></o:p></p>
<p class="MsoNormal">@@ -798,7 +798,7 @@ static int amdgpu_discovery_sysfs_ips(struct amdgpu_device *adev,<o:p></o:p></p>
<p class="MsoNormal">                        res = kobject_add(&ip_hw_instance->kobj, NULL,<o:p></o:p></p>
<p class="MsoNormal">                                          "%d", ip_hw_instance->num_instance);<o:p></o:p></p>
<p class="MsoNormal">next_ip:<o:p></o:p></p>
<p class="MsoNormal">-                       ip_offset += sizeof(*ip) + 4 * (ip->num_base_address - 1);<o:p></o:p></p>
<p class="MsoNormal">+                       ip_offset += struct_size(ip, base_address, ip->num_base_address);<o:p></o:p></p>
<p class="MsoNormal">                }<o:p></o:p></p>
<p class="MsoNormal">        }<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">@@ -1063,7 +1063,7 @@ int amdgpu_discovery_reg_base_init(struct amdgpu_device *adev)<o:p></o:p></p>
<p class="MsoNormal">                        }<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">next_ip:<o:p></o:p></p>
<p class="MsoNormal">-                       ip_offset += sizeof(*ip) + 4 * (ip->num_base_address - 1);<o:p></o:p></p>
<p class="MsoNormal">+                       ip_offset += struct_size(ip, base_address, ip->num_base_address);<o:p></o:p></p>
<p class="MsoNormal">                }<o:p></o:p></p>
<p class="MsoNormal">        }<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">@@ -1113,7 +1113,7 @@ int amdgpu_discovery_get_ip_version(struct amdgpu_device *adev, int hw_id, int n<o:p></o:p></p>
<p class="MsoNormal">                                        *revision = ip->revision;<o:p></o:p></p>
<p class="MsoNormal">                                return 0;<o:p></o:p></p>
<p class="MsoNormal">                        }<o:p></o:p></p>
<p class="MsoNormal">-                       ip_offset += sizeof(*ip) + 4 * (ip->num_base_address - 1);<o:p></o:p></p>
<p class="MsoNormal">+                       ip_offset += struct_size(ip, base_address, ip->num_base_address);<o:p></o:p></p>
<p class="MsoNormal">                }<o:p></o:p></p>
<p class="MsoNormal">        }<o:p></o:p></p>
</div>
</body>
</html>