From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ramalingam C Subject: [PATCH v8 19/35] misc/mei/hdcp: Define ME FW interface for HDCP2.2 Date: Tue, 27 Nov 2018 16:13:17 +0530 Message-ID: <1543315413-24302-20-git-send-email-ramalingam.c@intel.com> References: <1543315413-24302-1-git-send-email-ramalingam.c@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1543315413-24302-1-git-send-email-ramalingam.c@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, dri-devel@lists.freedesktop.org, daniel.vetter@ffwll.ch, tomas.winkler@intel.com List-Id: dri-devel@lists.freedesktop.org RGVmaW5lcyB0aGUgSERDUCBzcGVjaWZpYyBNRSBGVyBpbnRlcmZhY2VzIHN1Y2ggYXMgUmVxdWVz dCBDTURzLApwYXlsb2FkIHN0cnVjdHVyZSBmb3IgQ01EcyBhbmQgdGhlaXIgcmVzcG9uc2Ugc3Rh dHVzIGNvZGVzLgoKVGhpcyBwYXRjaCBkZWZpbmVzIHBheWxvYWQgc2l6ZShFeGNsdWRpbmcgdGhl IEhlYWRlcilmb3IgZWFjaCBXSVJFRApIRENQMi4yIENNRHMuCgp2MjoKICBSZWJhc2VkLgp2MzoK ICBFeHRyYSBjb21tZW50cyBhcmUgcmVtb3ZlZC4KdjQ6CiAgJXMvXC9cKlwqL1wvXCoKdjU6CiAg RXh0cmEgbGluZXMgYXJlIHJlbW92ZWQuCnY2OgogIE5vIGNoYW5nZS4Kdjc6CiAgUmVtb3ZlIHJl ZHVuZGFudCB0ZXh0IGZyb20gdGhlIExpY2Vuc2UgaGVhZGVyCiAgJXMvTFBSSU1FX0hBTEYvVl9Q UklNRV9IQUxGCiAgJXMvdWludHh4X3QvdXh4CnY4OgogIEV4dHJhIHRhcHMgcmVtb3ZlZC4KClNp Z25lZC1vZmYtYnk6IFJhbWFsaW5nYW0gQyA8cmFtYWxpbmdhbS5jQGludGVsLmNvbT4KLS0tCiBk cml2ZXJzL21pc2MvbWVpL2hkY3AvbWVpX2hkY3AuaCB8IDM2NiArKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysKIDEgZmlsZSBjaGFuZ2VkLCAzNjYgaW5zZXJ0aW9ucygrKQog Y3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvbWlzYy9tZWkvaGRjcC9tZWlfaGRjcC5oCgpkaWZm IC0tZ2l0IGEvZHJpdmVycy9taXNjL21laS9oZGNwL21laV9oZGNwLmggYi9kcml2ZXJzL21pc2Mv bWVpL2hkY3AvbWVpX2hkY3AuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw MDAuLmQxNDU2ZTNkYmYyMgotLS0gL2Rldi9udWxsCisrKyBiL2RyaXZlcnMvbWlzYy9tZWkvaGRj cC9tZWlfaGRjcC5oCkBAIC0wLDAgKzEsMzY2IEBACisvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmll cjogKEdQTC0yLjArIE9SIEJTRC0zLUNsYXVzZSkgKi8KKy8qCisgKiBDb3B5cmlnaHQgwqkgMjAx Ny0yMDE4IEludGVsIENvcnBvcmF0aW9uCisgKgorICogQXV0aG9yczoKKyAqIFJhbWFsaW5nYW0g QyA8cmFtYWxpbmdhbS5jQGludGVsLmNvbT4KKyAqLworCisjaWZuZGVmIF9fTUVJX0hEQ1BfSF9f CisjZGVmaW5lIF9fTUVJX0hEQ1BfSF9fCisKKyNpbmNsdWRlIDxkcm0vZHJtX2hkY3AuaD4KKwor LyogbWVfaGRjcF9zdGF0dXM6IEVudW1lcmF0aW9uIG9mIGFsbCBIRENQIFN0YXR1cyBDb2RlcyAq LworZW51bSBtZV9oZGNwX3N0YXR1cyB7CisJTUVfSERDUF9TVEFUVVNfU1VDQ0VTUwkJCT0gMHgw MDAwLAorCisJLyogV2lEaSBHZW5lcmljIFN0YXR1cyBDb2RlcyAqLworCU1FX0hEQ1BfU1RBVFVT X0lOVEVSTkFMX0VSUk9SCQk9IDB4MTAwMCwKKwlNRV9IRENQX1NUQVRVU19VTktOT1dOX0VSUk9S CQk9IDB4MTAwMSwKKwlNRV9IRENQX1NUQVRVU19JTkNPUlJFQ1RfQVBJX1ZFUlNJT04JPSAweDEw MDIsCisJTUVfSERDUF9TVEFUVVNfSU5WQUxJRF9GVU5DVElPTgkJPSAweDEwMDMsCisJTUVfSERD UF9TVEFUVVNfSU5WQUxJRF9CVUZGRVJfTEVOR1RICT0gMHgxMDA0LAorCU1FX0hEQ1BfU1RBVFVT X0lOVkFMSURfUEFSQU1TCQk9IDB4MTAwNSwKKwlNRV9IRENQX1NUQVRVU19BVVRIRU5USUNBVElP Tl9GQUlMRUQJPSAweDEwMDYsCisKKwkvKiBXaURpIFN0YXR1cyBDb2RlcyAqLworCU1FX0hEQ1Bf SU5WQUxJRF9TRVNTSU9OX1NUQVRFCQk9IDB4NjAwMCwKKwlNRV9IRENQX1NSTV9GUkFHTUVOVF9V TkVYUEVDVEVECQk9IDB4NjAwMSwKKwlNRV9IRENQX1NSTV9JTlZBTElEX0xFTkdUSAkJPSAweDYw MDIsCisJTUVfSERDUF9TUk1fRlJBR01FTlRfT0ZGU0VUX0lOVkFMSUQJPSAweDYwMDMsCisJTUVf SERDUF9TUk1fVkVSSUZJQ0FUSU9OX0ZBSUxFRAkJPSAweDYwMDQsCisJTUVfSERDUF9TUk1fVkVS U0lPTl9UT09fT0xECQk9IDB4NjAwNSwKKwlNRV9IRENQX1JYX0NFUlRfVkVSSUZJQ0FUSU9OX0ZB SUxFRAk9IDB4NjAwNiwKKwlNRV9IRENQX1JYX1JFVk9LRUQJCQk9IDB4NjAwNywKKwlNRV9IRENQ X0hfVkVSSUZJQ0FUSU9OX0ZBSUxFRAkJPSAweDYwMDgsCisJTUVfSERDUF9SRVBFQVRFUl9DSEVD S19VTkVYUEVDVEVECT0gMHg2MDA5LAorCU1FX0hEQ1BfVE9QT0xPR1lfTUFYX0VYQ0VFREVECQk9 IDB4NjAwQSwKKwlNRV9IRENQX1ZfVkVSSUZJQ0FUSU9OX0ZBSUxFRAkJPSAweDYwMEIsCisJTUVf SERDUF9MX1ZFUklGSUNBVElPTl9GQUlMRUQJCT0gMHg2MDBDLAorCU1FX0hEQ1BfU1RSRUFNX0tF WV9BTExPQ19GQUlMRUQJCT0gMHg2MDBELAorCU1FX0hEQ1BfQkFTRV9LRVlfUkVTRVRfRkFJTEVE CQk9IDB4NjAwRSwKKwlNRV9IRENQX05PTkNFX0dFTkVSQVRJT05fRkFJTEVECQk9IDB4NjAwRiwK KwlNRV9IRENQX1NUQVRVU19JTlZBTElEX0VfS0VZX1NUQVRFCT0gMHg2MDEwLAorCU1FX0hEQ1Bf U1RBVFVTX0lOVkFMSURfQ1NfSUNWCQk9IDB4NjAxMSwKKwlNRV9IRENQX1NUQVRVU19JTlZBTElE X0tCX0tFWV9TVEFURQk9IDB4NjAxMiwKKwlNRV9IRENQX1NUQVRVU19JTlZBTElEX1BBVlBfTU9E RV9JQ1YJPSAweDYwMTMsCisJTUVfSERDUF9TVEFUVVNfSU5WQUxJRF9QQVZQX01PREUJPSAweDYw MTQsCisJTUVfSERDUF9TVEFUVVNfTENfTUFYX0FUVEVNUFRTCQk9IDB4NjAxNSwKKworCS8qIE5l dyBzdGF0dXMgZm9yIEhEQ1AgMi4xICovCisJTUVfSERDUF9TVEFUVVNfTUlTTUFUQ0hfSU5fTQkJ PSAweDYwMTYsCisKKwkvKiBOZXcgc3RhdHVzIGNvZGUgZm9yIEhEQ1AgMi4yIFJ4ICovCisJTUVf SERDUF9TVEFUVVNfUlhfUFJPVl9OT1RfQUxMT1dFRAk9IDB4NjAxNywKKwlNRV9IRENQX1NUQVRV U19SWF9QUk9WX1dST05HX1NVQkpFQ1QJPSAweDYwMTgsCisJTUVfSERDUF9SWF9ORUVEU19QUk9W SVNJT05JTkcJCT0gMHg2MDE5LAorCU1FX0hEQ1BfQktTVl9JQ1ZfQVVUSF9GQUlMRUQJCT0gMHg2 MDIwLAorCU1FX0hEQ1BfU1RBVFVTX0lOVkFMSURfU1RSRUFNX0lECT0gMHg2MDIxLAorCU1FX0hE Q1BfU1RBVFVTX0NIQUlOX05PVF9JTklUSUFMSVpFRAk9IDB4NjAyMiwKKwlNRV9IRENQX0ZBSUxf Tk9UX0VYUEVDVEVECQk9IDB4NjAyMywKKwlNRV9IRENQX0ZBSUxfSERDUF9PRkYJCQk9IDB4NjAy NCwKKwlNRV9IRENQX0ZBSUxfSU5WQUxJRF9QQVZQX01FTU9SWV9NT0RFCT0gMHg2MDI1LAorCU1F X0hEQ1BfRkFJTF9BRVNfRUNCX0ZBSUxVUkUJCT0gMHg2MDI2LAorCU1FX0hEQ1BfRkVBVFVSRV9O T1RfU1VQUE9SVEVECQk9IDB4NjAyNywKKwlNRV9IRENQX0RNQV9SRUFEX0VSUk9SCQkJPSAweDYw MjgsCisJTUVfSERDUF9ETUFfV1JJVEVfRVJST1IJCQk9IDB4NjAyOSwKKwlNRV9IRENQX0ZBSUxf SU5WQUxJRF9QQUNLRVRfU0laRQk9IDB4NjAzMCwKKwlNRV9IRENQX0gyNjRfUEFSU0lOR19FUlJP UgkJPSAweDYwMzEsCisJTUVfSERDUF9IRENQMl9FUlJBVEFfVklERU9fVklPTEFUSU9OCT0gMHg2 MDMyLAorCU1FX0hEQ1BfSERDUDJfRVJSQVRBX0FVRElPX1ZJT0xBVElPTgk9IDB4NjAzMywKKwlN RV9IRENQX1RYX0FDVElWRV9FUlJPUgkJCT0gMHg2MDM0LAorCU1FX0hEQ1BfTU9ERV9DSEFOR0Vf RVJST1IJCT0gMHg2MDM1LAorCU1FX0hEQ1BfU1RSRUFNX1RZUEVfRVJST1IJCT0gMHg2MDM2LAor CU1FX0hEQ1BfU1RSRUFNX01BTkFHRV9OT1RfUE9TU0lCTEUJPSAweDYwMzcsCisKKwlNRV9IRENQ X1NUQVRVU19QT1JUX0lOVkFMSURfQ09NTUFORAk9IDB4NjAzOCwKKwlNRV9IRENQX1NUQVRVU19V TlNVUFBPUlRFRF9QUk9UT0NPTAk9IDB4NjAzOSwKKwlNRV9IRENQX1NUQVRVU19JTlZBTElEX1BP UlRfSU5ERVgJPSAweDYwM2EsCisJTUVfSERDUF9TVEFUVVNfVFhfQVVUSF9ORUVERUQJCT0gMHg2 MDNiLAorCU1FX0hEQ1BfU1RBVFVTX05PVF9JTlRFR1JBVEVEX1BPUlQJPSAweDYwM2MsCisJTUVf SERDUF9TVEFUVVNfU0VTU0lPTl9NQVhfUkVBQ0hFRAk9IDB4NjAzZCwKKworCS8qIGhkY3AgY2Fw YWJsZSBiaXQgaXMgbm90IHNldCBpbiByeF9jYXBzKGVycm9yIGlzIHVuaXF1ZSB0byBEUCkgKi8K KwlNRV9IRENQX1NUQVRVU19OT1RfSERDUF9DQVBBQkxFCQk9IDB4NjA0MSwKKworCU1FX0hEQ1Bf U1RBVFVTX0lOVkFMSURfU1RSRUFNX0NPVU5UCT0gMHg2MDQyLAorfTsKKworI2RlZmluZSBIRENQ X0FQSV9WRVJTSU9OCQkJCTB4MDAwMTAwMDAKKworI2RlZmluZSBIRENQX01fTEVOCQkJCQkxNgor I2RlZmluZSBIRENQX0tIX0xFTgkJCQkJMTYKKworLyogUGF5bG9hZCBCdWZmZXIgc2l6ZShFeGNs dWRpbmcgSGVhZGVyKSBmb3IgQ01EcyBhbmQgY29ycmVzcG9uZGluZyByZXNwb25zZSAqLworLyog V2lyZWRfVHhfQUtFICAqLworI2RlZmluZQlXSVJFRF9DTURfQlVGX0xFTl9JTklUSUFURV9IRENQ Ml9TRVNTSU9OX0lOCSg0ICsgMSkKKyNkZWZpbmUJV0lSRURfQ01EX0JVRl9MRU5fSU5JVElBVEVf SERDUDJfU0VTU0lPTl9PVVQJKDQgKyA4ICsgMykKKworI2RlZmluZQlXSVJFRF9DTURfQlVGX0xF Tl9WRVJJRllfUkVDRUlWRVJfQ0VSVF9JTgkoNCArIDUyMiArIDggKyAzKQorI2RlZmluZQlXSVJF RF9DTURfQlVGX0xFTl9WRVJJRllfUkVDRUlWRVJfQ0VSVF9NSU5fT1VUCSg0ICsgMSArIDMgKyAx NiArIDE2KQorI2RlZmluZQlXSVJFRF9DTURfQlVGX0xFTl9WRVJJRllfUkVDRUlWRVJfQ0VSVF9N QVhfT1VUCSg0ICsgMSArIDMgKyAxMjgpCisKKyNkZWZpbmUJV0lSRURfQ01EX0JVRl9MRU5fQUtF X1NFTkRfSFBSSU1FX0lOCQkoNCArIDMyKQorI2RlZmluZQlXSVJFRF9DTURfQlVGX0xFTl9BS0Vf U0VORF9IUFJJTUVfT1VUCQkoNCkKKworI2RlZmluZQlXSVJFRF9DTURfQlVGX0xFTl9TRU5EX1BB SVJJTkdfSU5GT19JTgkJKDQgKyAxNikKKyNkZWZpbmUJV0lSRURfQ01EX0JVRl9MRU5fU0VORF9Q QUlSSU5HX0lORk9fT1VUCQkoNCkKKworI2RlZmluZQlXSVJFRF9DTURfQlVGX0xFTl9DTE9TRV9T RVNTSU9OX0lOCQkoNCkKKyNkZWZpbmUJV0lSRURfQ01EX0JVRl9MRU5fQ0xPU0VfU0VTU0lPTl9P VVQJCSg0KQorCisvKiBXaXJlZF9UeF9MQyAqLworI2RlZmluZQlXSVJFRF9DTURfQlVGX0xFTl9J TklUX0xPQ0FMSVRZX0NIRUNLX0lOCSg0KQorI2RlZmluZQlXSVJFRF9DTURfQlVGX0xFTl9JTklU X0xPQ0FMSVRZX0NIRUNLX09VVAkoNCArIDgpCisKKyNkZWZpbmUJV0lSRURfQ01EX0JVRl9MRU5f VkFMSURBVEVfTE9DQUxJVFlfSU4JCSg0ICsgMzIpCisjZGVmaW5lCVdJUkVEX0NNRF9CVUZfTEVO X1ZBTElEQVRFX0xPQ0FMSVRZX09VVAkJKDQpCisKKy8qIFdpcmVkX1R4X1NLRSAqLworI2RlZmlu ZQlXSVJFRF9DTURfQlVGX0xFTl9HRVRfU0VTU0lPTl9LRVlfSU4JCSg0KQorI2RlZmluZQlXSVJF RF9DTURfQlVGX0xFTl9HRVRfU0VTU0lPTl9LRVlfT1VUCQkoNCArIDE2ICsgOCkKKworLyogV2ly ZWRfVHhfU0tFICovCisjZGVmaW5lCVdJUkVEX0NNRF9CVUZfTEVOX0VOQUJMRV9BVVRIX0lOCQko NCArIDEpCisjZGVmaW5lCVdJUkVEX0NNRF9CVUZfTEVOX0VOQUJMRV9BVVRIX09VVAkJKDQpCisK Ky8qIFdpcmVkX1R4X1JlcGVhdGVyICovCisjZGVmaW5lCVdJUkVEX0NNRF9CVUZfTEVOX1ZFUklG WV9SRVBFQVRFUl9JTgkJKDQgKyAyICsgMyArIDE2ICsgMTU1KQorI2RlZmluZQlXSVJFRF9DTURf QlVGX0xFTl9WRVJJRllfUkVQRUFURVJfT1VUCQkoNCArIDEgKyAxNikKKworI2RlZmluZQlXSVJF RF9DTURfQlVGX0xFTl9SRVBFQVRFUl9BVVRIX1NUUkVBTV9SRVFfTUlOX0lOCSg0ICsgMyArIFwK KwkJCQkJCQkJMzIgKyAyICsgMikKKworI2RlZmluZQlXSVJFRF9DTURfQlVGX0xFTl9SRVBFQVRF Ul9BVVRIX1NUUkVBTV9SRVFfT1VUCQkoNCkKKworLyogaGRjcF9jb21tYW5kX2lkOiBFbnVtZXJh dGlvbiBvZiBhbGwgV0lSRUQgSERDUCBDb21tYW5kIElEcyAqLworZW51bSBoZGNwX2NvbW1hbmRf aWQgeworCV9XSURJX0NPTU1BTkRfQkFTRQkJPSAweDAwMDMwMDAwLAorCVdJRElfSU5JVElBVEVf SERDUDJfU0VTU0lPTgk9IF9XSURJX0NPTU1BTkRfQkFTRSwKKwlIRENQX0dFVF9TUk1fU1RBVFVT LAorCUhEQ1BfU0VORF9TUk1fRlJBR01FTlQsCisKKwkvKiBUaGUgd2lyZWQgSERDUCBUeCBjb21t YW5kcyAqLworCV9XSVJFRF9DT01NQU5EX0JBU0UJCT0gMHgwMDAzMTAwMCwKKwlXSVJFRF9JTklU SUFURV9IRENQMl9TRVNTSU9OCT0gX1dJUkVEX0NPTU1BTkRfQkFTRSwKKwlXSVJFRF9WRVJJRllf UkVDRUlWRVJfQ0VSVCwKKwlXSVJFRF9BS0VfU0VORF9IUFJJTUUsCisJV0lSRURfQUtFX1NFTkRf UEFJUklOR19JTkZPLAorCVdJUkVEX0lOSVRfTE9DQUxJVFlfQ0hFQ0ssCisJV0lSRURfVkFMSURB VEVfTE9DQUxJVFksCisJV0lSRURfR0VUX1NFU1NJT05fS0VZLAorCVdJUkVEX0VOQUJMRV9BVVRI LAorCVdJUkVEX1ZFUklGWV9SRVBFQVRFUiwKKwlXSVJFRF9SRVBFQVRFUl9BVVRIX1NUUkVBTV9S RVEsCisJV0lSRURfQ0xPU0VfU0VTU0lPTiwKKworCV9XSVJFRF9DT01NQU5EU19DT1VOVCwKK307 CisKK3VuaW9uIGVuY3J5cHRlZF9idWZmIHsKKwl1OAkJZV9rcHViX2ttW0hEQ1BfMl8yX0VfS1BV Ql9LTV9MRU5dOworCXU4CQllX2toX2ttX21bSERDUF8yXzJfRV9LSF9LTV9NX0xFTl07CisJc3Ry dWN0IHsKKwkJdTgJZV9raF9rbVtIRENQX0tIX0xFTl07CisJCXU4CW1bSERDUF9NX0xFTl07CisJ fSBfX3BhY2tlZDsKK307CisKKy8qIEhEQ1AgSEVDSSBtZXNzYWdlIGhlYWRlci4gQWxsIGhlYWRl ciB2YWx1ZXMgYXJlIGxpdHRsZSBlbmRpYW4uICovCitzdHJ1Y3QgaGRjcF9jbWRfaGVhZGVyIHsK Kwl1MzIJCQlhcGlfdmVyc2lvbjsKKwl1MzIJCQljb21tYW5kX2lkOworCWVudW0gbWVfaGRjcF9z dGF0dXMJc3RhdHVzOworCS8qIExlbmd0aCBvZiB0aGUgSEVDSSBtZXNzYWdlIChleGNsdWRpbmcg dGhlIGhlYWRlcikgKi8KKwl1MzIJCQlidWZmZXJfbGVuOworfSBfX3BhY2tlZDsKKworLyogRW1w dHkgY29tbWFuZCByZXF1ZXN0IG9yIHJlc3BvbnNlLiBObyBkYXRhIGZvbGxvd3MgdGhlIGhlYWRl ci4gKi8KK3N0cnVjdCBoZGNwX2NtZF9ub19kYXRhIHsKKwlzdHJ1Y3QgaGRjcF9jbWRfaGVhZGVy IGhlYWRlcjsKK30gX19wYWNrZWQ7CisKKy8qIFVuaXF1ZWx5IGlkZW50aWZpZXMgdGhlIGhkY3Ag cG9ydCBiZWluZyBhZGRyZXNzZWQgZm9yIGEgZ2l2ZW4gY29tbWFuZC4gKi8KK3N0cnVjdCBoZGNw X3BvcnRfaWQgeworCXU4CWludGVncmF0ZWRfcG9ydF90eXBlOworCXU4CXBoeXNpY2FsX3BvcnQ7 CisJdTE2CXJlc2VydmVkOworfSBfX3BhY2tlZDsKKworLyoKKyAqIERhdGEgc3RydWN0dXJlcyBm b3IgaW50ZWdyYXRlZCB3aXJlZCBIRENQMiBUeCBpbgorICogc3VwcG9ydCBvZiB0aGUgQUtFIHBy b3RvY29sCisgKi8KKy8qIEhFQ0kgc3RydWN0IGZvciBpbnRlZ3JhdGVkIHdpcmVkIEhEQ1AgVHgg c2Vzc2lvbiBpbml0aWF0aW9uLiAqLworc3RydWN0IHdpcmVkX2NtZF9pbml0aWF0ZV9oZGNwMl9z ZXNzaW9uX2luIHsKKwlzdHJ1Y3QgaGRjcF9jbWRfaGVhZGVyCWhlYWRlcjsKKwlzdHJ1Y3QgaGRj cF9wb3J0X2lkCXBvcnQ7CisJdTgJCQlwcm90b2NvbDsgLyogZm9yIEhETUkgdnMgRFAgKi8KK30g X19wYWNrZWQ7CisKK3N0cnVjdCB3aXJlZF9jbWRfaW5pdGlhdGVfaGRjcDJfc2Vzc2lvbl9vdXQg eworCXN0cnVjdCBoZGNwX2NtZF9oZWFkZXIJaGVhZGVyOworCXN0cnVjdCBoZGNwX3BvcnRfaWQJ cG9ydDsKKwl1OAkJCXJfdHhbSERDUF8yXzJfUlRYX0xFTl07CisJc3RydWN0IGhkY3AyX3R4X2Nh cHMJdHhfY2FwczsKK30gX19wYWNrZWQ7CisKKy8qIEhFQ0kgc3RydWN0IGZvciBlbmRpbmcgYW4g aW50ZWdyYXRlZCB3aXJlZCBIRENQIFR4IHNlc3Npb24uICovCitzdHJ1Y3Qgd2lyZWRfY21kX2Ns b3NlX3Nlc3Npb25faW4geworCXN0cnVjdCBoZGNwX2NtZF9oZWFkZXIJaGVhZGVyOworCXN0cnVj dCBoZGNwX3BvcnRfaWQJcG9ydDsKK30gX19wYWNrZWQ7CisKK3N0cnVjdCB3aXJlZF9jbWRfY2xv c2Vfc2Vzc2lvbl9vdXQgeworCXN0cnVjdCBoZGNwX2NtZF9oZWFkZXIJaGVhZGVyOworCXN0cnVj dCBoZGNwX3BvcnRfaWQJcG9ydDsKK30gX19wYWNrZWQ7CisKKy8qIEhFQ0kgc3RydWN0IGZvciBp bnRlZ3JhdGVkIHdpcmVkIEhEQ1AgVHggUnggQ2VydCB2ZXJpZmljYXRpb24uICovCitzdHJ1Y3Qg d2lyZWRfY21kX3ZlcmlmeV9yZWNlaXZlcl9jZXJ0X2luIHsKKwlzdHJ1Y3QgaGRjcF9jbWRfaGVh ZGVyCWhlYWRlcjsKKwlzdHJ1Y3QgaGRjcF9wb3J0X2lkCXBvcnQ7CisJc3RydWN0IGhkY3AyX2Nl cnRfcngJY2VydF9yeDsKKwl1OAkJCXJfcnhbSERDUF8yXzJfUlJYX0xFTl07CisJdTgJCQlyeF9j YXBzW0hEQ1BfMl8yX1JYQ0FQU19MRU5dOworfSBfX3BhY2tlZDsKKworc3RydWN0IHdpcmVkX2Nt ZF92ZXJpZnlfcmVjZWl2ZXJfY2VydF9vdXQgeworCXN0cnVjdCBoZGNwX2NtZF9oZWFkZXIJaGVh ZGVyOworCXN0cnVjdCBoZGNwX3BvcnRfaWQJcG9ydDsKKwl1OAkJCWttX3N0b3JlZDsKKwl1OAkJ CXJlc2VydmVkWzNdOworCXVuaW9uIGVuY3J5cHRlZF9idWZmCWVrbV9idWZmOworfSBfX3BhY2tl ZDsKKworLyogSEVDSSBzdHJ1Y3QgZm9yIHZlcmlmaWNhdGlvbiBvZiBSeCdzIEhwcmltZSBpbiBh IEhEQ1AgVHggc2Vzc2lvbiAqLworc3RydWN0IHdpcmVkX2NtZF9ha2Vfc2VuZF9ocHJpbWVfaW4g eworCXN0cnVjdCBoZGNwX2NtZF9oZWFkZXIJaGVhZGVyOworCXN0cnVjdCBoZGNwX3BvcnRfaWQJ cG9ydDsKKwl1OAkJCWhfcHJpbWVbSERDUF8yXzJfSF9QUklNRV9MRU5dOworfSBfX3BhY2tlZDsK Kworc3RydWN0IHdpcmVkX2NtZF9ha2Vfc2VuZF9ocHJpbWVfb3V0IHsKKwlzdHJ1Y3QgaGRjcF9j bWRfaGVhZGVyCWhlYWRlcjsKKwlzdHJ1Y3QgaGRjcF9wb3J0X2lkCXBvcnQ7Cit9IF9fcGFja2Vk OworCisvKgorICogSEVDSSBzdHJ1Y3QgZm9yIHNlbmRpbmcgaW4gQUtFIHBhaXJpbmcgZGF0YSBn ZW5lcmF0ZWQgYnkgdGhlIFJ4IGluIGFuCisgKiBpbnRlZ3JhdGVkIHdpcmVkIEhEQ1AgVHggc2Vz c2lvbi4KKyAqLworc3RydWN0IHdpcmVkX2NtZF9ha2Vfc2VuZF9wYWlyaW5nX2luZm9faW4gewor CXN0cnVjdCBoZGNwX2NtZF9oZWFkZXIJaGVhZGVyOworCXN0cnVjdCBoZGNwX3BvcnRfaWQJcG9y dDsKKwl1OAkJCWVfa2hfa21bSERDUF8yXzJfRV9LSF9LTV9MRU5dOworfSBfX3BhY2tlZDsKKwor c3RydWN0IHdpcmVkX2NtZF9ha2Vfc2VuZF9wYWlyaW5nX2luZm9fb3V0IHsKKwlzdHJ1Y3QgaGRj cF9jbWRfaGVhZGVyCWhlYWRlcjsKKwlzdHJ1Y3QgaGRjcF9wb3J0X2lkCXBvcnQ7Cit9IF9fcGFj a2VkOworCisvKiBEYXRhIHN0cnVjdHVyZXMgZm9yIGludGVncmF0ZWQgd2lyZWQgSERDUDIgVHgg aW4gc3VwcG9ydCBvZiB0aGUgTEMgcHJvdG9jb2wqLworLyoKKyAqIEhFQ0kgc3RydWN0IGZvciBp bml0aWF0aW5nIGxvY2FsaXR5IGNoZWNrIHdpdGggYW4KKyAqIGludGVncmF0ZWQgd2lyZWQgSERD UCBUeCBzZXNzaW9uLgorICovCitzdHJ1Y3Qgd2lyZWRfY21kX2luaXRfbG9jYWxpdHlfY2hlY2tf aW4geworCXN0cnVjdCBoZGNwX2NtZF9oZWFkZXIJaGVhZGVyOworCXN0cnVjdCBoZGNwX3BvcnRf aWQJcG9ydDsKK30gX19wYWNrZWQ7CisKK3N0cnVjdCB3aXJlZF9jbWRfaW5pdF9sb2NhbGl0eV9j aGVja19vdXQgeworCXN0cnVjdCBoZGNwX2NtZF9oZWFkZXIJaGVhZGVyOworCXN0cnVjdCBoZGNw X3BvcnRfaWQJcG9ydDsKKwl1OAkJCXJfbltIRENQXzJfMl9STl9MRU5dOworfSBfX3BhY2tlZDsK KworLyoKKyAqIEhFQ0kgc3RydWN0IGZvciB2YWxpZGF0aW5nIGFuIFJ4J3MgTFByaW1lIHZhbHVl IGluIGFuCisgKiBpbnRlZ3JhdGVkIHdpcmVkIEhEQ1AgVHggc2Vzc2lvbi4KKyAqLworc3RydWN0 IHdpcmVkX2NtZF92YWxpZGF0ZV9sb2NhbGl0eV9pbiB7CisJc3RydWN0IGhkY3BfY21kX2hlYWRl cgloZWFkZXI7CisJc3RydWN0IGhkY3BfcG9ydF9pZAlwb3J0OworCXU4CQkJbF9wcmltZVtIRENQ XzJfMl9MX1BSSU1FX0xFTl07Cit9IF9fcGFja2VkOworCitzdHJ1Y3Qgd2lyZWRfY21kX3ZhbGlk YXRlX2xvY2FsaXR5X291dCB7CisJc3RydWN0IGhkY3BfY21kX2hlYWRlcgloZWFkZXI7CisJc3Ry dWN0IGhkY3BfcG9ydF9pZAlwb3J0OworfSBfX3BhY2tlZDsKKworLyoKKyAqIERhdGEgc3RydWN0 dXJlcyBmb3IgaW50ZWdyYXRlZCB3aXJlZCBIRENQMiBUeCBpbiBzdXBwb3J0IG9mIHRoZQorICog U0tFIHByb3RvY29sCisgKi8KKy8qIEhFQ0kgc3RydWN0IGZvciBjcmVhdGluZyBzZXNzaW9uIGtl eSAqLworc3RydWN0IHdpcmVkX2NtZF9nZXRfc2Vzc2lvbl9rZXlfaW4geworCXN0cnVjdCBoZGNw X2NtZF9oZWFkZXIJaGVhZGVyOworCXN0cnVjdCBoZGNwX3BvcnRfaWQJcG9ydDsKK30gX19wYWNr ZWQ7CisKK3N0cnVjdCB3aXJlZF9jbWRfZ2V0X3Nlc3Npb25fa2V5X291dCB7CisJc3RydWN0IGhk Y3BfY21kX2hlYWRlcgloZWFkZXI7CisJc3RydWN0IGhkY3BfcG9ydF9pZAlwb3J0OworCXU4CQkJ ZV9ka2V5X2tzW0hEQ1BfMl8yX0VfREtFWV9LU19MRU5dOworCXU4CQkJcl9pdltIRENQXzJfMl9S SVZfTEVOXTsKK30gX19wYWNrZWQ7CisKKy8qIEhFQ0kgc3RydWN0IGZvciB0aGUgVHggZW5hYmxl IGF1dGhlbnRpY2F0aW9uIGNvbW1hbmQgKi8KK3N0cnVjdCB3aXJlZF9jbWRfZW5hYmxlX2F1dGhf aW4geworCXN0cnVjdCBoZGNwX2NtZF9oZWFkZXIJaGVhZGVyOworCXN0cnVjdCBoZGNwX3BvcnRf aWQJcG9ydDsKKwl1OAkJCXN0cmVhbV90eXBlOworfSBfX3BhY2tlZDsKKworc3RydWN0IHdpcmVk X2NtZF9lbmFibGVfYXV0aF9vdXQgeworCXN0cnVjdCBoZGNwX2NtZF9oZWFkZXIJaGVhZGVyOwor CXN0cnVjdCBoZGNwX3BvcnRfaWQJcG9ydDsKK30gX19wYWNrZWQ7CisKKy8qCisgKiBEYXRhIHN0 cnVjdHVyZXMgZm9yIGludGVncmF0ZWQgd2lyZWQgSERDUDIgVHggaW4gc3VwcG9ydCBvZgorICog dGhlIHJlcGVhdGVyIHByb3RvY29scworICovCisvKgorICogSEVDSSBzdHJ1Y3QgZm9yIHZlcmlm eWluZyB0aGUgZG93bnN0cmVhbSByZXBlYXRlcidzIEhEQ1AgdG9wb2xvZ3kgaW4gYW4KKyAqIGlu dGVncmF0ZWQgd2lyZWQgSERDUCBUeCBzZXNzaW9uLgorICovCitzdHJ1Y3Qgd2lyZWRfY21kX3Zl cmlmeV9yZXBlYXRlcl9pbiB7CisJc3RydWN0IGhkY3BfY21kX2hlYWRlcgloZWFkZXI7CisJc3Ry dWN0IGhkY3BfcG9ydF9pZAlwb3J0OworCXU4CQkJcnhfaW5mb1tIRENQXzJfMl9SWElORk9fTEVO XTsKKwl1OAkJCXNlcV9udW1fdltIRENQXzJfMl9TRVFfTlVNX0xFTl07CisJdTgJCQl2X3ByaW1l W0hEQ1BfMl8yX1ZfUFJJTUVfSEFMRl9MRU5dOworCXU4CQkJcmVjZWl2ZXJfaWRzW0hEQ1BfMl8y X1JFQ0VJVkVSX0lEU19NQVhfTEVOXTsKK30gX19wYWNrZWQ7CisKK3N0cnVjdCB3aXJlZF9jbWRf dmVyaWZ5X3JlcGVhdGVyX291dCB7CisJc3RydWN0IGhkY3BfY21kX2hlYWRlcgloZWFkZXI7CisJ c3RydWN0IGhkY3BfcG9ydF9pZAlwb3J0OworCXU4CQkJY29udGVudF90eXBlX3N1cHBvcnRlZDsK Kwl1OAkJCXZbSERDUF8yXzJfVl9QUklNRV9IQUxGX0xFTl07Cit9IF9fcGFja2VkOworCisvKgor ICogSEVDSSBzdHJ1Y3QgaW4gc3VwcG9ydCBvZiBzdHJlYW0gbWFuYWdlbWVudCBpbiBhbgorICog aW50ZWdyYXRlZCB3aXJlZCBIRENQIFR4IHNlc3Npb24uCisgKi8KK3N0cnVjdCB3aXJlZF9jbWRf cmVwZWF0ZXJfYXV0aF9zdHJlYW1fcmVxX2luIHsKKwlzdHJ1Y3QgaGRjcF9jbWRfaGVhZGVyCQlo ZWFkZXI7CisJc3RydWN0IGhkY3BfcG9ydF9pZAkJcG9ydDsKKwl1OAkJCQlzZXFfbnVtX21bSERD UF8yXzJfU0VRX05VTV9MRU5dOworCXU4CQkJCW1fcHJpbWVbSERDUF8yXzJfTVBSSU1FX0xFTl07 CisJdTE2CQkJCWs7CisJc3RydWN0IGhkY3AyX3N0cmVhbWlkX3R5cGUJc3RyZWFtc1sxXTsKK30g X19wYWNrZWQ7CisKK3N0cnVjdCB3aXJlZF9jbWRfcmVwZWF0ZXJfYXV0aF9zdHJlYW1fcmVxX291 dCB7CisJc3RydWN0IGhkY3BfY21kX2hlYWRlcgloZWFkZXI7CisJc3RydWN0IGhkY3BfcG9ydF9p ZAlwb3J0OworfSBfX3BhY2tlZDsKKworI2VuZGlmIC8qIF9fTUVJX0hEQ1BfSF9fICovCi0tIAoy LjcuNAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50 ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBz Oi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==