From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ken Xue Subject: Re: [PATCH] amdgpu/drm: Refine the way to check atom bios Date: Tue, 20 Dec 2016 17:54:23 +0800 Message-ID: <20161220095422.GA5747@amd.com> References: Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: 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: Alex Deucher Cc: dl.SRDC_SW_GPUVirtualization-5C7GfCeVMHo@public.gmane.org, amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, Ken.Xue-5C7GfCeVMHo@public.gmane.org VGggMTIvMjAvMjAxNiAxMjowOSwgQWxleCBEZXVjaGVyIHdyb3RlOgo+IE9uIFR1ZSwgRGVjIDIw LCAyMDE2IGF0IDI6MjAgQU0sIFh1ZSwgS2VuIDxLZW4uWHVlQGFtZC5jb20+IHdyb3RlOgo+ID4g VGhlcmUgYXJlIHNldmVyYWwgd2F5cyB0byBjaGVjayBvdXQgYSBBVE9NQklPUy4gSW4gcHJldmlv dXMgY29kZXMsIHRyeQo+ID4gYSBuZXcgd2F5IHRvIGZldGNoIG91dCB2Ymlvcy9yb20sIHVudGls IGN1cnJlbnQgdmJpb3Mvcm9tIGlzIHN0YXJ0ZWQgd2l0aAo+ID4gMHg1NWFhLCB0aGVuIGNoZWNr IGlmIHRoaXMgdmJpb3MgaXMgQVRPTUJJT1MuIE5vdywgdHJ5IGEgbmV3IHdheSB0byBmZXRjaAo+ ID4gb3V0IHZiaW9zIHVudGlsIGFsbCBmbGFncyBvZiBBVE9NQklPUyBhcmUgdmVyaWZpZWQuCj4g Pgo+ID4gU2lnbmVkLW9mZi1ieTogS2VuIFh1ZSA8S2VuLlh1ZUBhbWQuY29tPgo+ID4gLS0tCj4g PiAgZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1LmggICAgICAgIHwgICAyICstCj4g PiAgZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2Jpb3MuYyAgIHwgMTUyICsrKysr KysrKysrKysrKystLS0tLS0tLS0tLS0tCj4gPiAgZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUv YW1kZ3B1X2RldmljZS5jIHwgIDEwICstCj4gPiAgMyBmaWxlcyBjaGFuZ2VkLCA4OSBpbnNlcnRp b25zKCspLCA3NSBkZWxldGlvbnMoLSkKPiA+Cj4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2FtZC9hbWRncHUvYW1kZ3B1LmggYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRn cHUuaAo+ID4gaW5kZXggYjdmNTIxYS4uZGQ4YWNiOSAxMDA2NDQKPiA+IC0tLSBhL2RyaXZlcnMv Z3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdS5oCj4gPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1k L2FtZGdwdS9hbWRncHUuaAo+ID4gQEAgLTMwNSw3ICszMDUsNyBAQCBzdHJ1Y3QgYW1kZ3B1X2lo X2Z1bmNzIHsKPiA+ICAvKgo+ID4gICAqIEJJT1MuCj4gPiAgICovCj4gPiAtYm9vbCBhbWRncHVf Z2V0X2Jpb3Moc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYpOwo+ID4gK2Jvb2wgYW1kZ3B1X2dl dF9hdG9tX2Jpb3Moc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYpOwo+IAo+IE5vIG5lZWQgdG8g Y2hhbmdlIHRoZSBuYW1lIG9mIHRoaXMgZnVuY3Rpb24gaW4gbXkgb3BpbmlvbiwgYnV0IEknbSBv awo+IGVpdGhlciB3YXkuCj4gCgpPay4gSSB3aWxsIHJldmVydCB0aGUgbmFtZSBvZiB0aGUgZnVu Y3Rpb24uCgo+ID4gIGJvb2wgYW1kZ3B1X3JlYWRfYmlvcyhzdHJ1Y3QgYW1kZ3B1X2RldmljZSAq YWRldik7Cj4gPgo+ID4gIC8qCj4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9h bWRncHUvYW1kZ3B1X2Jpb3MuYyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9i aW9zLmMKPiA+IGluZGV4IDRmOTczYTkuLjg2ZTdiNDMgMTAwNjQ0Cj4gPiAtLS0gYS9kcml2ZXJz L2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfYmlvcy5jCj4gPiArKysgYi9kcml2ZXJzL2dwdS9k cm0vYW1kL2FtZGdwdS9hbWRncHVfYmlvcy5jCj4gPiBAQCAtNDIsNiArNDIsNDQgQEAKPiA+ICAj ZGVmaW5lIEFNRF9JU19WQUxJRF9WQklPUyhwKSAoKHApWzBdID09IDB4NTUgJiYgKHApWzFdID09 IDB4QUEpCj4gPiAgI2RlZmluZSBBTURfVkJJT1NfTEVOR1RIKHApICgocClbMl0gPDwgOSkKPiA+ Cj4gPiArLyogQ2hlY2sgaWYgY3VycmVudCBiaW9zIGlzIGFuIEFUT00gQklPUy4KPiA+ICsgKiBS ZXR1cm4gdHJ1ZSBpZiBpdCBpcyBBVE9NIEJJT1MuIE90aGVyd2lzZSwgcmV0dXJuIGZhbHNlLgo+ ID4gKyAqLwo+ID4gK3N0YXRpYyBib29sIGNoZWNrX2F0b21fYmlvcyh1aW50OF90IF9faW9tZW0g KmJpb3MsIHNpemVfdCBzaXplKQo+ID4gK3sKPiA+ICsgICAgICAgdWludDE2X3QgdG1wLCBiaW9z X2hlYWRlcl9zdGFydDsKPiA+ICsKPiA+ICsgICAgICAgaWYgKCFiaW9zIHx8IHNpemUgPCAweDQ5 KSB7Cj4gPiArICAgICAgICAgICAgICAgRFJNX0lORk8oInZiaW9zIG1lbSBpcyBudWxsIG9yIG1l bSBzaXplIGlzIHdyb25nXG4iKTsKPiA+ICsgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7Cj4g PiArICAgICAgIH0KPiA+ICsKPiA+ICsgICAgICAgaWYgKCFBTURfSVNfVkFMSURfVkJJT1MoYmlv cykpIHsKPiA+ICsgICAgICAgICAgICAgICBEUk1fSU5GTygiQklPUyBzaWduYXR1cmUgaW5jb3Jy ZWN0ICV4ICV4XG4iLCBiaW9zWzBdLCBiaW9zWzFdKTsKPiA+ICsgICAgICAgICAgICAgICByZXR1 cm4gZmFsc2U7Cj4gPiArICAgICAgIH0KPiA+ICsKPiA+ICsgICAgICAgdG1wID0gYmlvc1sweDE4 XSB8IChiaW9zWzB4MTldIDw8IDgpOwo+ID4gKyAgICAgICBpZiAoYmlvc1t0bXAgKyAweDE0XSAh PSAweDApIHsKPiA+ICsgICAgICAgICAgICAgICBEUk1fSU5GTygiTm90IGFuIHg4NiBCSU9TIFJP TVxuIik7Cj4gPiArICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwo+ID4gKyAgICAgICB9Cj4g PiArCj4gPiArICAgICAgIGJpb3NfaGVhZGVyX3N0YXJ0ID0gYmlvc1sweDQ4XSB8IChiaW9zWzB4 NDldIDw8IDgpOwo+ID4gKyAgICAgICBpZiAoIWJpb3NfaGVhZGVyX3N0YXJ0KSB7Cj4gPiArICAg ICAgICAgICAgICAgRFJNX0lORk8oIkNhbid0IGxvY2F0ZSBiaW9zIGhlYWRlclxuIik7Cj4gPiAr ICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwo+ID4gKyAgICAgICB9Cj4gPiArICAgICAgIHRt cCA9IGJpb3NfaGVhZGVyX3N0YXJ0ICsgNDsKPiA+ICsgICAgICAgaWYgKCFtZW1jbXAoYmlvcyAr IHRtcCwgIkFUT00iLCA0KSB8fAo+ID4gKyAgICAgICAgICAgIW1lbWNtcChiaW9zICsgdG1wLCAi TU9UQSIsIDQpIHx8Cj4gPiArICAgICAgICAgICAoc2l6ZSA8IHRtcCkpCj4gPiArICAgICAgICAg ICAgICAgcmV0dXJuIHRydWU7Cj4gPiArCj4gPiArICAgICAgIHJldHVybiBmYWxzZTsKPiA+ICt9 Cj4gPiArCj4gPiArCj4gPiAgLyogSWYgeW91IGJvb3QgYW4gSUdQIGJvYXJkIHdpdGggYSBkaXNj cmV0ZSBjYXJkIGFzIHRoZSBwcmltYXJ5LAo+ID4gICAqIHRoZSBJR1Agcm9tIGlzIG5vdCBhY2Nl c3NpYmxlIHZpYSB0aGUgcm9tIGJhciBhcyB0aGUgSUdQIHJvbSBpcwo+ID4gICAqIHBhcnQgb2Yg dGhlIHN5c3RlbSBiaW9zLiAgT24gYm9vdCwgdGhlIHN5c3RlbSBiaW9zIHB1dHMgYQo+ID4gQEAg LTY1LDcgKzEwMyw3IEBAIHN0YXRpYyBib29sIGlncF9yZWFkX2Jpb3NfZnJvbV92cmFtKHN0cnVj dCBhbWRncHVfZGV2aWNlICphZGV2KQo+ID4gICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsK PiA+ICAgICAgICAgfQo+ID4KPiA+IC0gICAgICAgaWYgKHNpemUgPT0gMCB8fCAhQU1EX0lTX1ZB TElEX1ZCSU9TKGJpb3MpKSB7Cj4gPiArICAgICAgIGlmICghY2hlY2tfYXRvbV9iaW9zKGJpb3Ms IHNpemUpKSB7Cj4gPiAgICAgICAgICAgICAgICAgaW91bm1hcChiaW9zKTsKPiA+ICAgICAgICAg ICAgICAgICByZXR1cm4gZmFsc2U7Cj4gPiAgICAgICAgIH0KPiA+IEBAIC04Miw3ICsxMjAsNyBA QCBzdGF0aWMgYm9vbCBpZ3BfcmVhZF9iaW9zX2Zyb21fdnJhbShzdHJ1Y3QgYW1kZ3B1X2Rldmlj ZSAqYWRldikKPiA+Cj4gPiAgYm9vbCBhbWRncHVfcmVhZF9iaW9zKHN0cnVjdCBhbWRncHVfZGV2 aWNlICphZGV2KQo+ID4gIHsKPiA+IC0gICAgICAgdWludDhfdCBfX2lvbWVtICpiaW9zLCB2YWxb Ml07Cj4gPiArICAgICAgIHVpbnQ4X3QgX19pb21lbSAqYmlvczsKPiA+ICAgICAgICAgc2l6ZV90 IHNpemU7Cj4gPgo+ID4gICAgICAgICBhZGV2LT5iaW9zID0gTlVMTDsKPiA+IEBAIC05MiwxMCAr MTMwLDcgQEAgYm9vbCBhbWRncHVfcmVhZF9iaW9zKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2 KQo+ID4gICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKPiA+ICAgICAgICAgfQo+ID4KPiA+ IC0gICAgICAgdmFsWzBdID0gcmVhZGIoJmJpb3NbMF0pOwo+ID4gLSAgICAgICB2YWxbMV0gPSBy ZWFkYigmYmlvc1sxXSk7Cj4gCj4gV2UgbmVlZCB0byB1c2UgaW8gYWNjZXNzb3JzIG9uIHNvbWUg cGxhdGZvcm1zIHJhdGhlciB0aGFuIGFjY2Vzc2luZwo+IG1lbW9yeSBkaXJlY3RseSBmb3IgcGNp ZSByZXNvdXJjZXMuICBUaGlzIHNob3VsZCBiZSBwcmVzZXZlZC4KPiAKPiBBbGV4Cj4gCgpTdXJl LCBVbmRlcnN0YW5kIGl0LiBBbmQgSSBjYW4gc2VlIHRoYXQgc29tZSBwYXJ0IG9mIHRoZSBvcmln aW5hbCBmaWxlIGFsc28KZG9lcyBub3QgdXNlICJyZWFkYiIgdG8gYWNjZXNzIGlvbWVtLCBJIHdp bGwgc2VuZCBhIG5ldyBwYXRjaCBmb3Iga2VlcCBzYW1lCmNvZGluZyBzdHlsZSBmb3IgdGhlIGZp bGUgYW1kZ3B1X2Jpb3MuYy4KClJlZ2FyZHMsCktlbgpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwphbWQtZ2Z4IG1haWxpbmcgbGlzdAphbWQtZ2Z4QGxpc3Rz LmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xp c3RpbmZvL2FtZC1nZngK