From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jesse Barnes Subject: =?UTF-8?q?=5BPATCH=204/4=5D=20drm/i915=3A=20add=20SNB=20video=20sprite=20support?= Date: Tue, 7 Jun 2011 13:07:42 -0700 Message-ID: <1307477262-8242-5-git-send-email-jbarnes@virtuousgeek.org> References: <1307477262-8242-1-git-send-email-jbarnes@virtuousgeek.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from oproxy1-pub.bluehost.com (oproxy1-pub.bluehost.com [66.147.249.253]) by gabe.freedesktop.org (Postfix) with SMTP id 641FB9F379 for ; Tue, 7 Jun 2011 13:07:49 -0700 (PDT) In-Reply-To: <1307477262-8242-1-git-send-email-jbarnes@virtuousgeek.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org Errors-To: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org To: dri-devel@lists.freedesktop.org Cc: intel-gfx@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org VGhlIHZpZGVvIHNwcml0ZXMgc3VwcG9ydCB2aWRlbyBzdXJmYWNlIGZvcm1hdHMgbmF0aXZlbHkg YW5kIGNhbiBoYW5kbGUKc2NhbGluZyB3ZWxsLiAgU28gYWRkIHN1cHBvcnQgZm9yIHRoZW0gdXNp bmcgdGhlIG5ldyBEUk0gY29yZSBvdmVybGF5CnN1cHBvcnQgZnVuY3Rpb25zLgoKU2lnbmVkLW9m Zi1ieTogSmVzc2UgQmFybmVzIDxqYmFybmVzQHZpcnR1b3VzZ2Vlay5vcmc+Ci0tLQogZHJpdmVy cy9ncHUvZHJtL2k5MTUvTWFrZWZpbGUgICAgICAgICB8ICAgIDEgKwogZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9yZWcuaCAgICAgICB8ICAgNTIgKysrKysrKysrKwogZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfZGlzcGxheS5jICB8ICAgMTkgKysrLQogZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZHJ2LmggICAgICB8ICAgMTMgKysrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9m Yi5jICAgICAgIHwgICAgNiArCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9vdmVybGF5Mi5j IHwgIDE3MiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIDYgZmlsZXMgY2hhbmdl ZCwgMjU3IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQg ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfb3ZlcmxheTIuYwoKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L01ha2VmaWxlIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvTWFrZWZpbGUK aW5kZXggMGFlNmE3Yy4uNjE5MzQ3MSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv TWFrZWZpbGUKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvTWFrZWZpbGUKQEAgLTI4LDYgKzI4 LDcgQEAgaTkxNS15IDo9IGk5MTVfZHJ2Lm8gaTkxNV9kbWEubyBpOTE1X2lycS5vIGk5MTVfbWVt Lm8gXAogCSAgaW50ZWxfZHZvLm8gXAogCSAgaW50ZWxfcmluZ2J1ZmZlci5vIFwKIAkgIGludGVs X292ZXJsYXkubyBcCisJICBpbnRlbF9vdmVybGF5Mi5vIFwKIAkgIGludGVsX29wcmVnaW9uLm8g XAogCSAgZHZvX2NoN3h4eC5vIFwKIAkgIGR2b19jaDcwMTcubyBcCmRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9y ZWcuaAppbmRleCAyZjk2N2FmLi5jODFjNGU3IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X3JlZy5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmgKQEAg LTI2MjcsNiArMjYyNyw1OCBAQAogI2RlZmluZSBfRFNQQlNVUkYJCTB4NzExOUMKICNkZWZpbmUg X0RTUEJUSUxFT0ZGCQkweDcxMUE0CiAKKy8qIFNwcml0ZSBBIGNvbnRyb2wgKi8KKyNkZWZpbmUg X0RWU0FDTlRSCQkweDcyMTgwCisjZGVmaW5lICAgRFZTX0VOQUJMRQkJKDE8PDMxKQorI2RlZmlu ZSAgIERWU19HQU1NQV9FTkFCTEUJKDE8PDMwKQorI2RlZmluZSAgIERWU19QSVhGT1JNQVRfTUFT SwkoMzw8MjUpCisjZGVmaW5lICAgRFZTX0ZPUk1BVF9ZVVY0MjIJKDA8PDI1KQorI2RlZmluZSAg IERWU19GT1JNQVRfUkdCWDEwMTAxMAkoMTw8MjUpCisjZGVmaW5lICAgRFZTX0ZPUk1BVF9SR0JY ODg4CSgyPDwyNSkKKyNkZWZpbmUgICBEVlNfRk9STUFUX1JHQlgxNjE2MTYJKDM8PDI1KQorI2Rl ZmluZSAgIERWU19TT1VSQ0VfS0VZCSgxPDwyMikKKyNkZWZpbmUgICBEVlNfUkdCX09SREVSX1JH QlgJKDE8PDIwKQorI2RlZmluZSAgIERWU19ZVVZfQllURV9PUkRFUl9NQVNLICgzPDwxNikKKyNk ZWZpbmUgICBEVlNfWVVWX09SREVSX1lVWVYJKDA8PDE2KQorI2RlZmluZSAgIERWU19ZVVZfT1JE RVJfVVlWWQkoMTw8MTYpCisjZGVmaW5lICAgRFZTX1lVVl9PUkRFUl9ZVllVCSgyPDwxNikKKyNk ZWZpbmUgICBEVlNfWVVWX09SREVSX1ZZVVkJKDM8PDE2KQorI2RlZmluZSAgIERWU19ERVNUX0tF WQkJKDE8PDIpCisjZGVmaW5lICAgRFZTX1RSSUNLTEVfRkVFRF9ESVNBQkxFICgxPDwxNCkKKyNk ZWZpbmUgICBEVlNfVElMRUQJCSgxPDwxMCkKKyNkZWZpbmUgX0RWU0FTVFJJREUJCTB4NzIxODgK KyNkZWZpbmUgX0RWU0FQT1MJCTB4NzIxOGMKKyNkZWZpbmUgX0RWU0FTSVpFCQkweDcyMTkwCisj ZGVmaW5lIF9EVlNBS0VZVkFMCQkweDcyMTk0CisjZGVmaW5lIF9EVlNBS0VZTVNLCQkweDcyMTk4 CisjZGVmaW5lIF9EVlNBU1VSRgkJMHg3MjE5YworI2RlZmluZSBfRFZTQUtFWU1BWFZBTAkJMHg3 MjFhMAorI2RlZmluZSBfRFZTQVRJTEVPRkYJCTB4NzIxYTQKKyNkZWZpbmUgX0RWU0FTVVJGTElW RQkJMHg3MjFhYworI2RlZmluZSBfRFZTQVNDQUxFCQkweDcyMjA0CisjZGVmaW5lIF9EVlNBR0FN QwkJMHg3MjMwMAorCisjZGVmaW5lIF9EVlNCQ05UUgkJMHg3MzE4MAorI2RlZmluZSBfRFZTQlNU UklERQkJMHg3MzE4OAorI2RlZmluZSBfRFZTQlBPUwkJMHg3MzE4YworI2RlZmluZSBfRFZTQlNJ WkUJCTB4NzMxOTAKKyNkZWZpbmUgX0RWU0JLRVlWQUwJCTB4NzMxOTQKKyNkZWZpbmUgX0RWU0JL RVlNU0sJCTB4NzMxOTgKKyNkZWZpbmUgX0RWU0JTVVJGCQkweDczMTljCisjZGVmaW5lIF9EVlNC S0VZTUFYVkFMCQkweDczMWEwCisjZGVmaW5lIF9EVlNCVElMRU9GRgkJMHg3MzFhNAorI2RlZmlu ZSBfRFZTQlNVUkZMSVZFCQkweDczMWFjCisjZGVmaW5lIF9EVlNCU0NBTEUJCTB4NzMyMDQKKyNk ZWZpbmUgX0RWU0JHQU1DCQkweDczMzAwCisKKyNkZWZpbmUgRFZTQ05UUihwaXBlKSBfUElQRShw aXBlLCBfRFZTQUNOVFIsIF9EVlNCQ05UUikKKyNkZWZpbmUgRFZTU1RSSURFKHBpcGUpIF9QSVBF KHBpcGUsIF9EVlNBU1RSSURFLCBfRFZTQlNUUklERSkKKyNkZWZpbmUgRFZTUE9TKHBpcGUpIF9Q SVBFKHBpcGUsIF9EVlNBUE9TLCBfRFZTQlBPUykKKyNkZWZpbmUgRFZTU1VSRihwaXBlKSBfUElQ RShwaXBlLCBfRFZTQVNVUkYsIF9EVlNCU1VSRikKKyNkZWZpbmUgRFZTU0laRShwaXBlKSBfUElQ RShwaXBlLCBfRFZTQVNJWkUsIF9EVlNCU0laRSkKKyNkZWZpbmUgRFZTU0NBTEUocGlwZSkgX1BJ UEUocGlwZSwgX0RWU0FTQ0FMRSwgX0RWU0JTQ0FMRSkKKyNkZWZpbmUgRFZTVElMRU9GRihwaXBl KSBfUElQRShwaXBlLCBfRFZTQVRJTEVPRkYsIF9EVlNCVElMRU9GRikKKwogLyogVkJJT1MgcmVn cyAqLwogI2RlZmluZSBWR0FDTlRSTAkJMHg3MTQwMAogIyBkZWZpbmUgVkdBX0RJU1BfRElTQUJM RQkJCSgxIDw8IDMxKQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlz cGxheS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCmluZGV4IDc5MDFm MTYuLjcyYTU3MGEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3Bs YXkuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKQEAgLTkwMCw4 ICs5MDAsOCBAQCBzdGF0aWMgdm9pZCBhc3NlcnRfcGFuZWxfdW5sb2NrZWQoc3RydWN0IGRybV9p OTE1X3ByaXZhdGUgKmRldl9wcml2LAogCSAgICAgcGlwZV9uYW1lKHBpcGUpKTsKIH0KIAotc3Rh dGljIHZvaWQgYXNzZXJ0X3BpcGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAot CQkJZW51bSBwaXBlIHBpcGUsIGJvb2wgc3RhdGUpCit2b2lkIGFzc2VydF9waXBlKHN0cnVjdCBk cm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKKwkJIGVudW0gcGlwZSBwaXBlLCBib29sIHN0YXRl KQogewogCWludCByZWc7CiAJdTMyIHZhbDsKQEAgLTkxNCw4ICs5MTQsNiBAQCBzdGF0aWMgdm9p ZCBhc3NlcnRfcGlwZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAJICAgICAi cGlwZSAlYyBhc3NlcnRpb24gZmFpbHVyZSAoZXhwZWN0ZWQgJXMsIGN1cnJlbnQgJXMpXG4iLAog CSAgICAgcGlwZV9uYW1lKHBpcGUpLCBzdGF0ZV9zdHJpbmcoc3RhdGUpLCBzdGF0ZV9zdHJpbmco Y3VyX3N0YXRlKSk7CiB9Ci0jZGVmaW5lIGFzc2VydF9waXBlX2VuYWJsZWQoZCwgcCkgYXNzZXJ0 X3BpcGUoZCwgcCwgdHJ1ZSkKLSNkZWZpbmUgYXNzZXJ0X3BpcGVfZGlzYWJsZWQoZCwgcCkgYXNz ZXJ0X3BpcGUoZCwgcCwgZmFsc2UpCiAKIHN0YXRpYyB2b2lkIGFzc2VydF9wbGFuZV9lbmFibGVk KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIAkJCQkgZW51bSBwbGFuZSBwbGFu ZSkKQEAgLTQzMTksNyArNDMxNyw4IEBAIHN0YXRpYyB2b2lkIHNhbmR5YnJpZGdlX3VwZGF0ZV93 bShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCQkJCSAmc2FuZHlicmlkZ2VfY3Vyc29yX3dtX2lu Zm8sIGxhdGVuY3ksCiAJCQkJICZwbGFuZV93bSwgJmN1cnNvcl93bSkpIHsKIAkJSTkxNV9XUklU RShXTTBfUElQRUFfSUxLLAotCQkJICAgKHBsYW5lX3dtIDw8IFdNMF9QSVBFX1BMQU5FX1NISUZU KSB8IGN1cnNvcl93bSk7CisJCQkgICAocGxhbmVfd20gPDwgV00wX1BJUEVfUExBTkVfU0hJRlQp IHwKKwkJCSAgIChwbGFuZV93bSA8PCBXTTBfUElQRV9TUFJJVEVfU0hJRlQpIHwgY3Vyc29yX3dt KTsKIAkJRFJNX0RFQlVHX0tNUygiRklGTyB3YXRlcm1hcmtzIEZvciBwaXBlIEEgLSIKIAkJCSAg ICAgICIgcGxhbmUgJWQsICIgImN1cnNvcjogJWRcbiIsCiAJCQkgICAgICBwbGFuZV93bSwgY3Vy c29yX3dtKTsKQEAgLTQzMzEsNyArNDMzMCw4IEBAIHN0YXRpYyB2b2lkIHNhbmR5YnJpZGdlX3Vw ZGF0ZV93bShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCQkJCSAmc2FuZHlicmlkZ2VfY3Vyc29y X3dtX2luZm8sIGxhdGVuY3ksCiAJCQkJICZwbGFuZV93bSwgJmN1cnNvcl93bSkpIHsKIAkJSTkx NV9XUklURShXTTBfUElQRUJfSUxLLAotCQkJICAgKHBsYW5lX3dtIDw8IFdNMF9QSVBFX1BMQU5F X1NISUZUKSB8IGN1cnNvcl93bSk7CisJCQkgICAocGxhbmVfd20gPDwgV00wX1BJUEVfUExBTkVf U0hJRlQpIHwKKwkJCSAgIChwbGFuZV93bSA8PCBXTTBfUElQRV9TUFJJVEVfU0hJRlQpIHwgY3Vy c29yX3dtKTsKIAkJRFJNX0RFQlVHX0tNUygiRklGTyB3YXRlcm1hcmtzIEZvciBwaXBlIEIgLSIK IAkJCSAgICAgICIgcGxhbmUgJWQsIGN1cnNvcjogJWRcbiIsCiAJCQkgICAgICBwbGFuZV93bSwg Y3Vyc29yX3dtKTsKQEAgLTQzNzEsNiArNDM3MSwxMSBAQCBzdGF0aWMgdm9pZCBzYW5keWJyaWRn ZV91cGRhdGVfd20oc3RydWN0IGRybV9kZXZpY2UgKmRldikKIAkJICAgKHBsYW5lX3dtIDw8IFdN MV9MUF9TUl9TSElGVCkgfAogCQkgICBjdXJzb3Jfd20pOwogCisjaWYgMAorCUk5MTVfV1JJVEUo V00xU19MUF9JTEssCisJCSAgIFdNMVNfTFBfRU4gfAorI2VuZGlmCisKIAkvKiBXTTIgKi8KIAlp ZiAoIWlyb25sYWtlX2NvbXB1dGVfc3J3bShkZXYsIDIsIGVuYWJsZWQsCiAJCQkJICAgU05CX1JF QURfV00yX0xBVEVOQ1koKSAqIDUwMCwKQEAgLTgwMTMsNiArODAxOCw4IEBAIHZvaWQgaW50ZWxf bW9kZXNldF9pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiAKIAlmb3IgKGkgPSAwOyBpIDwg ZGV2X3ByaXYtPm51bV9waXBlOyBpKyspIHsKIAkJaW50ZWxfY3J0Y19pbml0KGRldiwgaSk7CisJ CWlmIChIQVNfUENIX1NQTElUKGRldikpCisJCQlpbnRlbF9wbGFuZV9pbml0KGRldiwgaSk7CiAJ fQogCiAJLyogSnVzdCBkaXNhYmxlIGl0IG9uY2UgYXQgc3RhcnR1cCAqLwpkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9kcnYuaAppbmRleCBkNzNlNjIyLi5mMTA5ZjllIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9kcnYuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9k cnYuaApAQCAtMTczLDEwICsxNzMsMTcgQEAgc3RydWN0IGludGVsX2NydGMgewogCXVuc2lnbmVk IGludCBicHA7CiB9OwogCitzdHJ1Y3QgaW50ZWxfcGxhbmUgeworCXN0cnVjdCBkcm1fcGxhbmUg YmFzZTsKKwllbnVtIHBpcGUgcGlwZTsKKwl1MzIgbHV0X3JbMTAyNF0sIGx1dF9nWzEwMjRdLCBs dXRfYlsxMDI0XTsKK307CisKICNkZWZpbmUgdG9faW50ZWxfY3J0Yyh4KSBjb250YWluZXJfb2Yo eCwgc3RydWN0IGludGVsX2NydGMsIGJhc2UpCiAjZGVmaW5lIHRvX2ludGVsX2Nvbm5lY3Rvcih4 KSBjb250YWluZXJfb2YoeCwgc3RydWN0IGludGVsX2Nvbm5lY3RvciwgYmFzZSkKICNkZWZpbmUg dG9faW50ZWxfZW5jb2Rlcih4KSBjb250YWluZXJfb2YoeCwgc3RydWN0IGludGVsX2VuY29kZXIs IGJhc2UpCiAjZGVmaW5lIHRvX2ludGVsX2ZyYW1lYnVmZmVyKHgpIGNvbnRhaW5lcl9vZih4LCBz dHJ1Y3QgaW50ZWxfZnJhbWVidWZmZXIsIGJhc2UpCisjZGVmaW5lIHRvX2ludGVsX3BsYW5lKHgp IGNvbnRhaW5lcl9vZih4LCBzdHJ1Y3QgaW50ZWxfcGxhbmUsIGJhc2UpCiAKICNkZWZpbmUgRElQ X1RZUEVfQVZJICAgIDB4ODIKICNkZWZpbmUgRElQX1ZFUlNJT05fQVZJIDB4MgpAQCAtMjU1LDYg KzI2Miw3IEBAIGludGVsX2RwX3NldF9tX24oc3RydWN0IGRybV9jcnRjICpjcnRjLCBzdHJ1Y3Qg ZHJtX2Rpc3BsYXlfbW9kZSAqbW9kZSwKIGV4dGVybiBib29sIGludGVsX2RwZF9pc19lZHAoc3Ry dWN0IGRybV9kZXZpY2UgKmRldik7CiBleHRlcm4gdm9pZCBpbnRlbF9lZHBfbGlua19jb25maWcg KHN0cnVjdCBpbnRlbF9lbmNvZGVyICosIGludCAqLCBpbnQgKik7CiBleHRlcm4gYm9vbCBpbnRl bF9lbmNvZGVyX2lzX3BjaF9lZHAoc3RydWN0IGRybV9lbmNvZGVyICplbmNvZGVyKTsKK2V4dGVy biB2b2lkIGludGVsX3BsYW5lX2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgZW51bSBwaXBl IHBpcGUpOwogCiAvKiBpbnRlbF9wYW5lbC5jICovCiBleHRlcm4gdm9pZCBpbnRlbF9maXhlZF9w YW5lbF9tb2RlKHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICpmaXhlZF9tb2RlLApAQCAtMzQ2LDUg KzM1NCwxMCBAQCBleHRlcm4gaW50IGludGVsX292ZXJsYXlfYXR0cnMoc3RydWN0IGRybV9kZXZp Y2UgKmRldiwgdm9pZCAqZGF0YSwKIGV4dGVybiB2b2lkIGludGVsX2ZiX291dHB1dF9wb2xsX2No YW5nZWQoc3RydWN0IGRybV9kZXZpY2UgKmRldik7CiBleHRlcm4gdm9pZCBpbnRlbF9mYl9yZXN0 b3JlX21vZGUoc3RydWN0IGRybV9kZXZpY2UgKmRldik7CiAKK2V4dGVybiB2b2lkIGFzc2VydF9w aXBlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwgZW51bSBwaXBlIHBpcGUsCisJ CQlib29sIHN0YXRlKTsKKyNkZWZpbmUgYXNzZXJ0X3BpcGVfZW5hYmxlZChkLCBwKSBhc3NlcnRf cGlwZShkLCBwLCB0cnVlKQorI2RlZmluZSBhc3NlcnRfcGlwZV9kaXNhYmxlZChkLCBwKSBhc3Nl cnRfcGlwZShkLCBwLCBmYWxzZSkKKwogZXh0ZXJuIHZvaWQgaW50ZWxfaW5pdF9jbG9ja19nYXRp bmcoc3RydWN0IGRybV9kZXZpY2UgKmRldik7CiAjZW5kaWYgLyogX19JTlRFTF9EUlZfSF9fICov CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9mYi5jIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZmIuYwppbmRleCAxMWJhYTk5Li41MTNhNDBjIDEwMDY0NAotLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9mYi5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2ZiLmMKQEAgLTI3MCw4ICsyNzAsMTQgQEAgdm9pZCBpbnRlbF9mYl9yZXN0b3Jl X21vZGUoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIHsKIAlpbnQgcmV0OwogCWRybV9pOTE1X3By aXZhdGVfdCAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOworCXN0cnVjdCBkcm1fbW9kZV9j b25maWcgKmNvbmZpZyA9ICZkZXYtPm1vZGVfY29uZmlnOworCXN0cnVjdCBkcm1fcGxhbmUgKnBs YW5lOwogCiAJcmV0ID0gZHJtX2ZiX2hlbHBlcl9yZXN0b3JlX2ZiZGV2X21vZGUoJmRldl9wcml2 LT5mYmRldi0+aGVscGVyKTsKIAlpZiAocmV0KQogCQlEUk1fREVCVUcoImZhaWxlZCB0byByZXN0 b3JlIGNydGMgbW9kZVxuIik7CisKKwkvKiBCZSBzdXJlIHRvIHNodXQgb2ZmIGFueSBwbGFuZXMg dGhhdCBtYXkgYmUgYWN0aXZlICovCisJbGlzdF9mb3JfZWFjaF9lbnRyeShwbGFuZSwgJmNvbmZp Zy0+cGxhbmVfbGlzdCwgaGVhZCkKKwkJcGxhbmUtPmZ1bmNzLT5kaXNhYmxlX3BsYW5lKHBsYW5l KTsKIH0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX292ZXJsYXkyLmMg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9vdmVybGF5Mi5jCm5ldyBmaWxlIG1vZGUgMTAw NjQ0CmluZGV4IDAwMDAwMDAuLmUwMjllMDUKLS0tIC9kZXYvbnVsbAorKysgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9vdmVybGF5Mi5jCkBAIC0wLDAgKzEsMTcyIEBACisvKgorICogQ29w eXJpZ2h0IMKpIDIwMTEgSW50ZWwgQ29ycG9yYXRpb24KKyAqCisgKiBQZXJtaXNzaW9uIGlzIGhl cmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYQor ICogY29weSBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmls ZXMgKHRoZSAiU29mdHdhcmUiKSwKKyAqIHRvIGRlYWwgaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQg cmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24KKyAqIHRoZSByaWdodHMg dG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNl bnNlLAorICogYW5kL29yIHNlbGwgY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1p dCBwZXJzb25zIHRvIHdob20gdGhlCisgKiBTb2Z0d2FyZSBpcyBmdXJuaXNoZWQgdG8gZG8gc28s IHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgorICoKKyAqIFRoZSBhYm92ZSBj b3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIChpbmNsdWRpbmcgdGhl IG5leHQKKyAqIHBhcmFncmFwaCkgc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsIGNvcGllcyBvciBz dWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUKKyAqIFNvZnR3YXJlLgorICoKKyAqIFRIRSBTT0ZU V0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBF WFBSRVNTIE9SCisgKiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBX QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKKyAqIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB UiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuICBJTiBOTyBFVkVOVCBTSEFMTAorICogVEhF IEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERB TUFHRVMgT1IgT1RIRVIKKyAqIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09O VFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCisgKiBPVVQgT0YgT1IgSU4g Q09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdT IElOIFRIRQorICogU09GVFdBUkUuCisgKgorICogQXV0aG9yczoKKyAqICAgSmVzc2UgQmFybmVz IDxqYmFybmVzQHZpcnR1b3VzZ2Vlay5vcmc+CisgKgorICogTmV3IHBsYW5lL3Nwcml0ZSBoYW5k bGluZy4KKyAqCisgKiBUaGUgb2xkZXIgY2hpcHMgaGFkIGEgc2VwYXJhdGUgaW50ZXJmYWNlIGZv ciBwcm9ncmFtbWluZyBwbGFuZSByZWxhdGVkCisgKiByZWdpc3RlcnM7IG5ld2VyIG9uZXMgYXJl IG11Y2ggc2ltcGxlciBhbmQgd2UgY2FuIHVzZSB0aGUgbmV3IERSTSBwbGFuZQorICogc3VwcG9y dC4KKyAqLworI2luY2x1ZGUgImRybVAuaCIKKyNpbmNsdWRlICJkcm1fY3J0Yy5oIgorI2luY2x1 ZGUgImludGVsX2Rydi5oIgorI2luY2x1ZGUgImk5MTVfZHJtLmgiCisjaW5jbHVkZSAiaTkxNV9k cnYuaCIKKworc3RhdGljIGludAoraW50ZWxfdXBkYXRlX3BsYW5lKHN0cnVjdCBkcm1fcGxhbmUg KnBsYW5lLCBzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCisJCSAgICAgc3RydWN0IGRybV9mcmFtZWJ1 ZmZlciAqZmIsIGludCBjcnRjX3gsIGludCBjcnRjX3ksCisJCSAgICAgaW50IHgsIGludCB5KQor eworCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBwbGFuZS0+ZGV2OworCXN0cnVjdCBkcm1faTkx NV9wcml2YXRlICpkZXZfcHJpdiA9IGRldi0+ZGV2X3ByaXZhdGU7CisJc3RydWN0IGludGVsX3Bs YW5lICppbnRlbF9wbGFuZSA9IHRvX2ludGVsX3BsYW5lKHBsYW5lKTsKKwlzdHJ1Y3QgaW50ZWxf ZnJhbWVidWZmZXIgKmludGVsX2ZiOworCXN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmo7 CisJaW50IHBpcGUgPSBpbnRlbF9wbGFuZS0+cGlwZTsKKwl1bnNpZ25lZCBsb25nIHN0YXJ0LCBv ZmZzZXQ7CisJdTMyIGR2c2NudHI7CisJdTMyIHJlZyA9IERWU0NOVFIocGlwZSk7CisJaW50IHJl dCA9IDA7CisKKwlhc3NlcnRfcGlwZV9lbmFibGVkKGRldl9wcml2LCBwaXBlKTsKKworCWludGVs X2ZiID0gdG9faW50ZWxfZnJhbWVidWZmZXIoZmIpOworCW9iaiA9IGludGVsX2ZiLT5vYmo7CisK KwltdXRleF9sb2NrKCZkZXYtPnN0cnVjdF9tdXRleCk7CisJcmV0ID0gaW50ZWxfcGluX2FuZF9m ZW5jZV9mYl9vYmooZGV2LCBvYmosIE5VTEwpOworCWlmIChyZXQpCisJCWdvdG8gb3V0X3VubG9j azsKKworCWR2c2NudHIgPSBJOTE1X1JFQUQocmVnKTsKKworCS8qIE1hc2sgb3V0IHBpeGVsIGZv cm1hdCBiaXRzIGluIGNhc2Ugd2UgY2hhbmdlIGl0ICovCisJZHZzY250ciAmPSB+RFZTX1BJWEZP Uk1BVF9NQVNLOworCWR2c2NudHIgJj0gfkRWU19SR0JfT1JERVJfUkdCWDsKKwlkdnNjbnRyICY9 IH5EVlNfWVVWX0JZVEVfT1JERVJfTUFTSzsKKworCXN3aXRjaCAoZmItPnBpeGVsX2Zvcm1hdCkg eworCWNhc2UgVjRMMl9QSVhfRk1UX0JHUjMyOgorCQlkdnNjbnRyIHw9IERWU19GT1JNQVRfUkdC WDg4ODsKKwkJYnJlYWs7CisJY2FzZSBWNEwyX1BJWF9GTVRfUkdCMzI6CisJCWR2c2NudHIgfD0g RFZTX0ZPUk1BVF9SR0JYODg4IHwgRFZTX1JHQl9PUkRFUl9SR0JYOworCQlicmVhazsKKwljYXNl IFY0TDJfUElYX0ZNVF9ZVVlWOgorCQlkdnNjbnRyIHw9IERWU19GT1JNQVRfWVVWNDIyIHwgRFZT X1lVVl9PUkRFUl9ZVVlWOworCQlicmVhazsKKwljYXNlIFY0TDJfUElYX0ZNVF9ZVllVOgorCQlk dnNjbnRyIHw9IERWU19GT1JNQVRfWVVWNDIyIHwgRFZTX1lVVl9PUkRFUl9ZVllVOworCQlicmVh azsKKwljYXNlIFY0TDJfUElYX0ZNVF9VWVZZOgorCQlkdnNjbnRyIHw9IERWU19GT1JNQVRfWVVW NDIyIHwgRFZTX1lVVl9PUkRFUl9VWVZZOworCQlicmVhazsKKwljYXNlIFY0TDJfUElYX0ZNVF9W WVVZOgorCQlkdnNjbnRyIHw9IERWU19GT1JNQVRfWVVWNDIyIHwgRFZTX1lVVl9PUkRFUl9WWVVZ OworCQlicmVhazsKKwlkZWZhdWx0OgorCQlyZXQgPSAtRUlOVkFMOworCQlEUk1fREVCVUdfS01T KCJiYWQgcGl4ZWwgZm9ybWF0XG4iKTsKKwkJZ290byBvdXRfdW5sb2NrOworCX0KKworCWlmIChv YmotPnRpbGluZ19tb2RlICE9IEk5MTVfVElMSU5HX1gpIHsKKwkJRFJNX0RFQlVHX0tNUygicGxh bmUgc3VyZmFjZXMgbXVzdCBiZSBYIHRpbGVkXG4iKTsKKwkJcmV0ID0gLUVJTlZBTDsKKwkJZ290 byBvdXRfdW5sb2NrOworCX0KKworCWR2c2NudHIgfD0gRFZTX1RJTEVEOworCisJLyogbXVzdCBk aXNhYmxlICovCisJZHZzY250ciB8PSBEVlNfVFJJQ0tMRV9GRUVEX0RJU0FCTEU7CisJZHZzY250 ciB8PSBEVlNfREVTVF9LRVk7CisJZHZzY250ciB8PSBEVlNfRU5BQkxFOworCisJc3RhcnQgPSBv YmotPmd0dF9vZmZzZXQ7CisJb2Zmc2V0ID0geSAqIGZiLT5waXRjaCArIHggKiAoZmItPmJpdHNf cGVyX3BpeGVsIC8gOCk7CisKKwlJOTE1X1dSSVRFKERWU1NUUklERShwaXBlKSwgZmItPnBpdGNo KTsKKwlJOTE1X1dSSVRFKERWU1BPUyhwaXBlKSwgKGNydGNfeSA8PCAxNikgfCBjcnRjX3gpOwor CUk5MTVfV1JJVEUoRFZTVElMRU9GRihwaXBlKSwgKHkgPDwgMTYpIHwgeCk7CisJSTkxNV9XUklU RShEVlNTSVpFKHBpcGUpLCAoZmItPmhlaWdodCA8PCAxNikgfCBmYi0+d2lkdGgpOworCUk5MTVf V1JJVEUoRFZTU0NBTEUocGlwZSksIDApOworCUk5MTVfV1JJVEUocmVnLCBkdnNjbnRyKTsKKwlJ OTE1X1dSSVRFKERWU1NVUkYocGlwZSksIHN0YXJ0KTsKKwlQT1NUSU5HX1JFQUQoRFZTU1VSRihw aXBlKSk7CisKK291dF91bmxvY2s6CisJbXV0ZXhfdW5sb2NrKCZkZXYtPnN0cnVjdF9tdXRleCk7 CisKKwlyZXR1cm4gcmV0OworfQorCitzdGF0aWMgdm9pZAoraW50ZWxfZGlzYWJsZV9wbGFuZShz dHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSkKK3sKKwlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gcGxh bmUtPmRldjsKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9w cml2YXRlOworCXN0cnVjdCBpbnRlbF9wbGFuZSAqaW50ZWxfcGxhbmUgPSB0b19pbnRlbF9wbGFu ZShwbGFuZSk7CisJaW50IHBpcGUgPSBpbnRlbF9wbGFuZS0+cGlwZTsKKworCUk5MTVfV1JJVEUo RFZTQ05UUihwaXBlKSwgSTkxNV9SRUFEKERWU0NOVFIocGlwZSkpICYgfkRWU19FTkFCTEUpOwor CUk5MTVfV1JJVEUoRFZTU1VSRihwaXBlKSwgMCk7CisJUE9TVElOR19SRUFEKERWU1NVUkYocGlw ZSkpOworfQorCitzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9wbGFuZV9mdW5jcyBpbnRlbF9wbGFu ZV9mdW5jcyA9IHsKKwkudXBkYXRlX3BsYW5lID0gaW50ZWxfdXBkYXRlX3BsYW5lLAorCS5kaXNh YmxlX3BsYW5lID0gaW50ZWxfZGlzYWJsZV9wbGFuZSwKK307CisKK3N0YXRpYyB1aW50MzJfdCBz bmJfcGxhbmVfZm9ybWF0c1tdID0geworCVY0TDJfUElYX0ZNVF9CR1IzMiwKKwlWNEwyX1BJWF9G TVRfUkdCMzIsCisJVjRMMl9QSVhfRk1UX1lVWVYsCisJVjRMMl9QSVhfRk1UX1lWWVUsCisJVjRM Ml9QSVhfRk1UX1VZVlksCisJVjRMMl9QSVhfRk1UX1ZZVVksCit9OworCit2b2lkCitpbnRlbF9w bGFuZV9pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIGVudW0gcGlwZSBwaXBlKQoreworCXN0 cnVjdCBpbnRlbF9wbGFuZSAqaW50ZWxfcGxhbmU7CisKKwlpZiAoIUlTX0dFTjYoZGV2KSkgewor CQlEUk1fRVJST1IoIm5ldyBwbGFuZSBjb2RlIG9ubHkgZm9yIFNOQlxuIik7CisJCXJldHVybjsK Kwl9CisKKwlpbnRlbF9wbGFuZSA9IGt6YWxsb2Moc2l6ZW9mKHN0cnVjdCBpbnRlbF9wbGFuZSks IEdGUF9LRVJORUwpOworCWlmICghaW50ZWxfcGxhbmUpCisJCXJldHVybjsKKworCWludGVsX3Bs YW5lLT5waXBlID0gcGlwZTsKKwlkcm1fcGxhbmVfaW5pdChkZXYsICZpbnRlbF9wbGFuZS0+YmFz ZSwgJmludGVsX3BsYW5lX2Z1bmNzLAorCQkgICAgICAgc25iX3BsYW5lX2Zvcm1hdHMsIEFSUkFZ X1NJWkUoc25iX3BsYW5lX2Zvcm1hdHMpKTsKK30KKwotLSAKMS43LjQuMQoKX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlz dApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3Rv cC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK