From: Tvrtko Ursulin Subject: [RFC 6/7] drm/i915: Introduce subplatform concept Date: Mon, 12 Nov 2018 17:12:41 +0000 Message-ID: <20181112171242.7640-7-tvrtko.ursulin@linux.intel.com> References: <20181112171242.7640-1-tvrtko.ursulin@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTPS id 412526E0A5 for ; Mon, 12 Nov 2018 17:12:55 +0000 (UTC) In-Reply-To: <20181112171242.7640-1-tvrtko.ursulin@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Intel-gfx@lists.freedesktop.org Cc: Jani Nikula List-Id: intel-gfx@lists.freedesktop.org RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KCkludHJvZHVj ZSBzdWJwbGF0Zm9ybSBtYXNrIHRvIGVsaW1pbmF0ZSB0aHJvdWdob3V0IHRoZSBjb2RlIGRldmlk IGNoZWNraW5nCnNwcmlua2xlLCBtb3N0bHkgY291cnRlc3kgb2YgSVNfKl9VTFtUWF0gbWFjcm9z LgoKU3VicGxhdGZvcm0gbWFzayBpbml0aWFsaXphdGlvbiBpcyBkb25lIGF0IHJ1bnRpbWUgZGV2 aWNlIGluZm8gaW5pdC4KCnYyOiBGaXhlZCBJU19TVUJQTEFURk9STS4gVXBkYXRlZCBjb21taXQg bXNnLgp2MzogQ2hyaXMgd2FzIHJpZ2h0LCB0aGVyZSBpcyBhbiBvcmRlcmluZyBwcm9ibGVtLgp2 NDogRHJvcCBtYXNrIHNoYXJpbmcsIHJlbmFtZSB0aXRsZSwgcmViYXNlLgoKU2lnbmVkLW9mZi1i eTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KU3VnZ2VzdGVkLWJ5 OiBDaHJpcyBXaWxzb24gPGNocmlzQGNocmlzLXdpbHNvbi5jby51az4KQ2M6IENocmlzIFdpbHNv biA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgpDYzogSmFuaSBOaWt1bGEgPGphbmkubmlrdWxh QGludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5jICAgICAgICAg IHwgIDIgKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCAgICAgICAgICB8IDU5ICsr KysrKysrKy0tLS0tLS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGV2aWNlX2lu Zm8uYyB8IDY1ICsrKysrKysrKysrKysrKysrKysrKysrKwogZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZGV2aWNlX2luZm8uaCB8IDE4ICsrKysrKysKIDQgZmlsZXMgY2hhbmdlZCwgMTA4IGlu c2VydGlvbnMoKyksIDM2IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZHJ2LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5jCmluZGV4 IDRmNWRkYzNkMmY0ZC4uMTRjMTk5NDM4OTc4IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2Rydi5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmMKQEAg LTE2ODgsNiArMTY4OCw4IEBAIGk5MTVfZHJpdmVyX2NyZWF0ZShzdHJ1Y3QgcGNpX2RldiAqcGRl diwgY29uc3Qgc3RydWN0IHBjaV9kZXZpY2VfaWQgKmVudCkKIAlydW50aW1lX2luZm8tPmdlbl9t YXNrID0gQklUKElOVEVMX0dFTihpOTE1KSAtIDEpOwogCXJ1bnRpbWVfaW5mby0+cGxhdGZvcm1f bWFzayA9IEJJVChkZXZpY2VfaW5mby0+cGxhdGZvcm0pOwogCisJaW50ZWxfZGV2aWNlX2luZm9f c3VicGxhdGZvcm1faW5pdChpOTE1KTsKKwogCXJldHVybiBpOTE1OwogfQogCmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9kcnYuaAppbmRleCAyODM1OTJkZDcwMjMuLjRlYzRhNjMwOGZlNCAxMDA2NDQKLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2Rydi5oCkBAIC0yMzc3LDYgKzIzNzcsMTAgQEAgc3RhdGljIGlubGluZSB1bnNpZ25l ZCBpbnQgaTkxNV9zZ19zZWdtZW50X3NpemUodm9pZCkKIAogI2RlZmluZSBJU19QTEFURk9STShk ZXZfcHJpdiwgcCkgXAogCSgoZGV2X3ByaXYpLT5ydW50aW1lX2luZm8ucGxhdGZvcm1fbWFzayAm IEJJVChwKSkKKyNkZWZpbmUgSVNfU1VCUExBVEZPUk0oZGV2X3ByaXYsIHAsIHMpIFwKKwkoSVNf UExBVEZPUk0oZGV2X3ByaXYsIHApICYmIFwKKwkgKChkZXZfcHJpdiktPnJ1bnRpbWVfaW5mby5z dWJwbGF0Zm9ybV9tYXNrICYgXAorCSAgQklUKElOVEVMX1NVQlBMQVRGT1JNXyMjcykpKQogCiAj ZGVmaW5lIElTX0k4MzAoZGV2X3ByaXYpCUlTX1BMQVRGT1JNKGRldl9wcml2LCBJTlRFTF9JODMw KQogI2RlZmluZSBJU19JODQ1RyhkZXZfcHJpdikJSVNfUExBVEZPUk0oZGV2X3ByaXYsIElOVEVM X0k4NDVHKQpAQCAtMjM5MSwxMSArMjM5NSwxNSBAQCBzdGF0aWMgaW5saW5lIHVuc2lnbmVkIGlu dCBpOTE1X3NnX3NlZ21lbnRfc2l6ZSh2b2lkKQogI2RlZmluZSBJU19HNDUoZGV2X3ByaXYpCUlT X1BMQVRGT1JNKGRldl9wcml2LCBJTlRFTF9HNDUpCiAjZGVmaW5lIElTX0dNNDUoZGV2X3ByaXYp CUlTX1BMQVRGT1JNKGRldl9wcml2LCBJTlRFTF9HTTQ1KQogI2RlZmluZSBJU19HNFgoZGV2X3By aXYpCShJU19HNDUoZGV2X3ByaXYpIHx8IElTX0dNNDUoZGV2X3ByaXYpKQotI2RlZmluZSBJU19Q SU5FVklFV19HKGRldl9wcml2KQkoSU5URUxfREVWSUQoZGV2X3ByaXYpID09IDB4YTAwMSkKLSNk ZWZpbmUgSVNfUElORVZJRVdfTShkZXZfcHJpdikJKElOVEVMX0RFVklEKGRldl9wcml2KSA9PSAw eGEwMTEpCisjZGVmaW5lIElTX1BJTkVWSUVXX0coZGV2X3ByaXYpCVwKKwlJU19TVUJQTEFURk9S TShkZXZfcHJpdiwgSU5URUxfUElORVZJRVcsIFBJTkVWSUVXX0cpCisjZGVmaW5lIElTX1BJTkVW SUVXX00oZGV2X3ByaXYpCVwKKwlJU19TVUJQTEFURk9STShkZXZfcHJpdiwgSU5URUxfUElORVZJ RVcsIFBJTkVWSUVXX00pCiAjZGVmaW5lIElTX1BJTkVWSUVXKGRldl9wcml2KQlJU19QTEFURk9S TShkZXZfcHJpdiwgSU5URUxfUElORVZJRVcpCiAjZGVmaW5lIElTX0czMyhkZXZfcHJpdikJSVNf UExBVEZPUk0oZGV2X3ByaXYsIElOVEVMX0czMykKLSNkZWZpbmUgSVNfSVJPTkxBS0VfTShkZXZf cHJpdikJKElOVEVMX0RFVklEKGRldl9wcml2KSA9PSAweDAwNDYpCisjZGVmaW5lIElTX0lST05M QUtFKGRldl9wcml2KQlJU19QTEFURk9STShkZXZfcHJpdiwgSU5URUxfSVJPTkxBS0UpCisjZGVm aW5lIElTX0lST05MQUtFX00oZGV2X3ByaXYpCVwKKwlJU19TVUJQTEFURk9STShkZXZfcHJpdiwg SU5URUxfSVJPTkxBS0UsIElST05MQUtFX00pCiAjZGVmaW5lIElTX0lWWUJSSURHRShkZXZfcHJp dikJSVNfUExBVEZPUk0oZGV2X3ByaXYsIElOVEVMX0lWWUJSSURHRSkKICNkZWZpbmUgSVNfSVZC X0dUMShkZXZfcHJpdikJKElTX0lWWUJSSURHRShkZXZfcHJpdikgJiYgXAogCQkJCSBJTlRFTF9J TkZPKGRldl9wcml2KS0+Z3QgPT0gMSkKQEAgLTI0MTMsNDAgKzI0MjEsMjAgQEAgc3RhdGljIGlu bGluZSB1bnNpZ25lZCBpbnQgaTkxNV9zZ19zZWdtZW50X3NpemUodm9pZCkKICNkZWZpbmUgSVNf TU9CSUxFKGRldl9wcml2KQkoSU5URUxfSU5GTyhkZXZfcHJpdiktPmlzX21vYmlsZSkKICNkZWZp bmUgSVNfSFNXX0VBUkxZX1NEVihkZXZfcHJpdikgKElTX0hBU1dFTEwoZGV2X3ByaXYpICYmIFwK IAkJCQkgICAgKElOVEVMX0RFVklEKGRldl9wcml2KSAmIDB4RkYwMCkgPT0gMHgwQzAwKQotI2Rl ZmluZSBJU19CRFdfVUxUKGRldl9wcml2KQkoSVNfQlJPQURXRUxMKGRldl9wcml2KSAmJiBcCi0J CQkJICgoSU5URUxfREVWSUQoZGV2X3ByaXYpICYgMHhmKSA9PSAweDYgfHwJXAotCQkJCSAoSU5U RUxfREVWSUQoZGV2X3ByaXYpICYgMHhmKSA9PSAweGIgfHwJXAotCQkJCSAoSU5URUxfREVWSUQo ZGV2X3ByaXYpICYgMHhmKSA9PSAweGUpKQotLyogVUxYIG1hY2hpbmVzIGFyZSBhbHNvIGNvbnNp ZGVyZWQgVUxULiAqLwotI2RlZmluZSBJU19CRFdfVUxYKGRldl9wcml2KQkoSVNfQlJPQURXRUxM KGRldl9wcml2KSAmJiBcCi0JCQkJIChJTlRFTF9ERVZJRChkZXZfcHJpdikgJiAweGYpID09IDB4 ZSkKKyNkZWZpbmUgSVNfQkRXX1VMVChkZXZfcHJpdikJSVNfU1VCUExBVEZPUk0oZGV2X3ByaXYs IElOVEVMX0JST0FEV0VMTCwgVUxUKQorI2RlZmluZSBJU19CRFdfVUxYKGRldl9wcml2KQlJU19T VUJQTEFURk9STShkZXZfcHJpdiwgSU5URUxfQlJPQURXRUxMLCBVTFgpCiAjZGVmaW5lIElTX0JE V19HVDMoZGV2X3ByaXYpCShJU19CUk9BRFdFTEwoZGV2X3ByaXYpICYmIFwKIAkJCQkgSU5URUxf SU5GTyhkZXZfcHJpdiktPmd0ID09IDMpCi0jZGVmaW5lIElTX0hTV19VTFQoZGV2X3ByaXYpCShJ U19IQVNXRUxMKGRldl9wcml2KSAmJiBcCi0JCQkJIChJTlRFTF9ERVZJRChkZXZfcHJpdikgJiAw eEZGMDApID09IDB4MEEwMCkKKyNkZWZpbmUgSVNfSFNXX1VMVChkZXZfcHJpdikJSVNfU1VCUExB VEZPUk0oZGV2X3ByaXYsIElOVEVMX0hBU1dFTEwsIFVMVCkKICNkZWZpbmUgSVNfSFNXX0dUMyhk ZXZfcHJpdikJKElTX0hBU1dFTEwoZGV2X3ByaXYpICYmIFwKIAkJCQkgSU5URUxfSU5GTyhkZXZf cHJpdiktPmd0ID09IDMpCiAvKiBVTFggbWFjaGluZXMgYXJlIGFsc28gY29uc2lkZXJlZCBVTFQu ICovCi0jZGVmaW5lIElTX0hTV19VTFgoZGV2X3ByaXYpCShJTlRFTF9ERVZJRChkZXZfcHJpdikg PT0gMHgwQTBFIHx8IFwKLQkJCQkgSU5URUxfREVWSUQoZGV2X3ByaXYpID09IDB4MEExRSkKLSNk ZWZpbmUgSVNfU0tMX1VMVChkZXZfcHJpdikJKElOVEVMX0RFVklEKGRldl9wcml2KSA9PSAweDE5 MDYgfHwgXAotCQkJCSBJTlRFTF9ERVZJRChkZXZfcHJpdikgPT0gMHgxOTEzIHx8IFwKLQkJCQkg SU5URUxfREVWSUQoZGV2X3ByaXYpID09IDB4MTkxNiB8fCBcCi0JCQkJIElOVEVMX0RFVklEKGRl dl9wcml2KSA9PSAweDE5MjEgfHwgXAotCQkJCSBJTlRFTF9ERVZJRChkZXZfcHJpdikgPT0gMHgx OTI2KQotI2RlZmluZSBJU19TS0xfVUxYKGRldl9wcml2KQkoSU5URUxfREVWSUQoZGV2X3ByaXYp ID09IDB4MTkwRSB8fCBcCi0JCQkJIElOVEVMX0RFVklEKGRldl9wcml2KSA9PSAweDE5MTUgfHwg XAotCQkJCSBJTlRFTF9ERVZJRChkZXZfcHJpdikgPT0gMHgxOTFFKQotI2RlZmluZSBJU19LQkxf VUxUKGRldl9wcml2KQkoSU5URUxfREVWSUQoZGV2X3ByaXYpID09IDB4NTkwNiB8fCBcCi0JCQkJ IElOVEVMX0RFVklEKGRldl9wcml2KSA9PSAweDU5MTMgfHwgXAotCQkJCSBJTlRFTF9ERVZJRChk ZXZfcHJpdikgPT0gMHg1OTE2IHx8IFwKLQkJCQkgSU5URUxfREVWSUQoZGV2X3ByaXYpID09IDB4 NTkyMSB8fCBcCi0JCQkJIElOVEVMX0RFVklEKGRldl9wcml2KSA9PSAweDU5MjYpCi0jZGVmaW5l IElTX0tCTF9VTFgoZGV2X3ByaXYpCShJTlRFTF9ERVZJRChkZXZfcHJpdikgPT0gMHg1OTBFIHx8 IFwKLQkJCQkgSU5URUxfREVWSUQoZGV2X3ByaXYpID09IDB4NTkxNSB8fCBcCi0JCQkJIElOVEVM X0RFVklEKGRldl9wcml2KSA9PSAweDU5MUUpCi0jZGVmaW5lIElTX0FNTF9VTFgoZGV2X3ByaXYp CShJTlRFTF9ERVZJRChkZXZfcHJpdikgPT0gMHg1OTFDIHx8IFwKLQkJCQkgSU5URUxfREVWSUQo ZGV2X3ByaXYpID09IDB4ODdDMCkKKyNkZWZpbmUgSVNfSFNXX1VMWChkZXZfcHJpdikJSVNfU1VC UExBVEZPUk0oZGV2X3ByaXYsIElOVEVMX0hBU1dFTEwsIFVMWCkKKyNkZWZpbmUgSVNfU0tMX1VM VChkZXZfcHJpdikJSVNfU1VCUExBVEZPUk0oZGV2X3ByaXYsIElOVEVMX1NLWUxBS0UsIFVMVCkK KyNkZWZpbmUgSVNfU0tMX1VMWChkZXZfcHJpdikJSVNfU1VCUExBVEZPUk0oZGV2X3ByaXYsIElO VEVMX1NLWUxBS0UsIFVMWCkKKyNkZWZpbmUgSVNfS0JMX1VMVChkZXZfcHJpdikJSVNfU1VCUExB VEZPUk0oZGV2X3ByaXYsIElOVEVMX0tBQllMQUtFLCBVTFQpCisjZGVmaW5lIElTX0tCTF9VTFgo ZGV2X3ByaXYpCUlTX1NVQlBMQVRGT1JNKGRldl9wcml2LCBJTlRFTF9LQUJZTEFLRSwgVUxYKQor I2RlZmluZSBJU19BTUxfVUxYKGRldl9wcml2KQlJU19TVUJQTEFURk9STShkZXZfcHJpdiwgSU5U RUxfS0FCWUxBS0UsIEFNTCkKICNkZWZpbmUgSVNfU0tMX0dUMihkZXZfcHJpdikJKElTX1NLWUxB S0UoZGV2X3ByaXYpICYmIFwKIAkJCQkgSU5URUxfSU5GTyhkZXZfcHJpdiktPmd0ID09IDIpCiAj ZGVmaW5lIElTX1NLTF9HVDMoZGV2X3ByaXYpCShJU19TS1lMQUtFKGRldl9wcml2KSAmJiBcCkBA IC0yNDU3LDE0ICsyNDQ1LDEzIEBAIHN0YXRpYyBpbmxpbmUgdW5zaWduZWQgaW50IGk5MTVfc2df c2VnbWVudF9zaXplKHZvaWQpCiAJCQkJIElOVEVMX0lORk8oZGV2X3ByaXYpLT5ndCA9PSAyKQog I2RlZmluZSBJU19LQkxfR1QzKGRldl9wcml2KQkoSVNfS0FCWUxBS0UoZGV2X3ByaXYpICYmIFwK IAkJCQkgSU5URUxfSU5GTyhkZXZfcHJpdiktPmd0ID09IDMpCi0jZGVmaW5lIElTX0NGTF9VTFQo ZGV2X3ByaXYpCShJU19DT0ZGRUVMQUtFKGRldl9wcml2KSAmJiBcCi0JCQkJIChJTlRFTF9ERVZJ RChkZXZfcHJpdikgJiAweDAwRjApID09IDB4MDBBMCkKKyNkZWZpbmUgSVNfQ0ZMX1VMVChkZXZf cHJpdikJSVNfU1VCUExBVEZPUk0oZGV2X3ByaXYsIElOVEVMX0NPRkZFRUxBS0UsIFVMVCkKICNk ZWZpbmUgSVNfQ0ZMX0dUMihkZXZfcHJpdikJKElTX0NPRkZFRUxBS0UoZGV2X3ByaXYpICYmIFwK IAkJCQkgSU5URUxfSU5GTyhkZXZfcHJpdiktPmd0ID09IDIpCiAjZGVmaW5lIElTX0NGTF9HVDMo ZGV2X3ByaXYpCShJU19DT0ZGRUVMQUtFKGRldl9wcml2KSAmJiBcCiAJCQkJIElOVEVMX0lORk8o ZGV2X3ByaXYpLT5ndCA9PSAzKQotI2RlZmluZSBJU19DTkxfV0lUSF9QT1JUX0YoZGV2X3ByaXYp ICAgKElTX0NBTk5PTkxBS0UoZGV2X3ByaXYpICYmIFwKLQkJCQkJKElOVEVMX0RFVklEKGRldl9w cml2KSAmIDB4MDAwNCkgPT0gMHgwMDA0KQorI2RlZmluZSBJU19DTkxfV0lUSF9QT1JUX0YoZGV2 X3ByaXYpIFwKKwlJU19TVUJQTEFURk9STShkZXZfcHJpdiwgSU5URUxfQ0FOTk9OTEFLRSwgUE9S VEYpCiAKICNkZWZpbmUgSVNfQUxQSEFfU1VQUE9SVChpbnRlbF9pbmZvKSAoKGludGVsX2luZm8p LT5pc19hbHBoYV9zdXBwb3J0KQogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9kZXZpY2VfaW5mby5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGV2aWNlX2lu Zm8uYwppbmRleCAwMDc1OGQxMTA0N2IuLmI5ZDA4NDI4ZjM1YiAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfZGV2aWNlX2luZm8uYworKysgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9kZXZpY2VfaW5mby5jCkBAIC0xMTgsNiArMTE4LDggQEAgaW50ZWxfZGV2aWNl X2luZm9fZHVtcF9ydW50aW1lKGNvbnN0IHN0cnVjdCBpbnRlbF9ydW50aW1lX2RldmljZV9pbmZv ICppbmZvLAogCWRybV9wcmludGYocCwgIkNTIHRpbWVzdGFtcCBmcmVxdWVuY3k6ICV1IGtIelxu IiwKIAkJICAgaW5mby0+Y3NfdGltZXN0YW1wX2ZyZXF1ZW5jeV9raHopOwogCisJZHJtX3ByaW50 ZihwLCAiU3VicGxhdGZvcm0gbWFzazogJXhcbiIsIGluZm8tPnN1YnBsYXRmb3JtX21hc2spOwor CiAJaW50ZWxfcnVudGltZV9kZXZpY2VfaW5mb19kdW1wX2ZsYWdzKGluZm8sIHApOwogfQogCkBA IC03MjcsNiArNzI5LDY5IEBAIHN0YXRpYyB1MzIgcmVhZF90aW1lc3RhbXBfZnJlcXVlbmN5KHN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIAlyZXR1cm4gMDsKIH0KIAordm9pZCBp bnRlbF9kZXZpY2VfaW5mb19zdWJwbGF0Zm9ybV9pbml0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRl ICppOTE1KQoreworCXN0cnVjdCBpbnRlbF9ydW50aW1lX2RldmljZV9pbmZvICppbmZvID0gJmk5 MTUtPnJ1bnRpbWVfaW5mbzsKKwl1MTYgZGV2aWQgPSBJTlRFTF9ERVZJRChpOTE1KTsKKworCWlm IChJU19QSU5FVklFVyhpOTE1KSkgeworCQlpZiAoZGV2aWQgPT0gMHhhMDAxKQorCQkJaW5mby0+ c3VicGxhdGZvcm1fbWFzayA9CisJCQkJQklUKElOVEVMX1NVQlBMQVRGT1JNX1BJTkVWSUVXX0cp OworCQllbHNlIGlmIChkZXZpZCA9PSAweGEwMTEpCisJCQlpbmZvLT5zdWJwbGF0Zm9ybV9tYXNr ID0KKwkJCQlCSVQoSU5URUxfU1VCUExBVEZPUk1fUElORVZJRVdfTSk7CisJfSBlbHNlIGlmIChJ U19JUk9OTEFLRShpOTE1KSAmJiBkZXZpZCA9PSAweDAwNDYpIHsKKwkJCWluZm8tPnN1YnBsYXRm b3JtX21hc2sgPQorCQkJCUJJVChJTlRFTF9TVUJQTEFURk9STV9JUk9OTEFLRV9NKTsKKwl9IGVs c2UgaWYgKElTX0hBU1dFTEwoaTkxNSkpIHsKKwkJaWYgKChkZXZpZCAmIDB4RkYwMCkgPT0gMHgw QTAwKQorCQkJaW5mby0+c3VicGxhdGZvcm1fbWFzayA9IEJJVChJTlRFTF9TVUJQTEFURk9STV9V TFQpOworCQkvKiBVTFggbWFjaGluZXMgYXJlIGFsc28gY29uc2lkZXJlZCBVTFQuICovCisJCWlm IChkZXZpZCA9PSAweDBBMEUgfHwgZGV2aWQgPT0gMHgwQTFFKQorCQkJaW5mby0+c3VicGxhdGZv cm1fbWFzayB8PSBCSVQoSU5URUxfU1VCUExBVEZPUk1fVUxYKTsKKwl9IGVsc2UgaWYgKElTX0JS T0FEV0VMTChpOTE1KSkgeworCQlpZiAoKGRldmlkICYgMHhmKSA9PSAweDYgfHwKKwkJICAgIChk ZXZpZCAmIDB4ZikgPT0gMHhiIHx8CisJCSAgICAoZGV2aWQgJiAweGYpID09IDB4ZSkKKwkJCWlu Zm8tPnN1YnBsYXRmb3JtX21hc2sgPSBCSVQoSU5URUxfU1VCUExBVEZPUk1fVUxUKTsKKwkJLyog VUxYIG1hY2hpbmVzIGFyZSBhbHNvIGNvbnNpZGVyZWQgVUxULiAqLworCQlpZiAoKGRldmlkICYg MHhmKSA9PSAweGUpCisJCQlpbmZvLT5zdWJwbGF0Zm9ybV9tYXNrIHw9IEJJVChJTlRFTF9TVUJQ TEFURk9STV9VTFgpOworCX0gZWxzZSBpZiAoSVNfU0tZTEFLRShpOTE1KSkgeworCQlpZiAoZGV2 aWQgPT0gMHgxOTA2IHx8CisJCSAgICBkZXZpZCA9PSAweDE5MTMgfHwKKwkJICAgIGRldmlkID09 IDB4MTkxNiB8fAorCQkgICAgZGV2aWQgPT0gMHgxOTIxIHx8CisJCSAgICBkZXZpZCA9PSAweDE5 MjYpCisJCQlpbmZvLT5zdWJwbGF0Zm9ybV9tYXNrID0gQklUKElOVEVMX1NVQlBMQVRGT1JNX1VM VCk7CisJCWVsc2UgaWYgKGRldmlkID09IDB4MTkwRSB8fAorCQkJIGRldmlkID09IDB4MTkxNSB8 fAorCQkJIGRldmlkID09IDB4MTkxRSkKKwkJCWluZm8tPnN1YnBsYXRmb3JtX21hc2sgPSBCSVQo SU5URUxfU1VCUExBVEZPUk1fVUxYKTsKKwl9IGVsc2UgaWYgKElTX0tBQllMQUtFKGk5MTUpKSB7 CisJCWlmIChkZXZpZCA9PSAweDU5MWMgfHwKKwkJICAgIGRldmlkID09IDB4ODdjMCkKKwkJCWlu Zm8tPnN1YnBsYXRmb3JtX21hc2sgPSBCSVQoSU5URUxfU1VCUExBVEZPUk1fQU1MKTsKKwkJZWxz ZSBpZiAoZGV2aWQgPT0gMHg1OTA2IHx8CisJCQkgZGV2aWQgPT0gMHg1OTEzIHx8CisJCQkgZGV2 aWQgPT0gMHg1OTE2IHx8CisJCQkgZGV2aWQgPT0gMHg1OTIxIHx8CisJCQkgZGV2aWQgID09IDB4 NTkyNikKKwkJCWluZm8tPnN1YnBsYXRmb3JtX21hc2sgPSBCSVQoSU5URUxfU1VCUExBVEZPUk1f VUxUKTsKKwkJZWxzZSBpZiAoZGV2aWQgPT0gMHg1OTBFIHx8CisJCQkgZGV2aWQgPT0gMHg1OTE1 IHx8CisJCQkgZGV2aWQgPT0gMHg1OTFFKQorCQkJaW5mby0+c3VicGxhdGZvcm1fbWFzayA9IEJJ VChJTlRFTF9TVUJQTEFURk9STV9VTFgpOworCX0gZWxzZSBpZiAoSVNfQ09GRkVFTEFLRShpOTE1 KSkgeworCQlpZiAoKGRldmlkICYgMHgwMEYwKSA9PSAweDAwQTApCisJCQlpbmZvLT5zdWJwbGF0 Zm9ybV9tYXNrID0gQklUKElOVEVMX1NVQlBMQVRGT1JNX1VMVCk7CisJfSBlbHNlIGlmIChJU19D QU5OT05MQUtFKGk5MTUpKSB7CisJCWlmICgoZGV2aWQgJiAweDAwMDQpID09IDB4MDAwNCkKKwkJ CWluZm8tPnN1YnBsYXRmb3JtX21hc2sgPSBCSVQoSU5URUxfU1VCUExBVEZPUk1fUE9SVEYpOwor CX0KK30KKwogLyoqCiAgKiBpbnRlbF9kZXZpY2VfaW5mb19ydW50aW1lX2luaXQgLSBpbml0aWFs aXplIHJ1bnRpbWUgaW5mbwogICogQGluZm86IGludGVsIGRldmljZSBpbmZvIHN0cnVjdApkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGV2aWNlX2luZm8uaCBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2RldmljZV9pbmZvLmgKaW5kZXggZjllNTc3Y2NmNzc1Li45 MWYxNjMwMzk5NDkgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rldmlj ZV9pbmZvLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGV2aWNlX2luZm8uaApA QCAtMTgyLDEwICsxODIsMjcgQEAgc3RydWN0IGludGVsX2RldmljZV9pbmZvIHsKIAlmdW5jKGhh c19yYzYpOyBcCiAJZnVuYyhoYXNfcmM2cCk7IFwKIAorLyoKKyAqIFN1YnBsYXRmb3JtIGJpdHMg c2hhcmUgdGhlIHNhbWUgbmFtZXNwYWNlIHBlciBwYXJlbnQgcGxhdGZvcm0uIEluIG90aGVyIHdv cmRzCisgKiBpdCBpcyBmaW5lIGZvciB0aGUgc2FtZSBiaXQgdG8gYmUgdXNlZCBvbiBtdWx0aXBs ZSBwYXJlbnQgcGxhdGZvcm0uCisgKi8KKyNkZWZpbmUgSU5URUxfU1VCUExBVEZPUk1fSVJPTkxB S0VfTSAoMCkKKworI2RlZmluZSBJTlRFTF9TVUJQTEFURk9STV9QSU5FVklFV19HICgwKQorI2Rl ZmluZSBJTlRFTF9TVUJQTEFURk9STV9QSU5FVklFV19NICgxKQorCisvKiBTS0wvS0JMICovCisj ZGVmaW5lIElOVEVMX1NVQlBMQVRGT1JNX1VMVCAoMCkKKyNkZWZpbmUgSU5URUxfU1VCUExBVEZP Uk1fVUxYICgxKQorI2RlZmluZSBJTlRFTF9TVUJQTEFURk9STV9BTUwgKDIpCisKKyNkZWZpbmUg SU5URUxfU1VCUExBVEZPUk1fUE9SVEYgKDApCisKIHN0cnVjdCBpbnRlbF9ydW50aW1lX2Rldmlj ZV9pbmZvIHsKIAlpbnQgZ2VuOwogCiAJdTMyIHBsYXRmb3JtX21hc2s7CisJdTMyIHN1YnBsYXRm b3JtX21hc2s7CiAKIAl1bnNpZ25lZCBpbnQgbnVtX3JpbmdzOwogCkBAIC0yNzAsNiArMjg3LDcg QEAgc3RhdGljIGlubGluZSB2b2lkIHNzZXVfc2V0X2V1cyhzdHJ1Y3Qgc3NldV9kZXZfaW5mbyAq c3NldSwKIGNvbnN0IGNoYXIgKmludGVsX3BsYXRmb3JtX25hbWUoZW51bSBpbnRlbF9wbGF0Zm9y bSBwbGF0Zm9ybSk7CiAKIHZvaWQgaW50ZWxfZGV2aWNlX2luZm9fcnVudGltZV9pbml0KHN0cnVj dCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdik7Cit2b2lkIGludGVsX2RldmljZV9pbmZvX3N1 YnBsYXRmb3JtX2luaXQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KTsKIHZvaWQg aW50ZWxfZGV2aWNlX2luZm9fZHVtcChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYs CiAJCQkgICAgc3RydWN0IGRybV9wcmludGVyICpwKTsKIHZvaWQgaW50ZWxfZGV2aWNlX2luZm9f ZHVtcF9mbGFncyhjb25zdCBzdHJ1Y3QgaW50ZWxfZGV2aWNlX2luZm8gKmluZm8sCi0tIAoyLjE5 LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVs LWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczov L2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=