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 X-Spam-Level: X-Spam-Status: No, score=-11.4 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH, MAILING_LIST_MULTI,MIME_BASE64_TEXT,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, UNPARSEABLE_RELAY,URIBL_BLOCKED,USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id E1766C433DF for ; Thu, 23 Jul 2020 03:06:44 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id B8A16207E8 for ; Thu, 23 Jul 2020 03:06:44 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=mediatek.com header.i=@mediatek.com header.b="nnMEWY6Y" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387839AbgGWDGn (ORCPT ); Wed, 22 Jul 2020 23:06:43 -0400 Received: from mailgw01.mediatek.com ([210.61.82.183]:4236 "EHLO mailgw01.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S2387811AbgGWDGk (ORCPT ); Wed, 22 Jul 2020 23:06:40 -0400 X-UUID: 5c267209038e45258c77874203d1711f-20200723 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Transfer-Encoding:Content-Type:MIME-Version:References:In-Reply-To:Message-ID:Date:Subject:CC:To:From; bh=cpxuDwvG/rwn1+ih+PoQefwn91ECTUZ71xQUK6CQKWI=; b=nnMEWY6YXG5PVDV5zMM1q4j4fA0JbWEZqQCShDhz2+Vxc9+RRBueuJ2Aj9t+LFasaGBQHNtc+8BKhPHtU1BjRtAVaHxh1IVPexB5V9jQQicj7a8Qked0HXGg+N9z1gXncl1hNaF6c8AmeI+dqwLo8EjPYo1pZ+3PSpdUv0GJrP0=; X-UUID: 5c267209038e45258c77874203d1711f-20200723 Received: from mtkcas11.mediatek.inc [(172.21.101.40)] by mailgw01.mediatek.com (envelope-from ) (Cellopoint E-mail Firewall v4.1.10 Build 0809 with TLS) with ESMTP id 188771700; Thu, 23 Jul 2020 11:06:35 +0800 Received: from MTKCAS06.mediatek.inc (172.21.101.30) by mtkmbs07n2.mediatek.inc (172.21.101.141) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Thu, 23 Jul 2020 11:06:33 +0800 Received: from localhost.localdomain (10.17.3.153) by MTKCAS06.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1497.2 via Frontend Transport; Thu, 23 Jul 2020 11:06:29 +0800 From: Xia Jiang To: Hans Verkuil , Mauro Carvalho Chehab , Rob Herring , Matthias Brugger , Rick Chang CC: , , , , , Marek Szyprowski , Tomasz Figa , , , , , , Xia Jiang Subject: [PATCH v10 19/28] media: platform: Redefinition of mtk_jpeg_q_data structure Date: Thu, 23 Jul 2020 11:04:42 +0800 Message-ID: <20200723030451.5616-20-xia.jiang@mediatek.com> X-Mailer: git-send-email 2.18.0 In-Reply-To: <20200723030451.5616-1-xia.jiang@mediatek.com> References: <20200723030451.5616-1-xia.jiang@mediatek.com> MIME-Version: 1.0 Content-Type: text/plain X-MTK: N Content-Transfer-Encoding: base64 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org VGhlIHN0YW5kYXJkIHY0bDJfcGl4X2Zvcm1hdF9tcGxhbmUgc3RydWN0dXJlIGNvbnRhaW5zIHdp ZHRoL2hlaWdodC8NCnNpemVpbWFnZS9ieXRlc3BlcmxpbmUsIHNvIHVzZSB2NGwyX3BpeF9mb3Jt YXRfbXBsYW5lIHRvIHJlcGxhY2UgdGhlbS4NCg0KU2lnbmVkLW9mZi1ieTogWGlhIEppYW5nIDx4 aWEuamlhbmdAbWVkaWF0ZWsuY29tPg0KLS0tDQp2MTA6IG5ldyBhZGQgcGF0Y2gNCi0tLQ0KIC4u Li9tZWRpYS9wbGF0Zm9ybS9tdGstanBlZy9tdGtfanBlZ19jb3JlLmMgICB8IDEwMSArKysrKysr KysrLS0tLS0tLS0NCiAuLi4vbWVkaWEvcGxhdGZvcm0vbXRrLWpwZWcvbXRrX2pwZWdfY29yZS5o ICAgfCAgMjAgKy0tLQ0KIDIgZmlsZXMgY2hhbmdlZCwgNTcgaW5zZXJ0aW9ucygrKSwgNjQgZGVs ZXRpb25zKC0pDQoNCmRpZmYgLS1naXQgYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL210ay1qcGVn L210a19qcGVnX2NvcmUuYyBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vbXRrLWpwZWcvbXRrX2pw ZWdfY29yZS5jDQppbmRleCBiM2UzOGZmZDRlODEuLjAxZjQ2NTZmZTJiMyAxMDA2NDQNCi0tLSBh L2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vbXRrLWpwZWcvbXRrX2pwZWdfY29yZS5jDQorKysgYi9k cml2ZXJzL21lZGlhL3BsYXRmb3JtL210ay1qcGVnL210a19qcGVnX2NvcmUuYw0KQEAgLTIwNywx NSArMjA3LDE1IEBAIHN0YXRpYyBpbnQgbXRrX2pwZWdfZ19mbXRfdmlkX21wbGFuZShzdHJ1Y3Qg ZmlsZSAqZmlsZSwgdm9pZCAqcHJpdiwNCiANCiAJcV9kYXRhID0gbXRrX2pwZWdfZ2V0X3FfZGF0 YShjdHgsIGYtPnR5cGUpOw0KIA0KLQlwaXhfbXAtPndpZHRoID0gcV9kYXRhLT53Ow0KLQlwaXhf bXAtPmhlaWdodCA9IHFfZGF0YS0+aDsNCisJcGl4X21wLT53aWR0aCA9IHFfZGF0YS0+cGl4X21w LndpZHRoOw0KKwlwaXhfbXAtPmhlaWdodCA9IHFfZGF0YS0+cGl4X21wLmhlaWdodDsNCiAJcGl4 X21wLT5maWVsZCA9IFY0TDJfRklFTERfTk9ORTsNCiAJcGl4X21wLT5waXhlbGZvcm1hdCA9IHFf ZGF0YS0+Zm10LT5mb3VyY2M7DQogCXBpeF9tcC0+bnVtX3BsYW5lcyA9IHFfZGF0YS0+Zm10LT5j b2xwbGFuZXM7DQotCXBpeF9tcC0+Y29sb3JzcGFjZSA9IGN0eC0+Y29sb3JzcGFjZTsNCi0JcGl4 X21wLT55Y2Jjcl9lbmMgPSBjdHgtPnljYmNyX2VuYzsNCi0JcGl4X21wLT54ZmVyX2Z1bmMgPSBj dHgtPnhmZXJfZnVuYzsNCi0JcGl4X21wLT5xdWFudGl6YXRpb24gPSBjdHgtPnF1YW50aXphdGlv bjsNCisJcGl4X21wLT5jb2xvcnNwYWNlID0gcV9kYXRhLT5waXhfbXAuY29sb3JzcGFjZTsNCisJ cGl4X21wLT55Y2Jjcl9lbmMgPSBxX2RhdGEtPnBpeF9tcC55Y2Jjcl9lbmM7DQorCXBpeF9tcC0+ eGZlcl9mdW5jID0gcV9kYXRhLT5waXhfbXAueGZlcl9mdW5jOw0KKwlwaXhfbXAtPnF1YW50aXph dGlvbiA9IHFfZGF0YS0+cGl4X21wLnF1YW50aXphdGlvbjsNCiANCiAJdjRsMl9kYmcoMSwgZGVi dWcsICZqcGVnLT52NGwyX2RldiwgIiglZCkgZ19mbXQ6JWMlYyVjJWMgd3hoOiV1eCV1XG4iLA0K IAkJIGYtPnR5cGUsDQpAQCAtMjI4LDggKzIyOCw4IEBAIHN0YXRpYyBpbnQgbXRrX2pwZWdfZ19m bXRfdmlkX21wbGFuZShzdHJ1Y3QgZmlsZSAqZmlsZSwgdm9pZCAqcHJpdiwNCiAJZm9yIChpID0g MDsgaSA8IHBpeF9tcC0+bnVtX3BsYW5lczsgaSsrKSB7DQogCQlzdHJ1Y3QgdjRsMl9wbGFuZV9w aXhfZm9ybWF0ICpwZm10ID0gJnBpeF9tcC0+cGxhbmVfZm10W2ldOw0KIA0KLQkJcGZtdC0+Ynl0 ZXNwZXJsaW5lID0gcV9kYXRhLT5ieXRlc3BlcmxpbmVbaV07DQotCQlwZm10LT5zaXplaW1hZ2Ug PSBxX2RhdGEtPnNpemVpbWFnZVtpXTsNCisJCXBmbXQtPmJ5dGVzcGVybGluZSA9IHFfZGF0YS0+ cGl4X21wLnBsYW5lX2ZtdFtpXS5ieXRlc3BlcmxpbmU7DQorCQlwZm10LT5zaXplaW1hZ2UgPSBx X2RhdGEtPnBpeF9tcC5wbGFuZV9mbXRbaV0uc2l6ZWltYWdlOw0KIA0KIAkJdjRsMl9kYmcoMSwg ZGVidWcsICZqcGVnLT52NGwyX2RldiwNCiAJCQkgInBsYW5lWyVkXSBicGw9JXUsIHNpemU9JXVc biIsDQpAQCAtMzE4LDEyICszMTgsMTIgQEAgc3RhdGljIGludCBtdGtfanBlZ19zX2ZtdF9tcGxh bmUoc3RydWN0IG10a19qcGVnX2N0eCAqY3R4LA0KIAlxX2RhdGEtPmZtdCA9IG10a19qcGVnX2Zp bmRfZm9ybWF0KG10a19qcGVnX2Zvcm1hdHMsDQogCQkJCQkgICBNVEtfSlBFR19OVU1fRk9STUFU UywNCiAJCQkJCSAgIHBpeF9tcC0+cGl4ZWxmb3JtYXQsIGZtdF90eXBlKTsNCi0JcV9kYXRhLT53 ID0gcGl4X21wLT53aWR0aDsNCi0JcV9kYXRhLT5oID0gcGl4X21wLT5oZWlnaHQ7DQotCWN0eC0+ Y29sb3JzcGFjZSA9IHBpeF9tcC0+Y29sb3JzcGFjZTsNCi0JY3R4LT55Y2Jjcl9lbmMgPSBwaXhf bXAtPnljYmNyX2VuYzsNCi0JY3R4LT54ZmVyX2Z1bmMgPSBwaXhfbXAtPnhmZXJfZnVuYzsNCi0J Y3R4LT5xdWFudGl6YXRpb24gPSBwaXhfbXAtPnF1YW50aXphdGlvbjsNCisJcV9kYXRhLT5waXhf bXAud2lkdGggPSBwaXhfbXAtPndpZHRoOw0KKwlxX2RhdGEtPnBpeF9tcC5oZWlnaHQgPSBwaXhf bXAtPmhlaWdodDsNCisJcV9kYXRhLT5waXhfbXAuY29sb3JzcGFjZSA9IHBpeF9tcC0+Y29sb3Jz cGFjZTsNCisJcV9kYXRhLT5waXhfbXAueWNiY3JfZW5jID0gcGl4X21wLT55Y2Jjcl9lbmM7DQor CXFfZGF0YS0+cGl4X21wLnhmZXJfZnVuYyA9IHBpeF9tcC0+eGZlcl9mdW5jOw0KKwlxX2RhdGEt PnBpeF9tcC5xdWFudGl6YXRpb24gPSBwaXhfbXAtPnF1YW50aXphdGlvbjsNCiANCiAJdjRsMl9k YmcoMSwgZGVidWcsICZqcGVnLT52NGwyX2RldiwgIiglZCkgc19mbXQ6JWMlYyVjJWMgd3hoOiV1 eCV1XG4iLA0KIAkJIGYtPnR5cGUsDQpAQCAtMzMxLDE1ICszMzEsMTggQEAgc3RhdGljIGludCBt dGtfanBlZ19zX2ZtdF9tcGxhbmUoc3RydWN0IG10a19qcGVnX2N0eCAqY3R4LA0KIAkJIChxX2Rh dGEtPmZtdC0+Zm91cmNjID4+ICA4ICYgMHhmZiksDQogCQkgKHFfZGF0YS0+Zm10LT5mb3VyY2Mg Pj4gMTYgJiAweGZmKSwNCiAJCSAocV9kYXRhLT5mbXQtPmZvdXJjYyA+PiAyNCAmIDB4ZmYpLA0K LQkJIHFfZGF0YS0+dywgcV9kYXRhLT5oKTsNCisJCSBxX2RhdGEtPnBpeF9tcC53aWR0aCwgcV9k YXRhLT5waXhfbXAuaGVpZ2h0KTsNCiANCiAJZm9yIChpID0gMDsgaSA8IHFfZGF0YS0+Zm10LT5j b2xwbGFuZXM7IGkrKykgew0KLQkJcV9kYXRhLT5ieXRlc3BlcmxpbmVbaV0gPSBwaXhfbXAtPnBs YW5lX2ZtdFtpXS5ieXRlc3BlcmxpbmU7DQotCQlxX2RhdGEtPnNpemVpbWFnZVtpXSA9IHBpeF9t cC0+cGxhbmVfZm10W2ldLnNpemVpbWFnZTsNCisJCXFfZGF0YS0+cGl4X21wLnBsYW5lX2ZtdFtp XS5ieXRlc3BlcmxpbmUgPQ0KKwkJCQkJcGl4X21wLT5wbGFuZV9mbXRbaV0uYnl0ZXNwZXJsaW5l Ow0KKwkJcV9kYXRhLT5waXhfbXAucGxhbmVfZm10W2ldLnNpemVpbWFnZSA9DQorCQkJCQlwaXhf bXAtPnBsYW5lX2ZtdFtpXS5zaXplaW1hZ2U7DQogDQogCQl2NGwyX2RiZygxLCBkZWJ1ZywgJmpw ZWctPnY0bDJfZGV2LA0KIAkJCSAicGxhbmVbJWRdIGJwbD0ldSwgc2l6ZT0ldVxuIiwNCi0JCQkg aSwgcV9kYXRhLT5ieXRlc3BlcmxpbmVbaV0sIHFfZGF0YS0+c2l6ZWltYWdlW2ldKTsNCisJCQkg aSwgcV9kYXRhLT5waXhfbXAucGxhbmVfZm10W2ldLmJ5dGVzcGVybGluZSwNCisJCQkgcV9kYXRh LT5waXhfbXAucGxhbmVfZm10W2ldLnNpemVpbWFnZSk7DQogCX0NCiANCiAJcmV0dXJuIDA7DQpA QCAtNDA0LDE1ICs0MDcsMTUgQEAgc3RhdGljIGludCBtdGtfanBlZ19nX3NlbGVjdGlvbihzdHJ1 Y3QgZmlsZSAqZmlsZSwgdm9pZCAqcHJpdiwNCiAJc3dpdGNoIChzLT50YXJnZXQpIHsNCiAJY2Fz ZSBWNEwyX1NFTF9UR1RfQ09NUE9TRToNCiAJY2FzZSBWNEwyX1NFTF9UR1RfQ09NUE9TRV9ERUZB VUxUOg0KLQkJcy0+ci53aWR0aCA9IGN0eC0+b3V0X3EudzsNCi0JCXMtPnIuaGVpZ2h0ID0gY3R4 LT5vdXRfcS5oOw0KKwkJcy0+ci53aWR0aCA9IGN0eC0+b3V0X3EucGl4X21wLndpZHRoOw0KKwkJ cy0+ci5oZWlnaHQgPSBjdHgtPm91dF9xLnBpeF9tcC5oZWlnaHQ7DQogCQlzLT5yLmxlZnQgPSAw Ow0KIAkJcy0+ci50b3AgPSAwOw0KIAkJYnJlYWs7DQogCWNhc2UgVjRMMl9TRUxfVEdUX0NPTVBP U0VfQk9VTkRTOg0KIAljYXNlIFY0TDJfU0VMX1RHVF9DT01QT1NFX1BBRERFRDoNCi0JCXMtPnIu d2lkdGggPSBjdHgtPmNhcF9xLnc7DQotCQlzLT5yLmhlaWdodCA9IGN0eC0+Y2FwX3EuaDsNCisJ CXMtPnIud2lkdGggPSBjdHgtPmNhcF9xLnBpeF9tcC53aWR0aDsNCisJCXMtPnIuaGVpZ2h0ID0g Y3R4LT5jYXBfcS5waXhfbXAuaGVpZ2h0Ow0KIAkJcy0+ci5sZWZ0ID0gMDsNCiAJCXMtPnIudG9w ID0gMDsNCiAJCWJyZWFrOw0KQEAgLTQ2OCwxNCArNDcxLDE0IEBAIHN0YXRpYyBpbnQgbXRrX2pw ZWdfcXVldWVfc2V0dXAoc3RydWN0IHZiMl9xdWV1ZSAqcSwNCiANCiAJaWYgKCpudW1fcGxhbmVz KSB7DQogCQlmb3IgKGkgPSAwOyBpIDwgKm51bV9wbGFuZXM7IGkrKykNCi0JCQlpZiAoc2l6ZXNb aV0gPCBxX2RhdGEtPnNpemVpbWFnZVtpXSkNCisJCQlpZiAoc2l6ZXNbaV0gPCBxX2RhdGEtPnBp eF9tcC5wbGFuZV9mbXRbaV0uc2l6ZWltYWdlKQ0KIAkJCQlyZXR1cm4gLUVJTlZBTDsNCiAJCXJl dHVybiAwOw0KIAl9DQogDQogCSpudW1fcGxhbmVzID0gcV9kYXRhLT5mbXQtPmNvbHBsYW5lczsN CiAJZm9yIChpID0gMDsgaSA8IHFfZGF0YS0+Zm10LT5jb2xwbGFuZXM7IGkrKykgew0KLQkJc2l6 ZXNbaV0gPSBxX2RhdGEtPnNpemVpbWFnZVtpXTsNCisJCXNpemVzW2ldID0gIHFfZGF0YS0+cGl4 X21wLnBsYW5lX2ZtdFtpXS5zaXplaW1hZ2U7DQogCQl2NGwyX2RiZygxLCBkZWJ1ZywgJmpwZWct PnY0bDJfZGV2LCAic2l6ZWltYWdlWyVkXT0ldVxuIiwNCiAJCQkgaSwgc2l6ZXNbaV0pOw0KIAl9 DQpAQCAtNDk0LDcgKzQ5Nyw4IEBAIHN0YXRpYyBpbnQgbXRrX2pwZWdfYnVmX3ByZXBhcmUoc3Ry dWN0IHZiMl9idWZmZXIgKnZiKQ0KIAkJcmV0dXJuIC1FSU5WQUw7DQogDQogCWZvciAoaSA9IDA7 IGkgPCBxX2RhdGEtPmZtdC0+Y29scGxhbmVzOyBpKyspDQotCQl2YjJfc2V0X3BsYW5lX3BheWxv YWQodmIsIGksIHFfZGF0YS0+c2l6ZWltYWdlW2ldKTsNCisJCXZiMl9zZXRfcGxhbmVfcGF5bG9h ZCh2YiwgaSwNCisJCQkJICAgICAgcV9kYXRhLT5waXhfbXAucGxhbmVfZm10W2ldLnNpemVpbWFn ZSk7DQogDQogCXJldHVybiAwOw0KIH0NCkBAIC01MDYsNyArNTEwLDggQEAgc3RhdGljIGJvb2wg bXRrX2pwZWdfY2hlY2tfcmVzb2x1dGlvbl9jaGFuZ2Uoc3RydWN0IG10a19qcGVnX2N0eCAqY3R4 LA0KIAlzdHJ1Y3QgbXRrX2pwZWdfcV9kYXRhICpxX2RhdGE7DQogDQogCXFfZGF0YSA9ICZjdHgt Pm91dF9xOw0KLQlpZiAocV9kYXRhLT53ICE9IHBhcmFtLT5waWNfdyB8fCBxX2RhdGEtPmggIT0g cGFyYW0tPnBpY19oKSB7DQorCWlmIChxX2RhdGEtPnBpeF9tcC53aWR0aCAhPSBwYXJhbS0+cGlj X3cgfHwNCisJICAgIHFfZGF0YS0+cGl4X21wLmhlaWdodCAhPSBwYXJhbS0+cGljX2gpIHsNCiAJ CXY0bDJfZGJnKDEsIGRlYnVnLCAmanBlZy0+djRsMl9kZXYsICJQaWN0dXJlIHNpemUgY2hhbmdl XG4iKTsNCiAJCXJldHVybiB0cnVlOw0KIAl9DQpAQCAtNTI5LDIwICs1MzQsMjAgQEAgc3RhdGlj IHZvaWQgbXRrX2pwZWdfc2V0X3F1ZXVlX2RhdGEoc3RydWN0IG10a19qcGVnX2N0eCAqY3R4LA0K IAlpbnQgaTsNCiANCiAJcV9kYXRhID0gJmN0eC0+b3V0X3E7DQotCXFfZGF0YS0+dyA9IHBhcmFt LT5waWNfdzsNCi0JcV9kYXRhLT5oID0gcGFyYW0tPnBpY19oOw0KKwlxX2RhdGEtPnBpeF9tcC53 aWR0aCA9IHBhcmFtLT5waWNfdzsNCisJcV9kYXRhLT5waXhfbXAuaGVpZ2h0ID0gcGFyYW0tPnBp Y19oOw0KIA0KIAlxX2RhdGEgPSAmY3R4LT5jYXBfcTsNCi0JcV9kYXRhLT53ID0gcGFyYW0tPmRl Y193Ow0KLQlxX2RhdGEtPmggPSBwYXJhbS0+ZGVjX2g7DQorCXFfZGF0YS0+cGl4X21wLndpZHRo ID0gcGFyYW0tPmRlY193Ow0KKwlxX2RhdGEtPnBpeF9tcC5oZWlnaHQgPSBwYXJhbS0+ZGVjX2g7 DQogCXFfZGF0YS0+Zm10ID0gbXRrX2pwZWdfZmluZF9mb3JtYXQobXRrX2pwZWdfZm9ybWF0cywN CiAJCQkJCSAgIE1US19KUEVHX05VTV9GT1JNQVRTLA0KIAkJCQkJICAgcGFyYW0tPmRzdF9mb3Vy Y2MsDQogCQkJCQkgICBNVEtfSlBFR19GTVRfRkxBR19ERUNfQ0FQVFVSRSk7DQogDQogCWZvciAo aSA9IDA7IGkgPCBxX2RhdGEtPmZtdC0+Y29scGxhbmVzOyBpKyspIHsNCi0JCXFfZGF0YS0+Ynl0 ZXNwZXJsaW5lW2ldID0gcGFyYW0tPm1lbV9zdHJpZGVbaV07DQotCQlxX2RhdGEtPnNpemVpbWFn ZVtpXSA9IHBhcmFtLT5jb21wX3NpemVbaV07DQorCQlxX2RhdGEtPnBpeF9tcC5wbGFuZV9mbXRb aV0uYnl0ZXNwZXJsaW5lID0gcGFyYW0tPm1lbV9zdHJpZGVbaV07DQorCQlxX2RhdGEtPnBpeF9t cC5wbGFuZV9mbXRbaV0uc2l6ZWltYWdlID0gcGFyYW0tPmNvbXBfc2l6ZVtpXTsNCiAJfQ0KIA0K IAl2NGwyX2RiZygxLCBkZWJ1ZywgJmpwZWctPnY0bDJfZGV2LA0KQEAgLTg0MSwzMiArODQ2LDM2 IEBAIHN0YXRpYyB2b2lkIG10a19qcGVnX3NldF9kZWZhdWx0X3BhcmFtcyhzdHJ1Y3QgbXRrX2pw ZWdfY3R4ICpjdHgpDQogCXN0cnVjdCBtdGtfanBlZ19xX2RhdGEgKnEgPSAmY3R4LT5vdXRfcTsN CiAJaW50IGk7DQogDQotCWN0eC0+Y29sb3JzcGFjZSA9IFY0TDJfQ09MT1JTUEFDRV9KUEVHLA0K LQljdHgtPnljYmNyX2VuYyA9IFY0TDJfWUNCQ1JfRU5DX0RFRkFVTFQ7DQotCWN0eC0+cXVhbnRp emF0aW9uID0gVjRMMl9RVUFOVElaQVRJT05fREVGQVVMVDsNCi0JY3R4LT54ZmVyX2Z1bmMgPSBW NEwyX1hGRVJfRlVOQ19ERUZBVUxUOw0KKwlxLT5waXhfbXAuY29sb3JzcGFjZSA9IFY0TDJfQ09M T1JTUEFDRV9KUEVHLA0KKwlxLT5waXhfbXAueWNiY3JfZW5jID0gVjRMMl9ZQ0JDUl9FTkNfREVG QVVMVDsNCisJcS0+cGl4X21wLnF1YW50aXphdGlvbiA9IFY0TDJfUVVBTlRJWkFUSU9OX0RFRkFV TFQ7DQorCXEtPnBpeF9tcC54ZmVyX2Z1bmMgPSBWNEwyX1hGRVJfRlVOQ19ERUZBVUxUOw0KIA0K IAlxLT5mbXQgPSBtdGtfanBlZ19maW5kX2Zvcm1hdChtdGtfanBlZ19mb3JtYXRzLCBNVEtfSlBF R19OVU1fRk9STUFUUywNCiAJCQkJICAgICAgVjRMMl9QSVhfRk1UX0pQRUcsDQogCQkJCSAgICAg IE1US19KUEVHX0ZNVF9GTEFHX0RFQ19PVVRQVVQpOw0KLQlxLT53ID0gTVRLX0pQRUdfTUlOX1dJ RFRIOw0KLQlxLT5oID0gTVRLX0pQRUdfTUlOX0hFSUdIVDsNCi0JcS0+Ynl0ZXNwZXJsaW5lWzBd ID0gMDsNCi0JcS0+c2l6ZWltYWdlWzBdID0gTVRLX0pQRUdfREVGQVVMVF9TSVpFSU1BR0U7DQor CXEtPnBpeF9tcC53aWR0aCA9IE1US19KUEVHX01JTl9XSURUSDsNCisJcS0+cGl4X21wLmhlaWdo dCA9IE1US19KUEVHX01JTl9IRUlHSFQ7DQorCXEtPnBpeF9tcC5wbGFuZV9mbXRbMF0uYnl0ZXNw ZXJsaW5lID0gMDsNCisJcS0+cGl4X21wLnBsYW5lX2ZtdFswXS5zaXplaW1hZ2UgPSBNVEtfSlBF R19ERUZBVUxUX1NJWkVJTUFHRTsNCiANCiAJcSA9ICZjdHgtPmNhcF9xOw0KIAlxLT5mbXQgPSBt dGtfanBlZ19maW5kX2Zvcm1hdChtdGtfanBlZ19mb3JtYXRzLCBNVEtfSlBFR19OVU1fRk9STUFU UywNCiAJCQkJICAgICAgVjRMMl9QSVhfRk1UX1lVVjQyME0sDQogCQkJCSAgICAgIE1US19KUEVH X0ZNVF9GTEFHX0RFQ19DQVBUVVJFKTsNCi0JcS0+dyA9IE1US19KUEVHX01JTl9XSURUSDsNCi0J cS0+aCA9IE1US19KUEVHX01JTl9IRUlHSFQ7DQorCXEtPnBpeF9tcC5jb2xvcnNwYWNlID0gVjRM Ml9DT0xPUlNQQUNFX0pQRUcsDQorCXEtPnBpeF9tcC55Y2Jjcl9lbmMgPSBWNEwyX1lDQkNSX0VO Q19ERUZBVUxUOw0KKwlxLT5waXhfbXAucXVhbnRpemF0aW9uID0gVjRMMl9RVUFOVElaQVRJT05f REVGQVVMVDsNCisJcS0+cGl4X21wLnhmZXJfZnVuYyA9IFY0TDJfWEZFUl9GVU5DX0RFRkFVTFQ7 DQorCXEtPnBpeF9tcC53aWR0aCA9IE1US19KUEVHX01JTl9XSURUSDsNCisJcS0+cGl4X21wLmhl aWdodCA9IE1US19KUEVHX01JTl9IRUlHSFQ7DQogDQogCWZvciAoaSA9IDA7IGkgPCBxLT5mbXQt PmNvbHBsYW5lczsgaSsrKSB7DQotCQl1MzIgc3RyaWRlID0gcS0+dyAqIHEtPmZtdC0+aF9zYW1w bGVbaV0gLyA0Ow0KLQkJdTMyIGggPSBxLT5oICogcS0+Zm10LT52X3NhbXBsZVtpXSAvIDQ7DQor CQl1MzIgc3RyaWRlID0gcS0+cGl4X21wLndpZHRoICogcS0+Zm10LT5oX3NhbXBsZVtpXSAvIDQ7 DQorCQl1MzIgaCA9IHEtPnBpeF9tcC5oZWlnaHQgKiBxLT5mbXQtPnZfc2FtcGxlW2ldIC8gNDsN CiANCi0JCXEtPmJ5dGVzcGVybGluZVtpXSA9IHN0cmlkZTsNCi0JCXEtPnNpemVpbWFnZVtpXSA9 IHN0cmlkZSAqIGg7DQorCQlxLT5waXhfbXAucGxhbmVfZm10W2ldLmJ5dGVzcGVybGluZSA9IHN0 cmlkZTsNCisJCXEtPnBpeF9tcC5wbGFuZV9mbXRbaV0uc2l6ZWltYWdlID0gc3RyaWRlICogaDsN CiAJfQ0KIH0NCiANCmRpZmYgLS1naXQgYS9kcml2ZXJzL21lZGlhL3BsYXRmb3JtL210ay1qcGVn L210a19qcGVnX2NvcmUuaCBiL2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vbXRrLWpwZWcvbXRrX2pw ZWdfY29yZS5oDQppbmRleCAxOTJlZTQ4OGE1MGEuLjRjNzZhOWRjYzRiNyAxMDA2NDQNCi0tLSBh L2RyaXZlcnMvbWVkaWEvcGxhdGZvcm0vbXRrLWpwZWcvbXRrX2pwZWdfY29yZS5oDQorKysgYi9k cml2ZXJzL21lZGlhL3BsYXRmb3JtL210ay1qcGVnL210a19qcGVnX2NvcmUuaA0KQEAgLTk2LDE4 ICs5NiwxMSBAQCBzdHJ1Y3QgbXRrX2pwZWdfZm10IHsNCiAvKioNCiAgKiBtdGtfanBlZ19xX2Rh dGEgLSBwYXJhbWV0ZXJzIG9mIG9uZSBxdWV1ZQ0KICAqIEBmbXQ6CSAgZHJpdmVyLXNwZWNpZmlj IGZvcm1hdCBvZiB0aGlzIHF1ZXVlDQotICogQHc6CQkgIGltYWdlIHdpZHRoDQotICogQGg6CQkg IGltYWdlIGhlaWdodA0KLSAqIEBieXRlc3BlcmxpbmU6IGRpc3RhbmNlIGluIGJ5dGVzIGJldHdl ZW4gdGhlIGxlZnRtb3N0IHBpeGVscyBpbiB0d28gYWRqYWNlbnQNCi0gKiAgICAgICAgICAgICAg ICBsaW5lcw0KLSAqIEBzaXplaW1hZ2U6CSAgaW1hZ2UgYnVmZmVyIHNpemUgaW4gYnl0ZXMNCisg KiBAcGl4X21wOgkgIG11bHRpcGxhbmFyIGZvcm1hdA0KICAqLw0KIHN0cnVjdCBtdGtfanBlZ19x X2RhdGEgew0KIAlzdHJ1Y3QgbXRrX2pwZWdfZm10CSpmbXQ7DQotCXUzMgkJCXc7DQotCXUzMgkJ CWg7DQotCXUzMgkJCWJ5dGVzcGVybGluZVtWSURFT19NQVhfUExBTkVTXTsNCi0JdTMyCQkJc2l6 ZWltYWdlW1ZJREVPX01BWF9QTEFORVNdOw0KKwlzdHJ1Y3QgdjRsMl9waXhfZm9ybWF0X21wbGFu ZSBwaXhfbXA7DQogfTsNCiANCiAvKioNCkBAIC0xMTcsMTAgKzExMCw2IEBAIHN0cnVjdCBtdGtf anBlZ19xX2RhdGEgew0KICAqIEBjYXBfcToJCWRlc3RpbmF0aW9uIChjYXB0dXJlKSBxdWV1ZSBx dWV1ZSBpbmZvcm1hdGlvbg0KICAqIEBmaDoJCQlWNEwyIGZpbGUgaGFuZGxlDQogICogQHN0YXRl OgkJc3RhdGUgb2YgdGhlIGNvbnRleHQNCi0gKiBAY29sb3JzcGFjZTogZW51bSB2NGwyX2NvbG9y c3BhY2U7IHN1cHBsZW1lbnRhbCB0byBwaXhlbGZvcm1hdA0KLSAqIEB5Y2Jjcl9lbmM6IGVudW0g djRsMl95Y2Jjcl9lbmNvZGluZywgWSdDYkNyIGVuY29kaW5nDQotICogQHF1YW50aXphdGlvbjog ZW51bSB2NGwyX3F1YW50aXphdGlvbiwgY29sb3JzcGFjZSBxdWFudGl6YXRpb24NCi0gKiBAeGZl cl9mdW5jOiBlbnVtIHY0bDJfeGZlcl9mdW5jLCBjb2xvcnNwYWNlIHRyYW5zZmVyIGZ1bmN0aW9u DQogICovDQogc3RydWN0IG10a19qcGVnX2N0eCB7DQogCXN0cnVjdCBtdGtfanBlZ19kZXYJCSpq cGVnOw0KQEAgLTEyOCwxMSArMTE3LDYgQEAgc3RydWN0IG10a19qcGVnX2N0eCB7DQogCXN0cnVj dCBtdGtfanBlZ19xX2RhdGEJCWNhcF9xOw0KIAlzdHJ1Y3QgdjRsMl9maAkJCWZoOw0KIAllbnVt IG10a19qcGVnX2N0eF9zdGF0ZQkJc3RhdGU7DQotDQotCWVudW0gdjRsMl9jb2xvcnNwYWNlIGNv bG9yc3BhY2U7DQotCWVudW0gdjRsMl95Y2Jjcl9lbmNvZGluZyB5Y2Jjcl9lbmM7DQotCWVudW0g djRsMl9xdWFudGl6YXRpb24gcXVhbnRpemF0aW9uOw0KLQllbnVtIHY0bDJfeGZlcl9mdW5jIHhm ZXJfZnVuYzsNCiB9Ow0KIA0KICNlbmRpZiAvKiBfTVRLX0pQRUdfQ09SRV9IICovDQotLSANCjIu MTguMA0K