From: Stephane Viau Subject: [PATCH 2/4] drm/msm/mdp: add common YUV information for MDP4/MDP5 Date: Mon, 8 Dec 2014 10:48:57 -0500 Message-ID: <1418053739-9386-3-git-send-email-sviau@codeaurora.org> References: <1418053739-9386-1-git-send-email-sviau@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1418053739-9386-1-git-send-email-sviau@codeaurora.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org Cc: linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org, gbeeresh@codeaurora.org List-Id: linux-arm-msm@vger.kernel.org Qm90aCBNRFA0IGFuZCBNRFA1IHNoYXJlIHNvbWUgY29kZSBhcyBmYXIgYXMgWVVWIHN1cHBvcnQg aXMKY29uY2VybmVkLiBUaGlzIGNoYW5nZSBhZGRzIHRoaXMgaW5mb3JtYXRpb24gYW5kIHdpbGwg YmUgZm9sbG93ZWQKYnkgdGhlIGFjdHVhbCBNRFA0IGFuZCBNRFA1IFlVViBzdXBwb3J0IHBhdGNo ZXMuCgpTaWduZWQtb2ZmLWJ5OiBTdGVwaGFuZSBWaWF1IDxzdmlhdUBjb2RlYXVyb3JhLm9yZz4K LS0tCiBkcml2ZXJzL2dwdS9kcm0vbXNtL21kcC9tZHA0L21kcDRfa21zLmggICB8ICAxOSArKysr LS0KIGRyaXZlcnMvZ3B1L2RybS9tc20vbWRwL21kcDUvbWRwNV9rbXMuaCAgIHwgIDE5ICsrKyst LQogZHJpdmVycy9ncHUvZHJtL21zbS9tZHAvbWRwNS9tZHA1X3BsYW5lLmMgfCAgIDIgLQogZHJp dmVycy9ncHUvZHJtL21zbS9tZHAvbWRwX2Zvcm1hdC5jICAgICAgfCAxMDggKysrKysrKysrKysr KysrKysrKysrKysrKysrLS0tCiBkcml2ZXJzL2dwdS9kcm0vbXNtL21kcC9tZHBfa21zLmggICAg ICAgICB8ICAyNCArKysrKystCiBkcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9mYi5jICAgICAgICAg ICAgICB8ICAgMiArLQogZHJpdmVycy9ncHUvZHJtL21zbS9tc21fa21zLmggICAgICAgICAgICAg fCAgIDIgKwogNyBmaWxlcyBjaGFuZ2VkLCAxNTQgaW5zZXJ0aW9ucygrKSwgMjIgZGVsZXRpb25z KC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9tZHAvbWRwNC9tZHA0X2ttcy5o IGIvZHJpdmVycy9ncHUvZHJtL21zbS9tZHAvbWRwNC9tZHA0X2ttcy5oCmluZGV4IGNiZDc3YmMu LjBhNWM1OGIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vbWRwL21kcDQvbWRwNF9r bXMuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL21kcC9tZHA0L21kcDRfa21zLmgKQEAgLTE3 NSwxNCArMTc1LDI1IEBAIGlycXJldHVybl90IG1kcDRfaXJxKHN0cnVjdCBtc21fa21zICprbXMp OwogaW50IG1kcDRfZW5hYmxlX3ZibGFuayhzdHJ1Y3QgbXNtX2ttcyAqa21zLCBzdHJ1Y3QgZHJt X2NydGMgKmNydGMpOwogdm9pZCBtZHA0X2Rpc2FibGVfdmJsYW5rKHN0cnVjdCBtc21fa21zICpr bXMsIHN0cnVjdCBkcm1fY3J0YyAqY3J0Yyk7CiAKK3N0YXRpYyBpbmxpbmUgYm9vbCBwaXBlX3N1 cHBvcnRzX3l1dihlbnVtIG1kcDRfcGlwZSBwaXBlKQoreworCXN3aXRjaCAocGlwZSkgeworCWNh c2UgVkcxOgorCWNhc2UgVkcyOgorCWNhc2UgVkczOgorCWNhc2UgVkc0OgorCQlyZXR1cm4gdHJ1 ZTsKKwlkZWZhdWx0OgorCQlyZXR1cm4gZmFsc2U7CisJfQorfQorCiBzdGF0aWMgaW5saW5lCiB1 aW50MzJfdCBtZHA0X2dldF9mb3JtYXRzKGVudW0gbWRwNF9waXBlIHBpcGVfaWQsIHVpbnQzMl90 ICpwaXhlbF9mb3JtYXRzLAogCQl1aW50MzJfdCBtYXhfZm9ybWF0cykKIHsKLQkvKiBUT0RPIHdo ZW4gd2UgaGF2ZSBZVVYsIHdlIG5lZWQgdG8gZmlsdGVyIHN1cHBvcnRlZCBmb3JtYXRzCi0JICog YmFzZWQgb24gcGlwZV9pZC4uCi0JICovCi0JcmV0dXJuIG1kcF9nZXRfZm9ybWF0cyhwaXhlbF9m b3JtYXRzLCBtYXhfZm9ybWF0cyk7CisJcmV0dXJuIG1kcF9nZXRfZm9ybWF0cyhwaXhlbF9mb3Jt YXRzLCBtYXhfZm9ybWF0cywKKwkJCQkhcGlwZV9zdXBwb3J0c195dXYocGlwZV9pZCkpOwogfQog CiB2b2lkIG1kcDRfcGxhbmVfaW5zdGFsbF9wcm9wZXJ0aWVzKHN0cnVjdCBkcm1fcGxhbmUgKnBs YW5lLApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9tZHAvbWRwNS9tZHA1X2ttcy5o IGIvZHJpdmVycy9ncHUvZHJtL21zbS9tZHAvbWRwNS9tZHA1X2ttcy5oCmluZGV4IGRkNjljNzcu LjQ5ZDAxMWUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vbWRwL21kcDUvbWRwNV9r bXMuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL21kcC9tZHA1L21kcDVfa21zLmgKQEAgLTE2 NSwxNCArMTY1LDI1IEBAIHZvaWQgbWRwNV9kaXNhYmxlX3ZibGFuayhzdHJ1Y3QgbXNtX2ttcyAq a21zLCBzdHJ1Y3QgZHJtX2NydGMgKmNydGMpOwogaW50IG1kcDVfaXJxX2RvbWFpbl9pbml0KHN0 cnVjdCBtZHA1X2ttcyAqbWRwNV9rbXMpOwogdm9pZCBtZHA1X2lycV9kb21haW5fZmluaShzdHJ1 Y3QgbWRwNV9rbXMgKm1kcDVfa21zKTsKIAorc3RhdGljIGlubGluZSBib29sIHBpcGVfc3VwcG9y dHNfeXV2KGVudW0gbWRwNV9waXBlIHBpcGUpCit7CisJc3dpdGNoIChwaXBlKSB7CisJY2FzZSBT U1BQX1ZJRzA6CisJY2FzZSBTU1BQX1ZJRzE6CisJY2FzZSBTU1BQX1ZJRzI6CisJY2FzZSBTU1BQ X1ZJRzM6CisJCXJldHVybiB0cnVlOworCWRlZmF1bHQ6CisJCXJldHVybiBmYWxzZTsKKwl9Cit9 CisKIHN0YXRpYyBpbmxpbmUKIHVpbnQzMl90IG1kcDVfZ2V0X2Zvcm1hdHMoZW51bSBtZHA1X3Bp cGUgcGlwZSwgdWludDMyX3QgKnBpeGVsX2Zvcm1hdHMsCiAJCXVpbnQzMl90IG1heF9mb3JtYXRz KQogewotCS8qIFRPRE8gd2hlbiB3ZSBoYXZlIFlVViwgd2UgbmVlZCB0byBmaWx0ZXIgc3VwcG9y dGVkIGZvcm1hdHMKLQkgKiBiYXNlZCBvbiBwaXBlIGlkLi4KLQkgKi8KLQlyZXR1cm4gbWRwX2dl dF9mb3JtYXRzKHBpeGVsX2Zvcm1hdHMsIG1heF9mb3JtYXRzKTsKKwlyZXR1cm4gbWRwX2dldF9m b3JtYXRzKHBpeGVsX2Zvcm1hdHMsIG1heF9mb3JtYXRzLAorCQkJCSFwaXBlX3N1cHBvcnRzX3l1 dihwaXBlKSk7CiB9CiAKIHZvaWQgbWRwNV9wbGFuZV9pbnN0YWxsX3Byb3BlcnRpZXMoc3RydWN0 IGRybV9wbGFuZSAqcGxhbmUsCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL21kcC9t ZHA1L21kcDVfcGxhbmUuYyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vbWRwL21kcDUvbWRwNV9wbGFu ZS5jCmluZGV4IDUzM2RmN2MuLjlhNTdlODcgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9t c20vbWRwL21kcDUvbWRwNV9wbGFuZS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vbWRwL21k cDUvbWRwNV9wbGFuZS5jCkBAIC0xOCw4ICsxOCw2IEBACiAKICNpbmNsdWRlICJtZHA1X2ttcy5o IgogCi0jZGVmaW5lIE1BWF9QTEFORQk0Ci0KIHN0cnVjdCBtZHA1X3BsYW5lIHsKIAlzdHJ1Y3Qg ZHJtX3BsYW5lIGJhc2U7CiAJY29uc3QgY2hhciAqbmFtZTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9tc20vbWRwL21kcF9mb3JtYXQuYyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vbWRwL21k cF9mb3JtYXQuYwppbmRleCBlMGE2ZmZiLi5mNjgzNDMzIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vbXNtL21kcC9tZHBfZm9ybWF0LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL21zbS9tZHAv bWRwX2Zvcm1hdC5jCkBAIC0xLDQgKzEsNSBAQAogLyoKKyAqIENvcHlyaWdodCAoYykgMjAxNCBU aGUgTGludXggRm91bmRhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqIENvcHlyaWdodCAo QykgMjAxMyBSZWQgSGF0CiAgKiBBdXRob3I6IFJvYiBDbGFyayA8cm9iZGNsYXJrQGdtYWlsLmNv bT4KICAqCkBAIC0xOSw3ICsyMCw1OCBAQAogI2luY2x1ZGUgIm1zbV9kcnYuaCIKICNpbmNsdWRl ICJtZHBfa21zLmgiCiAKLSNkZWZpbmUgRk1UKG5hbWUsIGEsIHIsIGcsIGIsIGUwLCBlMSwgZTIs IGUzLCBhbHBoYSwgdGlnaHQsIGMsIGNudCkgeyBcCitzdGF0aWMgc3RydWN0IGNzY19jZmcgY3Nj X2NvbnZlcnRbQ1NDX01BWF0gPSB7CisJW0NTQ19SR0IyUkdCXSA9IHsKKwkJLnR5cGUgPSBDU0Nf UkdCMlJHQiwKKwkJLm1hdHJpeCA9IHsKKwkJCTB4MDIwMCwgMHgwMDAwLCAweDAwMDAsCisJCQkw eDAwMDAsIDB4MDIwMCwgMHgwMDAwLAorCQkJMHgwMDAwLCAweDAwMDAsIDB4MDIwMAorCQl9LAor CQkucHJlX2JpYXMgPQl7IDB4MCwgMHgwLCAweDAgfSwKKwkJLnBvc3RfYmlhcyA9CXsgMHgwLCAw eDAsIDB4MCB9LAorCQkucHJlX2NsYW1wID0JeyAweDAsIDB4ZmYsIDB4MCwgMHhmZiwgMHgwLCAw eGZmIH0sCisJCS5wb3N0X2NsYW1wID0JeyAweDAsIDB4ZmYsIDB4MCwgMHhmZiwgMHgwLCAweGZm IH0sCisJfSwKKwlbQ1NDX1lVVjJSR0JdID0geworCQkudHlwZSA9IENTQ19ZVVYyUkdCLAorCQku bWF0cml4ID0geworCQkJMHgwMjU0LCAweDAwMDAsIDB4MDMzMSwKKwkJCTB4MDI1NCwgMHhmZjM3 LCAweGZlNjAsCisJCQkweDAyNTQsIDB4MDQwOSwgMHgwMDAwCisJCX0sCisJCS5wcmVfYmlhcyA9 CXsgMHhmZmYwLCAweGZmODAsIDB4ZmY4MCB9LAorCQkucG9zdF9iaWFzID0JeyAweDAwLCAweDAw LCAweDAwIH0sCisJCS5wcmVfY2xhbXAgPQl7IDB4MDAsIDB4ZmYsIDB4MDAsIDB4ZmYsIDB4MDAs IDB4ZmYgfSwKKwkJLnBvc3RfY2xhbXAgPQl7IDB4MDAsIDB4ZmYsIDB4MDAsIDB4ZmYsIDB4MDAs IDB4ZmYgfSwKKwl9LAorCVtDU0NfUkdCMllVVl0gPSB7CisJCS50eXBlID0gQ1NDX1JHQjJZVVYs CisJCS5tYXRyaXggPSB7CisJCQkweDAwODMsIDB4MDEwMiwgMHgwMDMyLAorCQkJMHgxZmI1LCAw eDFmNmMsIDB4MDBlMSwKKwkJCTB4MDBlMSwgMHgxZjQ1LCAweDFmZGMKKwkJfSwKKwkJLnByZV9i aWFzID0JeyAweDAwLCAweDAwLCAweDAwIH0sCisJCS5wb3N0X2JpYXMgPQl7IDB4MTAsIDB4ODAs IDB4ODAgfSwKKwkJLnByZV9jbGFtcCA9CXsgMHgwMCwgMHhmZiwgMHgwMCwgMHhmZiwgMHgwMCwg MHhmZiB9LAorCQkucG9zdF9jbGFtcCA9CXsgMHgxMCwgMHhlYiwgMHgxMCwgMHhmMCwgMHgxMCwg MHhmMCB9LAorCX0sCisJW0NTQ19ZVVYyWVVWXSA9IHsKKwkJLnR5cGUgPSBDU0NfWVVWMllVViwK KwkJLm1hdHJpeCA9IHsKKwkJCTB4MDIwMCwgMHgwMDAwLCAweDAwMDAsCisJCQkweDAwMDAsIDB4 MDIwMCwgMHgwMDAwLAorCQkJMHgwMDAwLCAweDAwMDAsIDB4MDIwMAorCQl9LAorCQkucHJlX2Jp YXMgPQl7IDB4MDAsIDB4MDAsIDB4MDAgfSwKKwkJLnBvc3RfYmlhcyA9CXsgMHgwMCwgMHgwMCwg MHgwMCB9LAorCQkucHJlX2NsYW1wID0JeyAweDAwLCAweGZmLCAweDAwLCAweGZmLCAweDAwLCAw eGZmIH0sCisJCS5wb3N0X2NsYW1wID0JeyAweDAwLCAweGZmLCAweDAwLCAweGZmLCAweDAwLCAw eGZmIH0sCisJfSwKK307CisKKyNkZWZpbmUgRk1UKG5hbWUsIGEsIHIsIGcsIGIsIGUwLCBlMSwg ZTIsIGUzLCBhbHBoYSwgdGlnaHQsIGMsIGNudCwgZnAsIGNzKSB7IFwKIAkJLmJhc2UgPSB7IC5w aXhlbF9mb3JtYXQgPSBEUk1fRk9STUFUXyAjIyBuYW1lIH0sIFwKIAkJLmJwY19hID0gQlBDICMj IGEgIyMgQSwgICAgICAgICAgICAgICAgICAgICAgICAgIFwKIAkJLmJwY19yID0gQlBDICMjIHIs ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKQEAgLTMwLDIxICs4Miw0NiBAQAogCQku dW5wYWNrX3RpZ2h0ID0gdGlnaHQsICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogCQkuY3Bw ID0gYywgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogCQkudW5wYWNr X2NvdW50ID0gY250LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotCX0KKwkJLmZldGNo X3R5cGUgPSBmcCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKwkJLmNocm9tYV9z YW1wbGUgPSBjcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKK30KIAogI2RlZmluZSBC UEMwQSAwCiAKKy8qCisgKiBOb3RlOiBLZWVwIFJHQiBmb3JtYXRzIDFzdCwgZm9sbG93ZWQgYnkg WVVWIGZvcm1hdHMgdG8gYXZvaWQgYnJlYWtpbmcKKyAqIG1kcF9nZXRfcmdiX2Zvcm1hdHMoKSdz IGltcGxlbWVudGF0aW9uLgorICovCiBzdGF0aWMgY29uc3Qgc3RydWN0IG1kcF9mb3JtYXQgZm9y bWF0c1tdID0gewotCS8qICBuYW1lICAgICAgYSAgciAgZyAgYiAgIGUwIGUxIGUyIGUzICBhbHBo YSAgIHRpZ2h0ICBjcHAgY250ICovCi0JRk1UKEFSR0I4ODg4LCA4LCA4LCA4LCA4LCAgMSwgMCwg MiwgMywgIHRydWUsICAgdHJ1ZSwgIDQsICA0KSwKLQlGTVQoWFJHQjg4ODgsIDgsIDgsIDgsIDgs ICAxLCAwLCAyLCAzLCAgZmFsc2UsICB0cnVlLCAgNCwgIDQpLAotCUZNVChSR0I4ODgsICAgMCwg OCwgOCwgOCwgIDEsIDAsIDIsIDAsICBmYWxzZSwgIHRydWUsICAzLCAgMyksCi0JRk1UKEJHUjg4 OCwgICAwLCA4LCA4LCA4LCAgMiwgMCwgMSwgMCwgIGZhbHNlLCAgdHJ1ZSwgIDMsICAzKSwKLQlG TVQoUkdCNTY1LCAgIDAsIDUsIDYsIDUsICAxLCAwLCAyLCAwLCAgZmFsc2UsICB0cnVlLCAgMiwg IDMpLAotCUZNVChCR1I1NjUsICAgMCwgNSwgNiwgNSwgIDIsIDAsIDEsIDAsICBmYWxzZSwgIHRy dWUsICAyLCAgMyksCisJLyogIG5hbWUgICAgICBhICByICBnICBiICAgZTAgZTEgZTIgZTMgIGFs cGhhICAgdGlnaHQgIGNwcCBjbnQgLi4uICovCisJRk1UKEFSR0I4ODg4LCA4LCA4LCA4LCA4LCAg MSwgMCwgMiwgMywgIHRydWUsICAgdHJ1ZSwgIDQsICA0LAorCQkJTURQX1BMQU5FX0lOVEVSTEVB VkVELCBDSFJPTUFfUkdCKSwKKwlGTVQoWFJHQjg4ODgsIDgsIDgsIDgsIDgsICAxLCAwLCAyLCAz LCAgZmFsc2UsICB0cnVlLCAgNCwgIDQsCisJCQlNRFBfUExBTkVfSU5URVJMRUFWRUQsIENIUk9N QV9SR0IpLAorCUZNVChSR0I4ODgsICAgMCwgOCwgOCwgOCwgIDEsIDAsIDIsIDAsICBmYWxzZSwg IHRydWUsICAzLCAgMywKKwkJCU1EUF9QTEFORV9JTlRFUkxFQVZFRCwgQ0hST01BX1JHQiksCisJ Rk1UKEJHUjg4OCwgICAwLCA4LCA4LCA4LCAgMiwgMCwgMSwgMCwgIGZhbHNlLCAgdHJ1ZSwgIDMs ICAzLAorCQkJTURQX1BMQU5FX0lOVEVSTEVBVkVELCBDSFJPTUFfUkdCKSwKKwlGTVQoUkdCNTY1 LCAgIDAsIDUsIDYsIDUsICAxLCAwLCAyLCAwLCAgZmFsc2UsICB0cnVlLCAgMiwgIDMsCisJCQlN RFBfUExBTkVfSU5URVJMRUFWRUQsIENIUk9NQV9SR0IpLAorCUZNVChCR1I1NjUsICAgMCwgNSwg NiwgNSwgIDIsIDAsIDEsIDAsICBmYWxzZSwgIHRydWUsICAyLCAgMywKKwkJCU1EUF9QTEFORV9J TlRFUkxFQVZFRCwgQ0hST01BX1JHQiksCisKKwkvKiAtLS0gUkdCIGZvcm1hdHMgYWJvdmUgLyBZ VVYgZm9ybWF0cyBiZWxvdyB0aGlzIGxpbmUgLS0tICovCisKKwlGTVQoTlYxMiwgICAgIDAsIDgs IDgsIDgsICAxLCAyLCAwLCAwLCAgZmFsc2UsICB0cnVlLCAgMiwgMiwKKwkJCU1EUF9QTEFORV9Q U0VVRE9fUExBTkFSLCBDSFJPTUFfNDIwKSwKKwlGTVQoTlYyMSwgICAgIDAsIDgsIDgsIDgsICAy LCAxLCAwLCAwLCAgZmFsc2UsICB0cnVlLCAgMiwgMiwKKwkJCU1EUF9QTEFORV9QU0VVRE9fUExB TkFSLCBDSFJPTUFfNDIwKSwKIH07CiAKLXVpbnQzMl90IG1kcF9nZXRfZm9ybWF0cyh1aW50MzJf dCAqcGl4ZWxfZm9ybWF0cywgdWludDMyX3QgbWF4X2Zvcm1hdHMpCisvKgorICogTm90ZToKKyAq IEByZ2Jfb25seSBtdXN0IGJlIHNldCB0byB0cnVlLCB3aGVuIHJlcXVlc3RpbmcKKyAqIHN1cHBv cnRlZCBmb3JtYXRzIGZvciBSR0IgcGlwZXMuCisgKi8KK3VpbnQzMl90IG1kcF9nZXRfZm9ybWF0 cyh1aW50MzJfdCAqcGl4ZWxfZm9ybWF0cywgdWludDMyX3QgbWF4X2Zvcm1hdHMsCisJCWJvb2wg cmdiX29ubHkpCiB7CiAJdWludDMyX3QgaTsKIAlmb3IgKGkgPSAwOyBpIDwgQVJSQVlfU0laRShm b3JtYXRzKTsgaSsrKSB7CkBAIC01Myw2ICsxMzAsOSBAQCB1aW50MzJfdCBtZHBfZ2V0X2Zvcm1h dHModWludDMyX3QgKnBpeGVsX2Zvcm1hdHMsIHVpbnQzMl90IG1heF9mb3JtYXRzKQogCQlpZiAo aSA9PSBtYXhfZm9ybWF0cykKIAkJCWJyZWFrOwogCisJCWlmIChyZ2Jfb25seSAmJiBNRFBfRk9S TUFUX0lTX1lVVihmKSkKKwkJCWJyZWFrOworCiAJCXBpeGVsX2Zvcm1hdHNbaV0gPSBmLT5iYXNl LnBpeGVsX2Zvcm1hdDsKIAl9CiAKQEAgLTY5LDMgKzE0OSwxMSBAQCBjb25zdCBzdHJ1Y3QgbXNt X2Zvcm1hdCAqbWRwX2dldF9mb3JtYXQoc3RydWN0IG1zbV9rbXMgKmttcywgdWludDMyX3QgZm9y bWF0KQogCX0KIAlyZXR1cm4gTlVMTDsKIH0KKworc3RydWN0IGNzY19jZmcgKm1kcF9nZXRfZGVm YXVsdF9jc2NfY2ZnKGVudW0gY3NjX3R5cGUgdHlwZSkKK3sKKwlpZiAodW5saWtlbHkoV0FSTl9P Tih0eXBlID49IENTQ19NQVgpKSkKKwkJcmV0dXJuIE5VTEw7CisKKwlyZXR1cm4gJmNzY19jb252 ZXJ0W3R5cGVdOworfQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9tZHAvbWRwX2tt cy5oIGIvZHJpdmVycy9ncHUvZHJtL21zbS9tZHAvbWRwX2ttcy5oCmluZGV4IDk5NTU3YjUuLjY0 YzgzYTkgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vbWRwL21kcF9rbXMuaAorKysg Yi9kcml2ZXJzL2dwdS9kcm0vbXNtL21kcC9tZHBfa21zLmgKQEAgLTg4LDEwICs4OCwzMiBAQCBz dHJ1Y3QgbWRwX2Zvcm1hdCB7CiAJdWludDhfdCB1bnBhY2tbNF07CiAJYm9vbCBhbHBoYV9lbmFi bGUsIHVucGFja190aWdodDsKIAl1aW50OF90IGNwcCwgdW5wYWNrX2NvdW50OworCWVudW0gbWRw X3NzcHBfZmV0Y2hfdHlwZSBmZXRjaF90eXBlOworCWVudW0gbWRwX2Nocm9tYV9zYW1wX3R5cGUg Y2hyb21hX3NhbXBsZTsKIH07CiAjZGVmaW5lIHRvX21kcF9mb3JtYXQoeCkgY29udGFpbmVyX29m KHgsIHN0cnVjdCBtZHBfZm9ybWF0LCBiYXNlKQorI2RlZmluZSBNRFBfRk9STUFUX0lTX1lVViht ZHBfZm9ybWF0KSAoKG1kcF9mb3JtYXQpLT5jaHJvbWFfc2FtcGxlID4gQ0hST01BX1JHQikKIAot dWludDMyX3QgbWRwX2dldF9mb3JtYXRzKHVpbnQzMl90ICpmb3JtYXRzLCB1aW50MzJfdCBtYXhf Zm9ybWF0cyk7Cit1aW50MzJfdCBtZHBfZ2V0X2Zvcm1hdHModWludDMyX3QgKmZvcm1hdHMsIHVp bnQzMl90IG1heF9mb3JtYXRzLCBib29sIHJnYl9vbmx5KTsKIGNvbnN0IHN0cnVjdCBtc21fZm9y bWF0ICptZHBfZ2V0X2Zvcm1hdChzdHJ1Y3QgbXNtX2ttcyAqa21zLCB1aW50MzJfdCBmb3JtYXQp OwogCitlbnVtIGNzY190eXBlIHsKKwlDU0NfUkdCMlJHQiA9IDAsCisJQ1NDX1lVVjJSR0IsCisJ Q1NDX1JHQjJZVVYsCisJQ1NDX1lVVjJZVVYsCisJQ1NDX01BWAorfTsKKworc3RydWN0IGNzY19j ZmcgeworCWVudW0gY3NjX3R5cGUgdHlwZTsKKwl1aW50MzJfdCBtYXRyaXhbOV07CisJdWludDMy X3QgcHJlX2JpYXNbM107CisJdWludDMyX3QgcG9zdF9iaWFzWzNdOworCXVpbnQzMl90IHByZV9j bGFtcFs2XTsKKwl1aW50MzJfdCBwb3N0X2NsYW1wWzZdOworfTsKKworc3RydWN0IGNzY19jZmcg Km1kcF9nZXRfZGVmYXVsdF9jc2NfY2ZnKGVudW0gY3NjX3R5cGUpOworCiAjZW5kaWYgLyogX19N RFBfS01TX0hfXyAqLwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZmIuYyBi L2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2ZiLmMKaW5kZXggODRkZWMxNi4uZDFhN2E0NSAxMDA2 NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZmIuYworKysgYi9kcml2ZXJzL2dwdS9k cm0vbXNtL21zbV9mYi5jCkBAIC0yNCw3ICsyNCw3IEBACiBzdHJ1Y3QgbXNtX2ZyYW1lYnVmZmVy IHsKIAlzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyIGJhc2U7CiAJY29uc3Qgc3RydWN0IG1zbV9mb3Jt YXQgKmZvcm1hdDsKLQlzdHJ1Y3QgZHJtX2dlbV9vYmplY3QgKnBsYW5lc1szXTsKKwlzdHJ1Y3Qg ZHJtX2dlbV9vYmplY3QgKnBsYW5lc1tNQVhfUExBTkVdOwogfTsKICNkZWZpbmUgdG9fbXNtX2Zy YW1lYnVmZmVyKHgpIGNvbnRhaW5lcl9vZih4LCBzdHJ1Y3QgbXNtX2ZyYW1lYnVmZmVyLCBiYXNl KQogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9rbXMuaCBiL2RyaXZlcnMv Z3B1L2RybS9tc20vbXNtX2ttcy5oCmluZGV4IDdmYjQ4NzYuLjZhMjg4MzUgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2ttcy5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20v bXNtX2ttcy5oCkBAIC0yMyw2ICsyMyw4IEBACiAKICNpbmNsdWRlICJtc21fZHJ2LmgiCiAKKyNk ZWZpbmUgTUFYX1BMQU5FCTQKKwogLyogQXMgdGhlcmUgYXJlIGRpZmZlcmVudCBkaXNwbGF5IGNv bnRyb2xsZXIgYmxvY2tzIGRlcGVuZGluZyBvbiB0aGUKICAqIHNuYXBkcmFnb24gdmVyc2lvbiwg dGhlIGttcyBzdXBwb3J0IGlzIHNwbGl0IG91dCBhbmQgdGhlIGFwcHJvcHJpYXRlCiAgKiBpbXBs ZW1lbnRhdGlvbiBpcyBsb2FkZWQgYXQgcnVudGltZS4gIFRoZSBrbXMgbW9kdWxlIGlzIHJlc3Bv bnNpYmxlCi0tIApRdWFsY29tbSBJbm5vdmF0aW9uIENlbnRlciwgSW5jLgoKVGhlIFF1YWxjb21t IElubm92YXRpb24gQ2VudGVyLCBJbmMuIGlzIGEgbWVtYmVyIG9mIHRoZSBDb2RlIEF1cm9yYSBG b3J1bSwgYSBMaW51eCBGb3VuZGF0aW9uIENvbGxhYm9yYXRpdmUgUHJvamVjdAoKX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcg bGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVz a3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK