From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id E3113EB64DD for ; Fri, 30 Jun 2023 15:16:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-ID:Date:Subject:Cc:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=6g2Y3C++cYwxtjVJM2oBNaALBMkEFujuMjFU5Wpf17E=; b=Ia262TW3zJUh52 7O1WkG6+foZ1eDzsz6wupLzOh3Lc3OIhdljGjQqkd8A2gZ6D9um8/Z2SLAT+OWgoWJ2kpY4RqXJfq m2GVSgga6V6un1jw0gojowcLGhYwhU/Oy/92VNxJKwqyO7v4P1R3VTLsBC53GRGBQlH/1qekyY+cT HfGkjHXg92tcexsuJ/YnoJ0PbZVA/kxhlkIMQsRvUxe5xagRYACGdGN4usrrqeVtMm5bbrB4GhBOT 6Gh3/4SMmSA5nfCjIyi0uugKeL3eQM5Zxvx66XVnw5fFPP/j3BVcTdSleABIhrFJ2d1LX+BgStno1 VPh+pYDauT743a3SEPUw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1qFFqW-003vGP-1s; Fri, 30 Jun 2023 15:15:40 +0000 Received: from madras.collabora.co.uk ([46.235.227.172]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1qFFpx-003uzs-2w; Fri, 30 Jun 2023 15:15:07 +0000 Received: from notapiano.myfiosgateway.com (zone.collabora.co.uk [167.235.23.81]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: nfraprado) by madras.collabora.co.uk (Postfix) with ESMTPSA id CB52E6606E8F; Fri, 30 Jun 2023 16:15:01 +0100 (BST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1688138104; bh=rJJtwW4PzmZJfVp32PC1meEKziFvUtXx6MtiCW+GUKc=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=EPISfpTuPEaBvjiuNdoFViybU+KZKWfhbedynHOpuEAB3+waGY8V3zqNwYy5u4rlg vG7Z2ZZwFE3iLhxXdndY62S/lKw7m+QvcSKyZjNrNYmP37kYSHl6I96fwO4XRU4w+D wXia77mWAarXdYhKTFArXPkQc+Lx0EWTp5IiAQYBcMlqDrlBKobtORrKM26l9z+J31 PGV4d23oV61flg/xTh9pkWZU6GC5hWsSt03lJgpR/IVOsm0vvscc5Q5lw/JTESxWWd aQOtGWQp52VOII/bkfyAgTPaM8u39daLraMrIGhIULxMwl3k5jY1po46OSAtJJmdBf uBEw/P32PLCtw== From: =?UTF-8?q?N=C3=ADcolas=20F=2E=20R=2E=20A=2E=20Prado?= To: Matthias Brugger , Hans Verkuil Cc: AngeloGioacchino Del Regno , kernel@collabora.com, =?UTF-8?q?N=C3=ADcolas=20F=2E=20R=2E=20A=2E=20Prado?= , Andrew-CT Chen , Mauro Carvalho Chehab , Tiffany Lin , Yunfei Dong , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-media@vger.kernel.org, linux-mediatek@lists.infradead.org Subject: [PATCH v5 5/7] media: mediatek: vcodec: Read HW active status from syscon Date: Fri, 30 Jun 2023 11:14:11 -0400 Message-ID: <20230630151436.155586-6-nfraprado@collabora.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230630151436.155586-1-nfraprado@collabora.com> References: <20230630151436.155586-1-nfraprado@collabora.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230630_081506_207461_3B52DDC0 X-CRM114-Status: GOOD ( 26.14 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org UmVtb3ZlIHRoZSByZXF1aXJlbWVudCBvZiBhIFZERUNfU1lTIHJlZyBpb3NwYWNlIGZvciBib3Ro IE1UODE3MyBhbmQKTVQ4MTgzLiBUbyBhY2hpZXZlIHRoYXQsIHJlbHkgb24gYSB2ZGVjc3lzIHN5 c2NvbiB0byBiZSBwYXNzZWQgdGhyb3VnaAp0aGUgRFQsIGFuZCB1c2UgaXQgdG8gZGlyZWN0bHkg cmVhZCB0aGUgVkRFQ19IV19BQ1RJVkUgYml0IGR1cmluZyBJUlEKaGFuZGxpbmcgdG8gY2hlY2sg d2hldGhlciB0aGUgSFcgaXMgYWN0aXZlLiBBbHNvIHVwZGF0ZSB0aGUgVlA4IHN0YXRlZnVsCmRl Y29kZXIgdG8gdXNlIHRoZSBzeXNjb24sIGlmIHByZXNlbnQsIGZvciB3cml0ZXMgdG8gVkRFQ19T WVMuCgpUaGUgb2xkIGJlaGF2aW9yIGlzIHN0aWxsIHByZXNlbnQgd2hlbiByZWctbmFtZXMgYXJl bid0IHN1cHBsaWVkLCBhcwp0byBrZWVwIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkuCgpTaWduZWQt b2ZmLWJ5OiBOw61jb2xhcyBGLiBSLiBBLiBQcmFkbyA8bmZyYXByYWRvQGNvbGxhYm9yYS5jb20+ CgotLS0KCkNoYW5nZXMgaW4gdjU6Ci0gQWRkZWQgZXhwbGljaXQgbGludXgvYml0ZmllbGQuaCBp bmNsdWRlIGZvciBGSUVMRF9HRVQoKSwgZm9sbG93aW5nCiAgMGRheSByZXBvcnQKCkNoYW5nZXMg aW4gdjQ6Ci0gQWRkZWQgbmV3IGhlbHBlciBhbmQgdXBkYXRlZCBWUDggc3RhdGVmdWwgZGVjb2Rl ciB0byB1c2UgaXQsIHNvIHRoZQogIHN5c2NvbiBjYW4gYWxzbyBiZSB1c2VkIGJ5IG10ODE3Mwot IE1hZGUgaGFuZGxpbmcgY2xlYW5lcgotIFJld29yZGVkIGNvbW1pdAoKQ2hhbmdlcyBpbiB2MzoK LSBTd2l0Y2hlZCBoYW5kbGluZyBvZiBWREVDX0hXX0FDVElWRSB0byB1c2UgYSBzeXNjb24gaW5z dGVhZCBvZiB0aGUKICAnYWN0aXZlJyBjbG9jawotIFJld29yZGVkIGNvbW1pdAotIFJlbW92ZWQg Y2hhbmdlcyB0byBzdWJkZXYgcGFydCBvZiBkcml2ZXIsIHNpbmNlIHRoZXkgYXJlbid0IHVzZWQg YnkKICBNVDgxODMKCiAuLi4vbWVkaWF0ZWsvdmNvZGVjL210a192Y29kZWNfZGVjX2Rydi5jICAg ICAgfCA3NyArKysrKysrKysrKysrKysrLS0tCiAuLi4vcGxhdGZvcm0vbWVkaWF0ZWsvdmNvZGVj L210a192Y29kZWNfZHJ2LmggfCAgMSArCiAuLi4vbWVkaWF0ZWsvdmNvZGVjL210a192Y29kZWNf dXRpbC5jICAgICAgICAgfCAxNSArKysrCiAuLi4vbWVkaWF0ZWsvdmNvZGVjL210a192Y29kZWNf dXRpbC5oICAgICAgICAgfCAgMiArCiAuLi4vbWVkaWF0ZWsvdmNvZGVjL3ZkZWMvdmRlY192cDhf aWYuYyAgICAgICAgfCAxMCArLS0KIDUgZmlsZXMgY2hhbmdlZCwgODcgaW5zZXJ0aW9ucygrKSwg MTggZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9tZWRp YXRlay92Y29kZWMvbXRrX3Zjb2RlY19kZWNfZHJ2LmMgYi9kcml2ZXJzL21lZGlhL3BsYXRmb3Jt L21lZGlhdGVrL3Zjb2RlYy9tdGtfdmNvZGVjX2RlY19kcnYuYwppbmRleCA4Mzc4MGQyOWE5Y2Yu Ljc0MmI2OTAzZDAzMCAxMDA2NDQKLS0tIGEvZHJpdmVycy9tZWRpYS9wbGF0Zm9ybS9tZWRpYXRl ay92Y29kZWMvbXRrX3Zjb2RlY19kZWNfZHJ2LmMKKysrIGIvZHJpdmVycy9tZWRpYS9wbGF0Zm9y bS9tZWRpYXRlay92Y29kZWMvbXRrX3Zjb2RlY19kZWNfZHJ2LmMKQEAgLTUsMTMgKzUsMTYgQEAK ICAqICAgICAgICAgVGlmZmFueSBMaW4gPHRpZmZhbnkubGluQG1lZGlhdGVrLmNvbT4KICAqLwog CisjaW5jbHVkZSA8bGludXgvYml0ZmllbGQuaD4KICNpbmNsdWRlIDxsaW51eC9zbGFiLmg+CiAj aW5jbHVkZSA8bGludXgvaW50ZXJydXB0Lmg+CiAjaW5jbHVkZSA8bGludXgvaXJxLmg+CisjaW5j bHVkZSA8bGludXgvbWZkL3N5c2Nvbi5oPgogI2luY2x1ZGUgPGxpbnV4L21vZHVsZS5oPgogI2lu Y2x1ZGUgPGxpbnV4L29mX2RldmljZS5oPgogI2luY2x1ZGUgPGxpbnV4L29mLmg+CiAjaW5jbHVk ZSA8bGludXgvcG1fcnVudGltZS5oPgorI2luY2x1ZGUgPGxpbnV4L3JlZ21hcC5oPgogI2luY2x1 ZGUgPG1lZGlhL3Y0bDItZXZlbnQuaD4KICNpbmNsdWRlIDxtZWRpYS92NGwyLW1lbTJtZW0uaD4K ICNpbmNsdWRlIDxtZWRpYS92aWRlb2J1ZjItZG1hLWNvbnRpZy5oPgpAQCAtMzgsMjIgKzQxLDMw IEBAIHN0YXRpYyBpbnQgbXRrX3Zjb2RlY19nZXRfaHdfY291bnQoc3RydWN0IG10a192Y29kZWNf ZGV2ICpkZXYpCiAJfQogfQogCitzdGF0aWMgYm9vbCBtdGtfdmNvZGVjX2lzX2h3X2FjdGl2ZShz dHJ1Y3QgbXRrX3Zjb2RlY19kZXYgKmRldikKK3sKKwl1MzIgY2dfc3RhdHVzOworCisJaWYgKGRl di0+dmRlY3N5c19yZWdtYXApCisJCXJldHVybiAhcmVnbWFwX3Rlc3RfYml0cyhkZXYtPnZkZWNz eXNfcmVnbWFwLCBWREVDX0hXX0FDVElWRV9BRERSLAorCQkJCQkgVkRFQ19IV19BQ1RJVkVfTUFT Syk7CisKKwljZ19zdGF0dXMgPSByZWFkbChkZXYtPnJlZ19iYXNlW1ZERUNfU1lTXSArIFZERUNf SFdfQUNUSVZFX0FERFIpOworCXJldHVybiAhRklFTERfR0VUKFZERUNfSFdfQUNUSVZFX01BU0ss IGNnX3N0YXR1cyk7Cit9CisKIHN0YXRpYyBpcnFyZXR1cm5fdCBtdGtfdmNvZGVjX2RlY19pcnFf aGFuZGxlcihpbnQgaXJxLCB2b2lkICpwcml2KQogewogCXN0cnVjdCBtdGtfdmNvZGVjX2RldiAq ZGV2ID0gcHJpdjsKIAlzdHJ1Y3QgbXRrX3Zjb2RlY19jdHggKmN0eDsKLQl1MzIgY2dfc3RhdHVz ID0gMDsKIAl1bnNpZ25lZCBpbnQgZGVjX2RvbmVfc3RhdHVzID0gMDsKIAl2b2lkIF9faW9tZW0g KnZkZWNfbWlzY19hZGRyID0gZGV2LT5yZWdfYmFzZVtWREVDX01JU0NdICsKIAkJCQkJVkRFQ19J UlFfQ0ZHX1JFRzsKIAogCWN0eCA9IG10a192Y29kZWNfZ2V0X2N1cnJfY3R4KGRldiwgTVRLX1ZE RUNfQ09SRSk7CiAKLQkvKiBjaGVjayBpZiBIVyBhY3RpdmUgb3Igbm90ICovCi0JY2dfc3RhdHVz ID0gcmVhZGwoZGV2LT5yZWdfYmFzZVswXSArIFZERUNfSFdfQUNUSVZFX0FERFIpOwotCWlmICgo Y2dfc3RhdHVzICYgVkRFQ19IV19BQ1RJVkVfTUFTSykgIT0gMCkgewotCQltdGtfdjRsMl9lcnIo IkRFQyBJU1IsIFZERUMgYWN0aXZlIGlzIG5vdCAweDAgKDB4JTA4eCkiLAotCQkJICAgICBjZ19z dGF0dXMpOworCWlmICghbXRrX3Zjb2RlY19pc19od19hY3RpdmUoZGV2KSkgeworCQltdGtfdjRs Ml9lcnIoIkRFQyBJU1IsIFZERUMgYWN0aXZlIGlzIG5vdCAweDAiKTsKIAkJcmV0dXJuIElSUV9I QU5ETEVEOwogCX0KIApAQCAtODIsNiArOTMsMzMgQEAgc3RhdGljIGludCBtdGtfdmNvZGVjX2dl dF9yZWdfYmFzZXMoc3RydWN0IG10a192Y29kZWNfZGV2ICpkZXYpCiB7CiAJc3RydWN0IHBsYXRm b3JtX2RldmljZSAqcGRldiA9IGRldi0+cGxhdF9kZXY7CiAJaW50IHJlZ19udW0sIGk7CisJc3Ry dWN0IHJlc291cmNlICpyZXM7CisJYm9vbCBoYXNfdmRlY3N5c19yZWc7CisJc3RhdGljIGNvbnN0 IGNoYXIgKiBjb25zdCBtdGtfZGVjX3JlZ19uYW1lc1tdID0geworCQkibWlzYyIsCisJCSJsZCIs CisJCSJ0b3AiLAorCQkiY20iLAorCQkiYWQiLAorCQkiYXYiLAorCQkicHAiLAorCQkiaHdkIiwK KwkJImh3cSIsCisJCSJod2IiLAorCQkiaHdnIgorCX07CisKKwkvKgorCSAqIElmIHdlIGhhdmUg cmVnLW5hbWVzIGluIGRldmljZXRyZWUsIHRoaXMgbWVhbnMgdGhhdCB3ZSdyZSBvbiBhIG5ldwor CSAqIHJlZ2lzdGVyIG9yZ2FuaXphdGlvbiwgd2hpY2ggaW1wbGllcyB0aGF0IHRoZSBWREVDX1NZ UyBpb3NwYWNlIGdldHMKKwkgKiBSL1cgdGhyb3VnaCBhIHN5c2NvbiAocmVnbWFwKS4KKwkgKiBI ZXJlIHdlIHRyeSB0byBnZXQgdGhlICJtaXNjIiBpb3N0YXJ0IG9ubHkgdG8gY2hlY2sgaWYgd2Ug aGF2ZSByZWctbmFtZXMKKwkgKi8KKwlyZXMgPSBwbGF0Zm9ybV9nZXRfcmVzb3VyY2VfYnluYW1l KHBkZXYsIElPUkVTT1VSQ0VfTUVNLCAibWlzYyIpOworCWlmIChyZXMpCisJCWhhc192ZGVjc3lz X3JlZyA9IGZhbHNlOworCWVsc2UKKwkJaGFzX3ZkZWNzeXNfcmVnID0gdHJ1ZTsKIAogCS8qIFNp emVvZih1MzIpICogNCBieXRlcyBmb3IgZWFjaCByZWdpc3RlciBiYXNlLiAqLwogCXJlZ19udW0g PSBvZl9wcm9wZXJ0eV9jb3VudF9lbGVtc19vZl9zaXplKHBkZXYtPmRldi5vZl9ub2RlLCAicmVn IiwKQEAgLTkxLDEyICsxMjksMjkgQEAgc3RhdGljIGludCBtdGtfdmNvZGVjX2dldF9yZWdfYmFz ZXMoc3RydWN0IG10a192Y29kZWNfZGV2ICpkZXYpCiAJCXJldHVybiAtRUlOVkFMOwogCX0KIAot CWZvciAoaSA9IDA7IGkgPCByZWdfbnVtOyBpKyspIHsKLQkJZGV2LT5yZWdfYmFzZVtpXSA9IGRl dm1fcGxhdGZvcm1faW9yZW1hcF9yZXNvdXJjZShwZGV2LCBpKTsKLQkJaWYgKElTX0VSUihkZXYt PnJlZ19iYXNlW2ldKSkKLQkJCXJldHVybiBQVFJfRVJSKGRldi0+cmVnX2Jhc2VbaV0pOworCWlm IChoYXNfdmRlY3N5c19yZWcpIHsKKwkJZm9yIChpID0gMDsgaSA8IHJlZ19udW07IGkrKykgewor CQkJZGV2LT5yZWdfYmFzZVtpXSA9IGRldm1fcGxhdGZvcm1faW9yZW1hcF9yZXNvdXJjZShwZGV2 LCBpKTsKKwkJCWlmIChJU19FUlIoZGV2LT5yZWdfYmFzZVtpXSkpCisJCQkJcmV0dXJuIFBUUl9F UlIoZGV2LT5yZWdfYmFzZVtpXSk7CisKKwkJCW10a192NGwyX2RlYnVnKDIsICJyZWdbJWRdIGJh c2U9JXAiLCBpLCBkZXYtPnJlZ19iYXNlW2ldKTsKKwkJfQorCX0gZWxzZSB7CisJCWZvciAoaSA9 IDA7IGkgPCByZWdfbnVtOyBpKyspIHsKKwkJCWRldi0+cmVnX2Jhc2VbaSsxXSA9IGRldm1fcGxh dGZvcm1faW9yZW1hcF9yZXNvdXJjZV9ieW5hbWUocGRldiwgbXRrX2RlY19yZWdfbmFtZXNbaV0p OworCQkJaWYgKElTX0VSUihkZXYtPnJlZ19iYXNlW2krMV0pKQorCQkJCXJldHVybiBQVFJfRVJS KGRldi0+cmVnX2Jhc2VbaSsxXSk7CiAKLQkJbXRrX3Y0bDJfZGVidWcoMiwgInJlZ1slZF0gYmFz ZT0lcCIsIGksIGRldi0+cmVnX2Jhc2VbaV0pOworCQkJbXRrX3Y0bDJfZGVidWcoMiwgInJlZ1sl ZF0gYmFzZT0lcCIsIGkrMSwgZGV2LT5yZWdfYmFzZVtpKzFdKTsKKwkJfQorCisJCWRldi0+dmRl Y3N5c19yZWdtYXAgPSBzeXNjb25fcmVnbWFwX2xvb2t1cF9ieV9waGFuZGxlKHBkZXYtPmRldi5v Zl9ub2RlLAorCQkJCQkJCQkgICAgICAibWVkaWF0ZWssdmRlY3N5cyIpOworCQlpZiAoSVNfRVJS KGRldi0+dmRlY3N5c19yZWdtYXApKSB7CisJCQlkZXZfZXJyKCZwZGV2LT5kZXYsICJNaXNzaW5n IG1lZGlhdGVrLHZkZWNzeXMgcHJvcGVydHkiKTsKKwkJCXJldHVybiBQVFJfRVJSKGRldi0+dmRl Y3N5c19yZWdtYXApOworCQl9CiAJfQogCiAJcmV0dXJuIDA7CmRpZmYgLS1naXQgYS9kcml2ZXJz L21lZGlhL3BsYXRmb3JtL21lZGlhdGVrL3Zjb2RlYy9tdGtfdmNvZGVjX2Rydi5oIGIvZHJpdmVy cy9tZWRpYS9wbGF0Zm9ybS9tZWRpYXRlay92Y29kZWMvbXRrX3Zjb2RlY19kcnYuaAppbmRleCBm MTdkNjdlNzgxYzkuLjBiNDMwOTM2ZjY3ZCAxMDA2NDQKLS0tIGEvZHJpdmVycy9tZWRpYS9wbGF0 Zm9ybS9tZWRpYXRlay92Y29kZWMvbXRrX3Zjb2RlY19kcnYuaAorKysgYi9kcml2ZXJzL21lZGlh L3BsYXRmb3JtL21lZGlhdGVrL3Zjb2RlYy9tdGtfdmNvZGVjX2Rydi5oCkBAIC00ODksNiArNDg5 LDcgQEAgc3RydWN0IG10a192Y29kZWNfZGV2IHsKIAl2b2lkIF9faW9tZW0gKnJlZ19iYXNlW05V TV9NQVhfVkNPREVDX1JFR19CQVNFXTsKIAljb25zdCBzdHJ1Y3QgbXRrX3Zjb2RlY19kZWNfcGRh dGEgKnZkZWNfcGRhdGE7CiAJY29uc3Qgc3RydWN0IG10a192Y29kZWNfZW5jX3BkYXRhICp2ZW5j X3BkYXRhOworCXN0cnVjdCByZWdtYXAgKnZkZWNzeXNfcmVnbWFwOwogCiAJc3RydWN0IG10a192 Y29kZWNfZncgKmZ3X2hhbmRsZXI7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvbWVkaWEvcGxhdGZv cm0vbWVkaWF0ZWsvdmNvZGVjL210a192Y29kZWNfdXRpbC5jIGIvZHJpdmVycy9tZWRpYS9wbGF0 Zm9ybS9tZWRpYXRlay92Y29kZWMvbXRrX3Zjb2RlY191dGlsLmMKaW5kZXggZjIxNGU2ZjY3MDA1 Li44YWFhNWViNDU0NDQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vbWVkaWF0 ZWsvdmNvZGVjL210a192Y29kZWNfdXRpbC5jCisrKyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0v bWVkaWF0ZWsvdmNvZGVjL210a192Y29kZWNfdXRpbC5jCkBAIC04LDYgKzgsNyBAQAogI2luY2x1 ZGUgPGxpbnV4L21vZHVsZS5oPgogI2luY2x1ZGUgPGxpbnV4L29mLmg+CiAjaW5jbHVkZSA8bGlu dXgvb2ZfZGV2aWNlLmg+CisjaW5jbHVkZSA8bGludXgvcmVnbWFwLmg+CiAKICNpbmNsdWRlICJt dGtfdmNvZGVjX2RlY19ody5oIgogI2luY2x1ZGUgIm10a192Y29kZWNfZHJ2LmgiCkBAIC0zNCw2 ICszNSwyMCBAQCB2b2lkIF9faW9tZW0gKm10a192Y29kZWNfZ2V0X3JlZ19hZGRyKHN0cnVjdCBt dGtfdmNvZGVjX2N0eCAqZGF0YSwKIH0KIEVYUE9SVF9TWU1CT0wobXRrX3Zjb2RlY19nZXRfcmVn X2FkZHIpOwogCitpbnQgbXRrX3Zjb2RlY193cml0ZV92ZGVjc3lzKHN0cnVjdCBtdGtfdmNvZGVj X2N0eCAqY3R4LCB1bnNpZ25lZCBpbnQgcmVnLAorCQkJICAgICB1bnNpZ25lZCBpbnQgdmFsKQor eworCXN0cnVjdCBtdGtfdmNvZGVjX2RldiAqZGV2ID0gY3R4LT5kZXY7CisKKwlpZiAoZGV2LT52 ZGVjc3lzX3JlZ21hcCkKKwkJcmV0dXJuIHJlZ21hcF93cml0ZShkZXYtPnZkZWNzeXNfcmVnbWFw LCByZWcsIHZhbCk7CisKKwl3cml0ZWwodmFsLCBkZXYtPnJlZ19iYXNlW1ZERUNfU1lTXSArIHJl Zyk7CisKKwlyZXR1cm4gMDsKK30KK0VYUE9SVF9TWU1CT0wobXRrX3Zjb2RlY193cml0ZV92ZGVj c3lzKTsKKwogaW50IG10a192Y29kZWNfbWVtX2FsbG9jKHN0cnVjdCBtdGtfdmNvZGVjX2N0eCAq ZGF0YSwKIAkJCXN0cnVjdCBtdGtfdmNvZGVjX21lbSAqbWVtKQogewpkaWZmIC0tZ2l0IGEvZHJp dmVycy9tZWRpYS9wbGF0Zm9ybS9tZWRpYXRlay92Y29kZWMvbXRrX3Zjb2RlY191dGlsLmggYi9k cml2ZXJzL21lZGlhL3BsYXRmb3JtL21lZGlhdGVrL3Zjb2RlYy9tdGtfdmNvZGVjX3V0aWwuaApp bmRleCA4OGQzODliNjVmMTMuLmM4YmI0ZmM1MTUzZiAxMDA2NDQKLS0tIGEvZHJpdmVycy9tZWRp YS9wbGF0Zm9ybS9tZWRpYXRlay92Y29kZWMvbXRrX3Zjb2RlY191dGlsLmgKKysrIGIvZHJpdmVy cy9tZWRpYS9wbGF0Zm9ybS9tZWRpYXRlay92Y29kZWMvbXRrX3Zjb2RlY191dGlsLmgKQEAgLTcw LDYgKzcwLDggQEAgZXh0ZXJuIGludCBtdGtfdmNvZGVjX2RiZzsKIAogdm9pZCBfX2lvbWVtICpt dGtfdmNvZGVjX2dldF9yZWdfYWRkcihzdHJ1Y3QgbXRrX3Zjb2RlY19jdHggKmRhdGEsCiAJCQkJ dW5zaWduZWQgaW50IHJlZ19pZHgpOworaW50IG10a192Y29kZWNfd3JpdGVfdmRlY3N5cyhzdHJ1 Y3QgbXRrX3Zjb2RlY19jdHggKmN0eCwgdW5zaWduZWQgaW50IHJlZywKKwkJCSAgICAgdW5zaWdu ZWQgaW50IHZhbCk7CiBpbnQgbXRrX3Zjb2RlY19tZW1fYWxsb2Moc3RydWN0IG10a192Y29kZWNf Y3R4ICpkYXRhLAogCQkJCXN0cnVjdCBtdGtfdmNvZGVjX21lbSAqbWVtKTsKIHZvaWQgbXRrX3Zj b2RlY19tZW1fZnJlZShzdHJ1Y3QgbXRrX3Zjb2RlY19jdHggKmRhdGEsCmRpZmYgLS1naXQgYS9k cml2ZXJzL21lZGlhL3BsYXRmb3JtL21lZGlhdGVrL3Zjb2RlYy92ZGVjL3ZkZWNfdnA4X2lmLmMg Yi9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL21lZGlhdGVrL3Zjb2RlYy92ZGVjL3ZkZWNfdnA4X2lm LmMKaW5kZXggODhjMDQ2NzMxNzU0Li4yNTkyZmEzN2I0YzggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv bWVkaWEvcGxhdGZvcm0vbWVkaWF0ZWsvdmNvZGVjL3ZkZWMvdmRlY192cDhfaWYuYworKysgYi9k cml2ZXJzL21lZGlhL3BsYXRmb3JtL21lZGlhdGVrL3Zjb2RlYy92ZGVjL3ZkZWNfdnA4X2lmLmMK QEAgLTkxLDcgKzkxLDYgQEAgc3RydWN0IHZkZWNfdnA4X3ZzaSB7CiAKIC8qKgogICogc3RydWN0 IHZkZWNfdnA4X2h3X3JlZ19iYXNlIC0gSFcgcmVnaXN0ZXIgYmFzZQotICogQHN5cwkJOiBiYXNl IGFkZHJlc3MgZm9yIHN5cwogICogQG1pc2MJOiBiYXNlIGFkZHJlc3MgZm9yIG1pc2MKICAqIEBs ZAkJOiBiYXNlIGFkZHJlc3MgZm9yIGxkCiAgKiBAdG9wCQk6IGJhc2UgYWRkcmVzcyBmb3IgdG9w CkBAIC0xMDAsNyArOTksNiBAQCBzdHJ1Y3QgdmRlY192cDhfdnNpIHsKICAqIEBod2IJCTogYmFz ZSBhZGRyZXNzIGZvciBod2IKICAqLwogc3RydWN0IHZkZWNfdnA4X2h3X3JlZ19iYXNlIHsKLQl2 b2lkIF9faW9tZW0gKnN5czsKIAl2b2lkIF9faW9tZW0gKm1pc2M7CiAJdm9pZCBfX2lvbWVtICps ZDsKIAl2b2lkIF9faW9tZW0gKnRvcDsKQEAgLTE3MCw3ICsxNjgsNiBAQCBzdGF0aWMgdm9pZCBn ZXRfaHdfcmVnX2Jhc2Uoc3RydWN0IHZkZWNfdnA4X2luc3QgKmluc3QpCiAJaW5zdC0+cmVnX2Jh c2UudG9wID0gbXRrX3Zjb2RlY19nZXRfcmVnX2FkZHIoaW5zdC0+Y3R4LCBWREVDX1RPUCk7CiAJ aW5zdC0+cmVnX2Jhc2UuY20gPSBtdGtfdmNvZGVjX2dldF9yZWdfYWRkcihpbnN0LT5jdHgsIFZE RUNfQ00pOwogCWluc3QtPnJlZ19iYXNlLmh3ZCA9IG10a192Y29kZWNfZ2V0X3JlZ19hZGRyKGlu c3QtPmN0eCwgVkRFQ19IV0QpOwotCWluc3QtPnJlZ19iYXNlLnN5cyA9IG10a192Y29kZWNfZ2V0 X3JlZ19hZGRyKGluc3QtPmN0eCwgVkRFQ19TWVMpOwogCWluc3QtPnJlZ19iYXNlLm1pc2MgPSBt dGtfdmNvZGVjX2dldF9yZWdfYWRkcihpbnN0LT5jdHgsIFZERUNfTUlTQyk7CiAJaW5zdC0+cmVn X2Jhc2UubGQgPSBtdGtfdmNvZGVjX2dldF9yZWdfYWRkcihpbnN0LT5jdHgsIFZERUNfTEQpOwog CWluc3QtPnJlZ19iYXNlLmh3YiA9IG10a192Y29kZWNfZ2V0X3JlZ19hZGRyKGluc3QtPmN0eCwg VkRFQ19IV0IpOwpAQCAtMjIyLDE3ICsyMTksMTYgQEAgc3RhdGljIHZvaWQgcmVhZF9od19zZWdt ZW50YXRpb25fZGF0YShzdHJ1Y3QgdmRlY192cDhfaW5zdCAqaW5zdCkKIHN0YXRpYyB2b2lkIGVu YWJsZV9od19yd19mdW5jdGlvbihzdHJ1Y3QgdmRlY192cDhfaW5zdCAqaW5zdCkKIHsKIAl1MzIg dmFsID0gMDsKLQl2b2lkIF9faW9tZW0gKnN5cyA9IGluc3QtPnJlZ19iYXNlLnN5czsKIAl2b2lk IF9faW9tZW0gKm1pc2MgPSBpbnN0LT5yZWdfYmFzZS5taXNjOwogCXZvaWQgX19pb21lbSAqbGQg PSBpbnN0LT5yZWdfYmFzZS5sZDsKIAl2b2lkIF9faW9tZW0gKmh3YiA9IGluc3QtPnJlZ19iYXNl Lmh3YjsKIAl2b2lkIF9faW9tZW0gKmh3ZCA9IGluc3QtPnJlZ19iYXNlLmh3ZDsKIAotCXdyaXRl bCgweDEsIHN5cyArIFZQOF9SV19DS0VOX1NFVCk7CisJbXRrX3Zjb2RlY193cml0ZV92ZGVjc3lz KGluc3QtPmN0eCwgVlA4X1JXX0NLRU5fU0VULCAweDEpOwogCXdyaXRlbCgweDEwMSwgbGQgKyBW UDhfV09fVkxEX1NSU1QpOwogCXdyaXRlbCgweDEwMSwgaHdiICsgVlA4X1dPX1ZMRF9TUlNUKTsK IAotCXdyaXRlbCgxLCBzeXMpOworCW10a192Y29kZWNfd3JpdGVfdmRlY3N5cyhpbnN0LT5jdHgs IDAsIDB4MSk7CiAJdmFsID0gcmVhZGwobWlzYyArIFZQOF9SV19NSVNDX1NSU1QpOwogCXdyaXRl bCgodmFsICYgMHhGRkZGRkZGRSksIG1pc2MgKyBWUDhfUldfTUlTQ19TUlNUKTsKIApAQCAtMjQx LDcgKzIzNyw3IEBAIHN0YXRpYyB2b2lkIGVuYWJsZV9od19yd19mdW5jdGlvbihzdHJ1Y3QgdmRl Y192cDhfaW5zdCAqaW5zdCkKIAl3cml0ZWwoMHg3MTIwMTEwMCwgbWlzYyArIFZQOF9SV19NSVND X0ZVTkNfQ09OKTsKIAl3cml0ZWwoMHgwLCBsZCArIFZQOF9XT19WTERfU1JTVCk7CiAJd3JpdGVs KDB4MCwgaHdiICsgVlA4X1dPX1ZMRF9TUlNUKTsKLQl3cml0ZWwoMHgxLCBzeXMgKyBWUDhfUldf RENNX0NPTik7CisJbXRrX3Zjb2RlY193cml0ZV92ZGVjc3lzKGluc3QtPmN0eCwgVlA4X1JXX0RD TV9DT04sIDB4MSk7CiAJd3JpdGVsKDB4MSwgbWlzYyArIFZQOF9SV19NSVNDX0RDTV9DT04pOwog CXdyaXRlbCgweDEsIGh3ZCArIFZQOF9SV19WUDhfQ1RSTCk7CiB9Ci0tIAoyLjQxLjAKCgpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpsaW51eC1hcm0ta2Vy bmVsIG1haWxpbmcgbGlzdApsaW51eC1hcm0ta2VybmVsQGxpc3RzLmluZnJhZGVhZC5vcmcKaHR0 cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1hcm0ta2VybmVs Cg==