From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Quan, Evan" Subject: =?gb2312?B?tPC4tDogW1BBVENIXSBkcm0vYW1kL3BwOiBSZWZpbmUgdGhlIG91dHB1dCBv?= =?gb2312?B?ZiBwcF9wb3dlcl9wcm9maWxlX21vZGUgb24gVkk=?= Date: Tue, 8 May 2018 01:49:20 +0000 Message-ID: References: <1525675062-13286-1-git-send-email-Rex.Zhu@amd.com>, Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============1838056812==" Return-path: In-Reply-To: Content-Language: zh-CN List-Id: Discussion list for AMD gfx List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: amd-gfx-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "amd-gfx" To: "Deucher, Alexander" , "Zhu, Rex" , "amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org" --===============1838056812== Content-Language: zh-CN Content-Type: multipart/alternative; boundary="_000_DM5PR1201MB248954DC7140FA95739627D2E49A0DM5PR1201MB2489_" --_000_DM5PR1201MB248954DC7140FA95739627D2E49A0DM5PR1201MB2489_ Content-Type: text/plain; charset="gb2312" Content-Transfer-Encoding: base64 UmV2aWV3ZWQtYnk6IEV2YW4gUXVhbiA8ZXZhbi5xdWFuQGFtZC5jb20+DQoNCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fDQq3orz+yMs6IGFtZC1nZnggPGFtZC1nZngtYm91bmNlc0Bs aXN0cy5mcmVlZGVza3RvcC5vcmc+ILT6se0gRGV1Y2hlciwgQWxleGFuZGVyIDxBbGV4YW5kZXIu RGV1Y2hlckBhbWQuY29tPg0Kt6LLzcqxvOQ6IDIwMTjE6jXUwjjI1SA1OjMyOjA2DQrK1bz+yMs6 IFpodSwgUmV4OyBhbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZw0K1vfM4jogUmU6IFtQQVRD SF0gZHJtL2FtZC9wcDogUmVmaW5lIHRoZSBvdXRwdXQgb2YgcHBfcG93ZXJfcHJvZmlsZV9tb2Rl IG9uIFZJDQoNCg0KQWNrZWQtYnk6IEFsZXggRGV1Y2hlciA8YWxleGFuZGVyLmRldWNoZXJAYW1k LmNvbT4NCg0KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18NCkZyb206IGFtZC1nZngg PGFtZC1nZngtYm91bmNlc0BsaXN0cy5mcmVlZGVza3RvcC5vcmc+IG9uIGJlaGFsZiBvZiBSZXgg Wmh1IDxSZXguWmh1QGFtZC5jb20+DQpTZW50OiBNb25kYXksIE1heSA3LCAyMDE4IDI6Mzc6NDIg QU0NClRvOiBhbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZw0KQ2M6IFpodSwgUmV4DQpTdWJq ZWN0OiBbUEFUQ0hdIGRybS9hbWQvcHA6IFJlZmluZSB0aGUgb3V0cHV0IG9mIHBwX3Bvd2VyX3By b2ZpbGVfbW9kZSBvbiBWSQ0KDQpJbiBvcmRlciB0byBrZWVwIGNvbnNpc3Qgd2l0aCBWZWdhLA0K dGhlIG91dHB1dCBmb3JtYXQgb2YgdGhlIHBwX3Bvd2VyX3Byb2ZpbGVfbW9kZSB3b3VsZCBiZQ0K PGludGVnZXI+ICA8bW9kZSBuYW1lIHN0cmluZz48IKGwKqGxIGlmIHRoaXMgaXMgdGhlIGN1cnJl bnQgcHJvZmlsZT46ImRldGFpbCBzZXR0aW5ncyINCmFuZCByZW1vdmUgdGhlICJDVVJSRU5UIiBt b2RlIGxpbmUuDQoNCmZvciBleGFtcGxlOg0KTlVNICAgICAgICBNT0RFX05BTUUgICAgIFNDTEtf VVBfSFlTVCAgIFNDTEtfRE9XTl9IWVNUIFNDTEtfQUNUSVZFX0xFVkVMICAgICBNQ0xLX1VQX0hZ U1QgICBNQ0xLX0RPV05fSFlTVCBNQ0xLX0FDVElWRV9MRVZFTA0KICAwICAgM0RfRlVMTF9TQ1JF RU46ICAgICAgICAwICAgICAgICAgICAgICAxMDAgICAgICAgICAgICAgICAzMCAgICAgICAgICAg ICAgICAwICAgICAgICAgICAgICAxMDAgICAgICAgICAgICAgICAxMA0KICAxICAgICBQT1dFUl9T QVZJTkc6ICAgICAgIDEwICAgICAgICAgICAgICAgIDAgICAgICAgICAgICAgICAzMCAgICAgICAg ICAgICAgICAtICAgICAgICAgICAgICAgIC0gICAgICAgICAgICAgICAgLQ0KICAyICAgICAgICAg ICAgVklERU86ICAgICAgICAtICAgICAgICAgICAgICAgIC0gICAgICAgICAgICAgICAgLSAgICAg ICAgICAgICAgIDEwICAgICAgICAgICAgICAgMTYgICAgICAgICAgICAgICAzMQ0KICAzICAgICAg ICAgICAgICAgVlI6ICAgICAgICAwICAgICAgICAgICAgICAgMTEgICAgICAgICAgICAgICA1MCAg ICAgICAgICAgICAgICAwICAgICAgICAgICAgICAxMDAgICAgICAgICAgICAgICAxMA0KICA0ICAg ICAgICAgIENPTVBVVEU6ICAgICAgICAwICAgICAgICAgICAgICAgIDUgICAgICAgICAgICAgICAz MCAgICAgICAgICAgICAgICAtICAgICAgICAgICAgICAgIC0gICAgICAgICAgICAgICAgLQ0KICA1 ICAgICAgICAgQ1VTVE9NICo6ICAgICAgICAwICAgICAgICAgICAgICAgIDUgICAgICAgICAgICAg ICAzMCAgICAgICAgICAgICAgICAwICAgICAgICAgICAgICAxMDAgICAgICAgICAgICAgICAxMA0K TlVNICAgICAgICBNT0RFX05BTUUgICAgIFNDTEtfVVBfSFlTVCAgIFNDTEtfRE9XTl9IWVNUIFND TEtfQUNUSVZFX0xFVkVMICAgICBNQ0xLX1VQX0hZU1QgICBNQ0xLX0RPV05fSFlTVCBNQ0xLX0FD VElWRV9MRVZFTA0KICAwICAgM0RfRlVMTF9TQ1JFRU46ICAgICAgICAwICAgICAgICAgICAgICAx MDAgICAgICAgICAgICAgICAzMCAgICAgICAgICAgICAgICAwICAgICAgICAgICAgICAxMDAgICAg ICAgICAgICAgICAxMA0KICAxICAgUE9XRVJfU0FWSU5HICo6ICAgICAgIDEwICAgICAgICAgICAg ICAgIDAgICAgICAgICAgICAgICAzMCAgICAgICAgICAgICAgICAwICAgICAgICAgICAgICAxMDAg ICAgICAgICAgICAgICAxMA0KICAyICAgICAgICAgICAgVklERU86ICAgICAgICAtICAgICAgICAg ICAgICAgIC0gICAgICAgICAgICAgICAgLSAgICAgICAgICAgICAgIDEwICAgICAgICAgICAgICAg MTYgICAgICAgICAgICAgICAzMQ0KICAzICAgICAgICAgICAgICAgVlI6ICAgICAgICAwICAgICAg ICAgICAgICAgMTEgICAgICAgICAgICAgICA1MCAgICAgICAgICAgICAgICAwICAgICAgICAgICAg ICAxMDAgICAgICAgICAgICAgICAxMA0KICA0ICAgICAgICAgIENPTVBVVEU6ICAgICAgICAwICAg ICAgICAgICAgICAgIDUgICAgICAgICAgICAgICAzMCAgICAgICAgICAgICAgICAtICAgICAgICAg ICAgICAgIC0gICAgICAgICAgICAgICAgLQ0KICA1ICAgICAgICAgICBDVVNUT006ICAgICAgICAt ICAgICAgICAgICAgICAgIC0gICAgICAgICAgICAgICAgLSAgICAgICAgICAgICAgICAtICAgICAg ICAgICAgICAgIC0gICAgICAgICAgICAgICAgLQ0KDQpTaWduZWQtb2ZmLWJ5OiBSZXggWmh1IDxS ZXguWmh1QGFtZC5jb20+DQotLS0NCiBkcml2ZXJzL2dwdS9kcm0vYW1kL3Bvd2VycGxheS9od21n ci9zbXU3X2h3bWdyLmMgfCA1MiArKysrKysrKysrKy0tLS0tLS0tLS0tLS0NCiBkcml2ZXJzL2dw dS9kcm0vYW1kL3Bvd2VycGxheS9od21nci9zbXU3X2h3bWdyLmggfCAgMSAtDQogMiBmaWxlcyBj aGFuZ2VkLCAyMyBpbnNlcnRpb25zKCspLCAzMCBkZWxldGlvbnMoLSkNCg0KZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9hbWQvcG93ZXJwbGF5L2h3bWdyL3NtdTdfaHdtZ3IuYyBiL2RyaXZl cnMvZ3B1L2RybS9hbWQvcG93ZXJwbGF5L2h3bWdyL3NtdTdfaHdtZ3IuYw0KaW5kZXggNGM5NGU3 YS4uMzllNDljZSAxMDA2NDQNCi0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvcG93ZXJwbGF5L2h3 bWdyL3NtdTdfaHdtZ3IuYw0KKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9wb3dlcnBsYXkvaHdt Z3Ivc211N19od21nci5jDQpAQCAtNzUsMTIgKzc1LDEzIEBADQogI2RlZmluZSBQQ0lFX0JVU19D TEsgICAgICAgICAgICAgICAgMTAwMDANCiAjZGVmaW5lIFRDTEsgICAgICAgICAgICAgICAgICAg ICAgICAoUENJRV9CVVNfQ0xLIC8gMTApDQoNCi1zdGF0aWMgY29uc3Qgc3RydWN0IHByb2ZpbGVf bW9kZV9zZXR0aW5nIHNtdTdfcHJvZmlsaW5nWzVdID0NCitzdGF0aWMgY29uc3Qgc3RydWN0IHBy b2ZpbGVfbW9kZV9zZXR0aW5nIHNtdTdfcHJvZmlsaW5nWzZdID0NCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAge3sxLCAwLCAxMDAsIDMwLCAxLCAwLCAxMDAsIDEwfSwN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsxLCAxMCwgMCwgMzAs IDAsIDAsIDAsIDB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ezAsIDAsIDAsIDAsIDEsIDEwLCAxNiwgMzF9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgezEsIDAsIDExLCA1MCwgMSwgMCwgMTAwLCAxMH0sDQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7MSwgMCwgNSwgMzAsIDAsIDAsIDAsIDB9 LA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7MCwgMCwgMCwgMCwg MCwgMCwgMCwgMH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH07 DQoNCiAjZGVmaW5lIFBQU01DX01TR19TZXRWQklUaW1lb3V0X1ZFR0FNICAgICgodWludDE2X3Qp IDB4MzEwKQ0KQEAgLTQ4ODIsNiArNDg4MywxNyBAQCBzdGF0aWMgaW50IHNtdTdfZ2V0X3Bvd2Vy X3Byb2ZpbGVfbW9kZShzdHJ1Y3QgcHBfaHdtZ3IgKmh3bWdyLCBjaGFyICpidWYpDQogICAgICAg ICBsZW4gPSBzaXplb2Yoc211N19wcm9maWxpbmcpIC8gc2l6ZW9mKHN0cnVjdCBwcm9maWxlX21v ZGVfc2V0dGluZyk7DQoNCiAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBsZW47IGkrKykgew0KKyAg ICAgICAgICAgICAgIGlmIChpID09IGh3bWdyLT5wb3dlcl9wcm9maWxlX21vZGUpIHsNCisgICAg ICAgICAgICAgICAgICAgICAgIHNpemUgKz0gc3ByaW50ZihidWYgKyBzaXplLCAiJTNkICUxNHMg JXM6ICU4ZCAlMTZkICUxNmQgJTE2ZCAlMTZkICUxNmRcbiIsDQorICAgICAgICAgICAgICAgICAg ICAgICBpLCBwcm9maWxlX25hbWVbaV0sICIqIiwNCisgICAgICAgICAgICAgICAgICAgICAgIGRh dGEtPmN1cnJlbnRfcHJvZmlsZV9zZXR0aW5nLnNjbGtfdXBfaHlzdCwNCisgICAgICAgICAgICAg ICAgICAgICAgIGRhdGEtPmN1cnJlbnRfcHJvZmlsZV9zZXR0aW5nLnNjbGtfZG93bl9oeXN0LA0K KyAgICAgICAgICAgICAgICAgICAgICAgZGF0YS0+Y3VycmVudF9wcm9maWxlX3NldHRpbmcuc2Ns a19hY3Rpdml0eSwNCisgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtPmN1cnJlbnRfcHJvZmls ZV9zZXR0aW5nLm1jbGtfdXBfaHlzdCwNCisgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtPmN1 cnJlbnRfcHJvZmlsZV9zZXR0aW5nLm1jbGtfZG93bl9oeXN0LA0KKyAgICAgICAgICAgICAgICAg ICAgICAgZGF0YS0+Y3VycmVudF9wcm9maWxlX3NldHRpbmcubWNsa19hY3Rpdml0eSk7DQorICAg ICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsNCisgICAgICAgICAgICAgICB9DQogICAgICAg ICAgICAgICAgIGlmIChzbXU3X3Byb2ZpbGluZ1tpXS5idXBkYXRlX3NjbGspDQogICAgICAgICAg ICAgICAgICAgICAgICAgc2l6ZSArPSBzcHJpbnRmKGJ1ZiArIHNpemUsICIlM2QgJTE2czogJThk ICUxNmQgJTE2ZCAiLA0KICAgICAgICAgICAgICAgICAgICAgICAgIGksIHByb2ZpbGVfbmFtZVtp XSwgc211N19wcm9maWxpbmdbaV0uc2Nsa191cF9oeXN0LA0KQEAgLTQ5MDEsMjQgKzQ5MTMsNiBA QCBzdGF0aWMgaW50IHNtdTdfZ2V0X3Bvd2VyX3Byb2ZpbGVfbW9kZShzdHJ1Y3QgcHBfaHdtZ3Ig Kmh3bWdyLCBjaGFyICpidWYpDQogICAgICAgICAgICAgICAgICAgICAgICAgIi0iLCAiLSIsICIt Iik7DQogICAgICAgICB9DQoNCi0gICAgICAgc2l6ZSArPSBzcHJpbnRmKGJ1ZiArIHNpemUsICIl M2QgJTE2czogJThkICUxNmQgJTE2ZCAlMTZkICUxNmQgJTE2ZFxuIiwNCi0gICAgICAgICAgICAg ICAgICAgICAgIGksIHByb2ZpbGVfbmFtZVtpXSwNCi0gICAgICAgICAgICAgICAgICAgICAgIGRh dGEtPmN1c3RvbV9wcm9maWxlX3NldHRpbmcuc2Nsa191cF9oeXN0LA0KLSAgICAgICAgICAgICAg ICAgICAgICAgZGF0YS0+Y3VzdG9tX3Byb2ZpbGVfc2V0dGluZy5zY2xrX2Rvd25faHlzdCwNCi0g ICAgICAgICAgICAgICAgICAgICAgIGRhdGEtPmN1c3RvbV9wcm9maWxlX3NldHRpbmcuc2Nsa19h Y3Rpdml0eSwNCi0gICAgICAgICAgICAgICAgICAgICAgIGRhdGEtPmN1c3RvbV9wcm9maWxlX3Nl dHRpbmcubWNsa191cF9oeXN0LA0KLSAgICAgICAgICAgICAgICAgICAgICAgZGF0YS0+Y3VzdG9t X3Byb2ZpbGVfc2V0dGluZy5tY2xrX2Rvd25faHlzdCwNCi0gICAgICAgICAgICAgICAgICAgICAg IGRhdGEtPmN1c3RvbV9wcm9maWxlX3NldHRpbmcubWNsa19hY3Rpdml0eSk7DQotDQotICAgICAg IHNpemUgKz0gc3ByaW50ZihidWYgKyBzaXplLCAiJTNzICUxNnM6ICU4ZCAlMTZkICUxNmQgJTE2 ZCAlMTZkICUxNmRcbiIsDQotICAgICAgICAgICAgICAgICAgICAgICAiKiIsICJDVVJSRU5UIiwN Ci0gICAgICAgICAgICAgICAgICAgICAgIGRhdGEtPmN1cnJlbnRfcHJvZmlsZV9zZXR0aW5nLnNj bGtfdXBfaHlzdCwNCi0gICAgICAgICAgICAgICAgICAgICAgIGRhdGEtPmN1cnJlbnRfcHJvZmls ZV9zZXR0aW5nLnNjbGtfZG93bl9oeXN0LA0KLSAgICAgICAgICAgICAgICAgICAgICAgZGF0YS0+ Y3VycmVudF9wcm9maWxlX3NldHRpbmcuc2Nsa19hY3Rpdml0eSwNCi0gICAgICAgICAgICAgICAg ICAgICAgIGRhdGEtPmN1cnJlbnRfcHJvZmlsZV9zZXR0aW5nLm1jbGtfdXBfaHlzdCwNCi0gICAg ICAgICAgICAgICAgICAgICAgIGRhdGEtPmN1cnJlbnRfcHJvZmlsZV9zZXR0aW5nLm1jbGtfZG93 bl9oeXN0LA0KLSAgICAgICAgICAgICAgICAgICAgICAgZGF0YS0+Y3VycmVudF9wcm9maWxlX3Nl dHRpbmcubWNsa19hY3Rpdml0eSk7DQotDQogICAgICAgICByZXR1cm4gc2l6ZTsNCiB9DQoNCkBA IC00OTU3LDE2ICs0OTUxLDE2IEBAIHN0YXRpYyBpbnQgc211N19zZXRfcG93ZXJfcHJvZmlsZV9t b2RlKHN0cnVjdCBwcF9od21nciAqaHdtZ3IsIGxvbmcgKmlucHV0LCB1aW50DQogICAgICAgICAg ICAgICAgIGlmIChzaXplIDwgOCkNCiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gLUVJ TlZBTDsNCg0KLSAgICAgICAgICAgICAgIGRhdGEtPmN1c3RvbV9wcm9maWxlX3NldHRpbmcuYnVw ZGF0ZV9zY2xrID0gaW5wdXRbMF07DQotICAgICAgICAgICAgICAgZGF0YS0+Y3VzdG9tX3Byb2Zp bGVfc2V0dGluZy5zY2xrX3VwX2h5c3QgPSBpbnB1dFsxXTsNCi0gICAgICAgICAgICAgICBkYXRh LT5jdXN0b21fcHJvZmlsZV9zZXR0aW5nLnNjbGtfZG93bl9oeXN0ID0gaW5wdXRbMl07DQotICAg ICAgICAgICAgICAgZGF0YS0+Y3VzdG9tX3Byb2ZpbGVfc2V0dGluZy5zY2xrX2FjdGl2aXR5ID0g aW5wdXRbM107DQotICAgICAgICAgICAgICAgZGF0YS0+Y3VzdG9tX3Byb2ZpbGVfc2V0dGluZy5i dXBkYXRlX21jbGsgPSBpbnB1dFs0XTsNCi0gICAgICAgICAgICAgICBkYXRhLT5jdXN0b21fcHJv ZmlsZV9zZXR0aW5nLm1jbGtfdXBfaHlzdCA9IGlucHV0WzVdOw0KLSAgICAgICAgICAgICAgIGRh dGEtPmN1c3RvbV9wcm9maWxlX3NldHRpbmcubWNsa19kb3duX2h5c3QgPSBpbnB1dFs2XTsNCi0g ICAgICAgICAgICAgICBkYXRhLT5jdXN0b21fcHJvZmlsZV9zZXR0aW5nLm1jbGtfYWN0aXZpdHkg PSBpbnB1dFs3XTsNCi0gICAgICAgICAgICAgICBpZiAoIXNtdW1fdXBkYXRlX2RwbV9zZXR0aW5n cyhod21nciwgJmRhdGEtPmN1c3RvbV9wcm9maWxlX3NldHRpbmcpKSB7DQotICAgICAgICAgICAg ICAgICAgICAgICBtZW1jcHkoJmRhdGEtPmN1cnJlbnRfcHJvZmlsZV9zZXR0aW5nLCAmZGF0YS0+ Y3VzdG9tX3Byb2ZpbGVfc2V0dGluZywgc2l6ZW9mKHN0cnVjdCBwcm9maWxlX21vZGVfc2V0dGlu ZykpOw0KKyAgICAgICAgICAgICAgIHRtcC5idXBkYXRlX3NjbGsgPSBpbnB1dFswXTsNCisgICAg ICAgICAgICAgICB0bXAuc2Nsa191cF9oeXN0ID0gaW5wdXRbMV07DQorICAgICAgICAgICAgICAg dG1wLnNjbGtfZG93bl9oeXN0ID0gaW5wdXRbMl07DQorICAgICAgICAgICAgICAgdG1wLnNjbGtf YWN0aXZpdHkgPSBpbnB1dFszXTsNCisgICAgICAgICAgICAgICB0bXAuYnVwZGF0ZV9tY2xrID0g aW5wdXRbNF07DQorICAgICAgICAgICAgICAgdG1wLm1jbGtfdXBfaHlzdCA9IGlucHV0WzVdOw0K KyAgICAgICAgICAgICAgIHRtcC5tY2xrX2Rvd25faHlzdCA9IGlucHV0WzZdOw0KKyAgICAgICAg ICAgICAgIHRtcC5tY2xrX2FjdGl2aXR5ID0gaW5wdXRbN107DQorICAgICAgICAgICAgICAgaWYg KCFzbXVtX3VwZGF0ZV9kcG1fc2V0dGluZ3MoaHdtZ3IsICZ0bXApKSB7DQorICAgICAgICAgICAg ICAgICAgICAgICBtZW1jcHkoJmRhdGEtPmN1cnJlbnRfcHJvZmlsZV9zZXR0aW5nLCAmdG1wLCBz aXplb2Yoc3RydWN0IHByb2ZpbGVfbW9kZV9zZXR0aW5nKSk7DQogICAgICAgICAgICAgICAgICAg ICAgICAgaHdtZ3ItPnBvd2VyX3Byb2ZpbGVfbW9kZSA9IG1vZGU7DQogICAgICAgICAgICAgICAg IH0NCiAgICAgICAgICAgICAgICAgYnJlYWs7DQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2FtZC9wb3dlcnBsYXkvaHdtZ3Ivc211N19od21nci5oIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9w b3dlcnBsYXkvaHdtZ3Ivc211N19od21nci5oDQppbmRleCA1MWE3NzZlLi5jOTFlNzVkIDEwMDY0 NA0KLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9wb3dlcnBsYXkvaHdtZ3Ivc211N19od21nci5o DQorKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL3Bvd2VycGxheS9od21nci9zbXU3X2h3bWdyLmgN CkBAIC0zMjcsNyArMzI3LDYgQEAgc3RydWN0IHNtdTdfaHdtZ3Igew0KICAgICAgICAgdWludDE2 X3QgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZW1fbGF0ZW5jeV9oaWdoOw0KICAgICAg ICAgdWludDE2X3QgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZW1fbGF0ZW5jeV9sb3c7 DQogICAgICAgICB1aW50MzJfdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZyX2NvbmZp ZzsNCi0gICAgICAgc3RydWN0IHByb2ZpbGVfbW9kZV9zZXR0aW5nICAgICAgICAgICBjdXN0b21f cHJvZmlsZV9zZXR0aW5nOw0KICAgICAgICAgc3RydWN0IHByb2ZpbGVfbW9kZV9zZXR0aW5nICAg ICAgICAgICBjdXJyZW50X3Byb2ZpbGVfc2V0dGluZzsNCiB9Ow0KDQotLQ0KMS45LjENCg0KX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18NCmFtZC1nZnggbWFp bGluZyBsaXN0DQphbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZw0KaHR0cHM6Ly9saXN0cy5m cmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9hbWQtZ2Z4DQo= --_000_DM5PR1201MB248954DC7140FA95739627D2E49A0DM5PR1201MB2489_ Content-Type: text/html; charset="gb2312" Content-Transfer-Encoding: quoted-printable

Reviewed-by: Evan Quan <= evan.quan-5C7GfCeVMHo@public.gmane.org>


=B7=A2=BC=FE=C8=CB: amd-gfx= <amd-gfx-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org> =B4=FA=B1=ED Deucher, Alexan= der <Alexander.Deucher-5C7GfCeVMHo@public.gmane.org>
=B7=A2=CB=CD=CA=B1=BC=E4: 2018=C4=EA5=D4=C28=C8=D5 5:32:06
=CA=D5=BC=FE=C8=CB: Zhu, Rex; amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org
=D6=F7=CC=E2: Re: [PATCH] drm/amd/pp: Refine the output of pp_power_= profile_mode on VI
 

Acked-by: Alex Deucher <alexa= nder.deucher-5C7GfCeVMHo@public.gmane.org>


From: amd-gfx <amd-gfx= -bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org> on behalf of Rex Zhu <Rex.Zhu-5C7GfCeVMHo@public.gmane.org= >
Sent: Monday, May 7, 2018 2:37:42 AM
To: amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org
Cc: Zhu, Rex
Subject: [PATCH] drm/amd/pp: Refine the output of pp_power_profile_m= ode on VI
 
In order to keep consist with Vega,
the output format of the pp_power_profile_mode would be
<integer>  <mode name string>< =A1=B0*=A1=B1 if this is= the current profile>:"detail settings"
and remove the "CURRENT" mode line.

for example:
NUM        MODE_NAME   &n= bsp; SCLK_UP_HYST   SCLK_DOWN_HYST SCLK_ACTIVE_LEVEL  &= nbsp;  MCLK_UP_HYST   MCLK_DOWN_HYST MCLK_ACTIVE_LEVEL
  0   3D_FULL_SCREEN:      &nb= sp; 0           &nbs= p;  100          &nb= sp;    30        &nb= sp;       0     &nbs= p;        100    &nb= sp;          10
  1     POWER_SAVING:     = ;  10           = ;     0        =        30      =           -   &= nbsp;            -&n= bsp;            = ;   -
  2            = VIDEO:        -    &= nbsp;           - &n= bsp;            = ;  -           =     10         =       16       =         31
  3           &= nbsp;   VR:        0 &nbs= p;             = 11            &= nbsp;  50          &= nbsp;     0       &n= bsp;      100      &= nbsp;        10
  4          COMPUTE:&nbs= p;       0      = ;          5   =             30 =             &nb= sp;  -          &nbs= p;     -        = ;        -
  5         CUSTOM *: &nb= sp;      0      &nbs= p;         5    = ;           30  = ;            &n= bsp; 0           &nb= sp;  100          &n= bsp;    10
NUM        MODE_NAME   &n= bsp; SCLK_UP_HYST   SCLK_DOWN_HYST SCLK_ACTIVE_LEVEL  &= nbsp;  MCLK_UP_HYST   MCLK_DOWN_HYST MCLK_ACTIVE_LEVEL
  0   3D_FULL_SCREEN:      &nb= sp; 0           &nbs= p;  100          &nb= sp;    30        &nb= sp;       0     &nbs= p;        100    &nb= sp;          10
  1   POWER_SAVING *:       10=             &nb= sp;   0         &nbs= p;     30       &nbs= p;        0     = ;         100   &nbs= p;           10
  2            = VIDEO:        -    &= nbsp;           - &n= bsp;            = ;  -           =     10         =       16       =         31
  3           &= nbsp;   VR:        0 &nbs= p;             = 11            &= nbsp;  50          &= nbsp;     0       &n= bsp;      100      &= nbsp;        10
  4          COMPUTE:&nbs= p;       0      = ;          5   =             30 =             &nb= sp;  -          &nbs= p;     -        = ;        -
  5           CUSTOM= :        -     =            -  &= nbsp;           &nbs= p; -            = ;    -         =        -      &= nbsp;         -

Signed-off-by: Rex Zhu <Rex.Zhu-5C7GfCeVMHo@public.gmane.org>
---
 drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c | 52 +++= ++++++++-------------
 drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.h |  1 -
 2 files changed, 23 insertions(+), 30 deletions(-)

diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c b/drivers/gpu= /drm/amd/powerplay/hwmgr/smu7_hwmgr.c
index 4c94e7a..39e49ce 100644
--- a/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c
+++ b/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c
@@ -75,12 +75,13 @@
 #define PCIE_BUS_CLK        &= nbsp;       10000
 #define TCLK         &nb= sp;            =   (PCIE_BUS_CLK / 10)
 
-static const struct profile_mode_setting smu7_profiling[5] =3D
+static const struct profile_mode_setting smu7_profiling[6] =3D
            &nb= sp;            =             &nb= sp;   {{1, 0, 100, 30, 1, 0, 100, 10},
            &nb= sp;            =             &nb= sp;    {1, 10, 0, 30, 0, 0, 0, 0},
            &nb= sp;            =             &nb= sp;    {0, 0, 0, 0, 1, 10, 16, 31},
            &nb= sp;            =             &nb= sp;    {1, 0, 11, 50, 1, 0, 100, 10},
            &nb= sp;            =             &nb= sp;    {1, 0, 5, 30, 0, 0, 0, 0},
+           &nbs= p;            &= nbsp;           &nbs= p;   {0, 0, 0, 0, 0, 0, 0, 0},
            &nb= sp;            =             &nb= sp;   };
 
 #define PPSMC_MSG_SetVBITimeout_VEGAM    ((uint16_t) 0= x310)
@@ -4882,6 +4883,17 @@ static int smu7_get_power_profile_mode(struct pp= _hwmgr *hwmgr, char *buf)
         len =3D sizeof(smu7_profil= ing) / sizeof(struct profile_mode_setting);
 
         for (i =3D 0; i < len; = i++) {
+           &nbs= p;   if (i =3D=3D hwmgr->power_profile_mode) {
+           &nbs= p;           size += =3D sprintf(buf + size, "%3d %14s %s: %8d %16d %16d %16d %16d %16d= \n",
+           &nbs= p;           i, profile_n= ame[i], "*",
+           &nbs= p;           data->cur= rent_profile_setting.sclk_up_hyst,
+           &nbs= p;           data->cur= rent_profile_setting.sclk_down_hyst,
+           &nbs= p;           data->cur= rent_profile_setting.sclk_activity,
+           &nbs= p;           data->cur= rent_profile_setting.mclk_up_hyst,
+           &nbs= p;           data->cur= rent_profile_setting.mclk_down_hyst,
+           &nbs= p;           data->cur= rent_profile_setting.mclk_activity);
+           &nbs= p;           continue; +           &nbs= p;   }
            &nb= sp;    if (smu7_profiling[i].bupdate_sclk)
            &nb= sp;            size = +=3D sprintf(buf + size, "%3d %16s: %8d %16d %16d ",
            &nb= sp;            i, pr= ofile_name[i], smu7_profiling[i].sclk_up_hyst,
@@ -4901,24 +4913,6 @@ static int smu7_get_power_profile_mode(struct pp= _hwmgr *hwmgr, char *buf)
            &nb= sp;            "= ;-", "-", "-");
         }
 
-       size +=3D sprintf(buf + size,= "%3d %16s: %8d %16d %16d %16d %16d %16d\n",
-            &n= bsp;          i, profile_name[= i],
-            &n= bsp;          data->custom_= profile_setting.sclk_up_hyst,
-            &n= bsp;          data->custom_= profile_setting.sclk_down_hyst,
-            &n= bsp;          data->custom_= profile_setting.sclk_activity,
-            &n= bsp;          data->custom_= profile_setting.mclk_up_hyst,
-            &n= bsp;          data->custom_= profile_setting.mclk_down_hyst,
-            &n= bsp;          data->custom_= profile_setting.mclk_activity);
-
-       size +=3D sprintf(buf + size,= "%3s %16s: %8d %16d %16d %16d %16d %16d\n",
-            &n= bsp;          "*", &= quot;CURRENT",
-            &n= bsp;          data->current= _profile_setting.sclk_up_hyst,
-            &n= bsp;          data->current= _profile_setting.sclk_down_hyst,
-            &n= bsp;          data->current= _profile_setting.sclk_activity,
-            &n= bsp;          data->current= _profile_setting.mclk_up_hyst,
-            &n= bsp;          data->current= _profile_setting.mclk_down_hyst,
-            &n= bsp;          data->current= _profile_setting.mclk_activity);
-
         return size;
 }
 
@@ -4957,16 +4951,16 @@ static int smu7_set_power_profile_mode(struct p= p_hwmgr *hwmgr, long *input, uint
            &nb= sp;    if (size < 8)
            &nb= sp;            retur= n -EINVAL;
 
-            &n= bsp;  data->custom_profile_setting.bupdate_sclk =3D input[0];
-            &n= bsp;  data->custom_profile_setting.sclk_up_hyst =3D input[1];
-            &n= bsp;  data->custom_profile_setting.sclk_down_hyst =3D input[2];
-            &n= bsp;  data->custom_profile_setting.sclk_activity =3D input[3];
-            &n= bsp;  data->custom_profile_setting.bupdate_mclk =3D input[4];
-            &n= bsp;  data->custom_profile_setting.mclk_up_hyst =3D input[5];
-            &n= bsp;  data->custom_profile_setting.mclk_down_hyst =3D input[6];
-            &n= bsp;  data->custom_profile_setting.mclk_activity =3D input[7];
-            &n= bsp;  if (!smum_update_dpm_settings(hwmgr, &data->custom_profil= e_setting)) {
-            &n= bsp;          memcpy(&data= ->current_profile_setting, &data->custom_profile_setting, sizeof(= struct profile_mode_setting));
+           &nbs= p;   tmp.bupdate_sclk =3D input[0];
+           &nbs= p;   tmp.sclk_up_hyst =3D input[1];
+           &nbs= p;   tmp.sclk_down_hyst =3D input[2];
+           &nbs= p;   tmp.sclk_activity =3D input[3];
+           &nbs= p;   tmp.bupdate_mclk =3D input[4];
+           &nbs= p;   tmp.mclk_up_hyst =3D input[5];
+           &nbs= p;   tmp.mclk_down_hyst =3D input[6];
+           &nbs= p;   tmp.mclk_activity =3D input[7];
+           &nbs= p;   if (!smum_update_dpm_settings(hwmgr, &tmp)) {
+           &nbs= p;           memcpy(&= data->current_profile_setting, &tmp, sizeof(struct profile_mode_sett= ing));
            &nb= sp;            hwmgr= ->power_profile_mode =3D mode;
            &nb= sp;    }
            &nb= sp;    break;
diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.h b/drivers/gpu= /drm/amd/powerplay/hwmgr/smu7_hwmgr.h
index 51a776e..c91e75d 100644
--- a/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.h
+++ b/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.h
@@ -327,7 +327,6 @@ struct smu7_hwmgr {
         uint16_t   =             &nb= sp;            =   mem_latency_high;
         uint16_t   =             &nb= sp;            =   mem_latency_low;
         uint32_t   =             &nb= sp;            =   vr_config;
-       struct profile_mode_setting &nbs= p;         custom_profile_setting;<= br>          struct profile_mode_settin= g           current_profi= le_setting;
 };
 
--
1.9.1

_______________________________________________
amd-gfx mailing list
amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org
https://= lists.freedesktop.org/mailman/listinfo/amd-gfx
--_000_DM5PR1201MB248954DC7140FA95739627D2E49A0DM5PR1201MB2489_-- --===============1838056812== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KYW1kLWdmeCBt YWlsaW5nIGxpc3QKYW1kLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5m cmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9hbWQtZ2Z4Cg== --===============1838056812==--