Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp73622ybl; Tue, 10 Dec 2019 17:55:58 -0800 (PST) X-Google-Smtp-Source: APXvYqxxA9m/smFmUhdGVZHqFxcQFYRx7hq3UjNVpY1+CTSjkN3rO8AZ/vlxXtHQLI45NSx4x84S X-Received: by 2002:a05:6808:64e:: with SMTP id z14mr862488oih.79.1576029358788; Tue, 10 Dec 2019 17:55:58 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1576029358; cv=none; d=google.com; s=arc-20160816; b=WaRwS5H5V5wioDqpjOOkqzknfhW6a4xJOpPNkQO8JhPY8w+tGen+OTr5ZCuahJ82ic f3WQq1l81TVKKxfwQk1qgTTR8uLuDacj4wCDKUaVM5olVlV3snAdrJm2nEk0h4bRNojj gZwSAysppgDKIqufxP487k4/yxww0ErOwbiVmGdVrRl1+wgha3PB4tFax9iBHLC+9k5Y IFIjddWDzg59RTyjVWuDJHV2z0EFFvQ4M4hVAGiqXWEmvqmBtpPl0HJ877Kg/Jn6mGgi c2iObdw0PSjJ3b4w9YAtMruNLCbnqKzr50q1qvO/u6+2UVtGraWVOa/CVPq9iqQxBaGo BYZA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=2LVIlkRutdZ1YsoqtSNAMNODO/3+N41XB7AwwCF2ckQ=; b=cNxsFcjlxt/rIjxp5tUjoSxcW1y1zQ/S0iHTy+ucCUKpNYkShOY2h+sG6GP1ppL7wZ mVgWQWicY+rA9U+wAwKESsn6VklLYrR2kwidrHhRX5aUAw5S715B+xJ9FUhFvEz18joq opKhfYYH80La0zxZ/3rhKNLGdwniz+e8vzkCK/5hqolmgsFiCe8xqSFYEr+5dFGAGqwh 64B8JMQcoJxK/4b2Fpr3nlblc2Si6I8iQfjNjZFK1wJ+yqUpf0h1cbR/Xwy+8ChHms/J 6Odn/7gXug4JwlWkGziZswUc0zHAbs+1SWEeo5iu2Fr/JyWHscEEE6Q1Kmr3HRvS4luV m70A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@mediatek.com header.s=dk header.b="fakCLrg/"; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=mediatek.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id l14si167478otk.225.2019.12.10.17.55.46; Tue, 10 Dec 2019 17:55:58 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@mediatek.com header.s=dk header.b="fakCLrg/"; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=mediatek.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727574AbfLKBzM (ORCPT + 99 others); Tue, 10 Dec 2019 20:55:12 -0500 Received: from Mailgw01.mediatek.com ([1.203.163.78]:39344 "EHLO mailgw01.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1727538AbfLKBzM (ORCPT ); Tue, 10 Dec 2019 20:55:12 -0500 X-UUID: b8e983e84735409cb365ea1f78e47c10-20191211 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=2LVIlkRutdZ1YsoqtSNAMNODO/3+N41XB7AwwCF2ckQ=; b=fakCLrg/M0KrYJzZMIdo3YR7ggFWG8OznTxqyGgwxc8CKOhdp5MepHpoKgqaZwoGE+1jGLX+FdYC9y80PiIhfbwDPdXVZ6wm4z3K8mJKaBtZis2iVbaDFxQbtAuh6+BdTZWUYYAaAGovtGrJW4fJnIeB/IsKUQhjto5sjrmngBk=; X-UUID: b8e983e84735409cb365ea1f78e47c10-20191211 Received: from mtkcas32.mediatek.inc [(172.27.4.253)] by mailgw01.mediatek.com (envelope-from ) (mailgw01.mediatek.com ESMTP with TLS) with ESMTP id 1490590260; Wed, 11 Dec 2019 09:55:03 +0800 Received: from mtkcas09.mediatek.inc (172.21.101.178) by MTKMBS31DR.mediatek.inc (172.27.6.102) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Wed, 11 Dec 2019 09:54:54 +0800 Received: from localhost.localdomain (10.17.3.153) by mtkcas09.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1395.4 via Frontend Transport; Wed, 11 Dec 2019 09:54:53 +0800 From: To: Bin Liu , Rob Herring CC: Greg Kroah-Hartman , Mark Rutland , Matthias Brugger , Alan Stern , , , , , , , , , Min Guo Subject: [PATCH v9 5/6] usb: musb: Add musb_clearb/w() interface Date: Wed, 11 Dec 2019 09:54:45 +0800 Message-ID: <20191211015446.11477-6-min.guo@mediatek.com> X-Mailer: git-send-email 2.18.0 In-Reply-To: <20191211015446.11477-1-min.guo@mediatek.com> References: <20191211015446.11477-1-min.guo@mediatek.com> MIME-Version: 1.0 Content-Type: text/plain X-TM-SNTS-SMTP: D11EFE24E0F8A7AEA1B750D1BF120767F9E77C1B9862F2508723C09706023F2C2000:8 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 RnJvbTogTWluIEd1byA8bWluLmd1b0BtZWRpYXRlay5jb20+DQoNCkRlbGV0ZSB0aGUgY29uc3Qg YXR0cmlidXRlIG9mIGFkZHIgcGFyYW1ldGVyIGluIHJlYWRiL3cvbCBob29rcywgdGhlc2UNCmNo YW5nZXMgYXJlIGZvciBpbXBsZW1lbnRpbmcgY2xlYXJpbmcgVzFDIHJlZ2lzdGVycy4NClJlcGxh Y2UgbXVzYl9yZWFkYi93IHdpdGggbXVzYl9jbGVhcmIvdyB0byBjbGVhciB0aGUgaW50ZXJydXB0 IHN0YXR1cy4NCg0KU2lnbmVkLW9mZi1ieTogTWluIEd1byA8bWluLmd1b0BtZWRpYXRlay5jb20+ DQotLS0NCmNoYW5nZXMgaW4gdjk6DQoxLiBubyBjaGFuZ2VzDQoNCmNoYW5nZXMgaW4gdjg6DQox LiBubyBjaGFuZ2VzDQoNCmNoYW5nZXMgaW4gdjc6DQoxLiBubyBjaGFuZ2VzDQoNCmNoYW5nZXMg aW4gdjY6DQoxLiBubyBjaGFuZ2VzDQoNCmNoYW5nZXMgaW4gdjU6DQoxLiBSZXBsYWNlIG11c2Jf cmVhZGIoKSB3aXRoIG11c2JfY2xlYXJiKCkgdG8gY2xlYXIgZG1hIHBlbmRpbmcgaW50ZXJydXB0 cw0KDQpuZXcgcGF0Y2ggYmFzZWQgb24gdjQ6DQotLS0NCiBkcml2ZXJzL3VzYi9tdXNiL211c2Jf Y29yZS5jIHwgMzIgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0NCiBkcml2ZXJzL3Vz Yi9tdXNiL211c2JfY29yZS5oIHwgIDggKysrKysrLS0NCiBkcml2ZXJzL3VzYi9tdXNiL211c2Jf aW8uaCAgIHwgIDggKysrKystLS0NCiBkcml2ZXJzL3VzYi9tdXNiL211c2Joc2RtYS5jIHwgIDIg Ky0NCiBkcml2ZXJzL3VzYi9tdXNiL3N1bnhpLmMgICAgIHwgIDQgKystLQ0KIGRyaXZlcnMvdXNi L211c2IvdHVzYjYwMTAuYyAgfCAgMiArLQ0KIDYgZmlsZXMgY2hhbmdlZCwgMzggaW5zZXJ0aW9u cygrKSwgMTggZGVsZXRpb25zKC0pDQoNCmRpZmYgLS1naXQgYS9kcml2ZXJzL3VzYi9tdXNiL211 c2JfY29yZS5jIGIvZHJpdmVycy91c2IvbXVzYi9tdXNiX2NvcmUuYw0KaW5kZXggMzJjMDA2NTJl MWEyLi44ZTNjMTRlM2FmYWIgMTAwNjQ0DQotLS0gYS9kcml2ZXJzL3VzYi9tdXNiL211c2JfY29y ZS5jDQorKysgYi9kcml2ZXJzL3VzYi9tdXNiL211c2JfY29yZS5jDQpAQCAtMjQ2LDcgKzI0Niw3 IEBAIHN0YXRpYyB1MzIgbXVzYl9kZWZhdWx0X2J1c2N0bF9vZmZzZXQodTggZXBudW0sIHUxNiBv ZmZzZXQpDQogCXJldHVybiAweDgwICsgKDB4MDggKiBlcG51bSkgKyBvZmZzZXQ7DQogfQ0KIA0K LXN0YXRpYyB1OCBtdXNiX2RlZmF1bHRfcmVhZGIoY29uc3Qgdm9pZCBfX2lvbWVtICphZGRyLCB1 bnNpZ25lZCBvZmZzZXQpDQorc3RhdGljIHU4IG11c2JfZGVmYXVsdF9yZWFkYih2b2lkIF9faW9t ZW0gKmFkZHIsIHVuc2lnbmVkIG9mZnNldCkNCiB7DQogCXU4IGRhdGEgPSAgX19yYXdfcmVhZGIo YWRkciArIG9mZnNldCk7DQogDQpAQCAtMjYwLDcgKzI2MCw3IEBAIHN0YXRpYyB2b2lkIG11c2Jf ZGVmYXVsdF93cml0ZWIodm9pZCBfX2lvbWVtICphZGRyLCB1bnNpZ25lZCBvZmZzZXQsIHU4IGRh dGEpDQogCV9fcmF3X3dyaXRlYihkYXRhLCBhZGRyICsgb2Zmc2V0KTsNCiB9DQogDQotc3RhdGlj IHUxNiBtdXNiX2RlZmF1bHRfcmVhZHcoY29uc3Qgdm9pZCBfX2lvbWVtICphZGRyLCB1bnNpZ25l ZCBvZmZzZXQpDQorc3RhdGljIHUxNiBtdXNiX2RlZmF1bHRfcmVhZHcodm9pZCBfX2lvbWVtICph ZGRyLCB1bnNpZ25lZCBvZmZzZXQpDQogew0KIAl1MTYgZGF0YSA9IF9fcmF3X3JlYWR3KGFkZHIg KyBvZmZzZXQpOw0KIA0KQEAgLTM5NiwxOSArMzk2LDI1IEBAIHN0YXRpYyB2b2lkIG11c2JfZGVm YXVsdF9yZWFkX2ZpZm8oc3RydWN0IG11c2JfaHdfZXAgKmh3X2VwLCB1MTYgbGVuLCB1OCAqZHN0 KQ0KIC8qDQogICogT2xkIHN0eWxlIElPIGZ1bmN0aW9ucw0KICAqLw0KLXU4ICgqbXVzYl9yZWFk YikoY29uc3Qgdm9pZCBfX2lvbWVtICphZGRyLCB1bnNpZ25lZCBvZmZzZXQpOw0KK3U4ICgqbXVz Yl9yZWFkYikodm9pZCBfX2lvbWVtICphZGRyLCB1bnNpZ25lZCBvZmZzZXQpOw0KIEVYUE9SVF9T WU1CT0xfR1BMKG11c2JfcmVhZGIpOw0KIA0KIHZvaWQgKCptdXNiX3dyaXRlYikodm9pZCBfX2lv bWVtICphZGRyLCB1bnNpZ25lZCBvZmZzZXQsIHU4IGRhdGEpOw0KIEVYUE9SVF9TWU1CT0xfR1BM KG11c2Jfd3JpdGViKTsNCiANCi11MTYgKCptdXNiX3JlYWR3KShjb25zdCB2b2lkIF9faW9tZW0g KmFkZHIsIHVuc2lnbmVkIG9mZnNldCk7DQordTggKCptdXNiX2NsZWFyYikodm9pZCBfX2lvbWVt ICphZGRyLCB1bnNpZ25lZCBpbnQgb2Zmc2V0KTsNCitFWFBPUlRfU1lNQk9MX0dQTChtdXNiX2Ns ZWFyYik7DQorDQordTE2ICgqbXVzYl9yZWFkdykodm9pZCBfX2lvbWVtICphZGRyLCB1bnNpZ25l ZCBvZmZzZXQpOw0KIEVYUE9SVF9TWU1CT0xfR1BMKG11c2JfcmVhZHcpOw0KIA0KIHZvaWQgKCpt dXNiX3dyaXRldykodm9pZCBfX2lvbWVtICphZGRyLCB1bnNpZ25lZCBvZmZzZXQsIHUxNiBkYXRh KTsNCiBFWFBPUlRfU1lNQk9MX0dQTChtdXNiX3dyaXRldyk7DQogDQotdTMyIG11c2JfcmVhZGwo Y29uc3Qgdm9pZCBfX2lvbWVtICphZGRyLCB1bnNpZ25lZCBvZmZzZXQpDQordTE2ICgqbXVzYl9j bGVhcncpKHZvaWQgX19pb21lbSAqYWRkciwgdW5zaWduZWQgaW50IG9mZnNldCk7DQorRVhQT1JU X1NZTUJPTF9HUEwobXVzYl9jbGVhcncpOw0KKw0KK3UzMiBtdXNiX3JlYWRsKHZvaWQgX19pb21l bSAqYWRkciwgdW5zaWduZWQgb2Zmc2V0KQ0KIHsNCiAJdTMyIGRhdGEgPSBfX3Jhd19yZWFkbChh ZGRyICsgb2Zmc2V0KTsNCiANCkBAIC0xMDQ3LDcgKzEwNTMsNiBAQCBzdGF0aWMgaXJxcmV0dXJu X3QgbXVzYl9zdGFnZTBfaXJxKHN0cnVjdCBtdXNiICptdXNiLCB1OCBpbnRfdXNiLA0KIHN0YXRp YyB2b2lkIG11c2JfZGlzYWJsZV9pbnRlcnJ1cHRzKHN0cnVjdCBtdXNiICptdXNiKQ0KIHsNCiAJ dm9pZCBfX2lvbWVtCSptYmFzZSA9IG11c2ItPm1yZWdzOw0KLQl1MTYJdGVtcDsNCiANCiAJLyog ZGlzYWJsZSBpbnRlcnJ1cHRzICovDQogCW11c2Jfd3JpdGViKG1iYXNlLCBNVVNCX0lOVFJVU0JF LCAwKTsNCkBAIC0xMDU3LDkgKzEwNjIsOSBAQCBzdGF0aWMgdm9pZCBtdXNiX2Rpc2FibGVfaW50 ZXJydXB0cyhzdHJ1Y3QgbXVzYiAqbXVzYikNCiAJbXVzYl93cml0ZXcobWJhc2UsIE1VU0JfSU5U UlJYRSwgMCk7DQogDQogCS8qICBmbHVzaCBwZW5kaW5nIGludGVycnVwdHMgKi8NCi0JdGVtcCA9 IG11c2JfcmVhZGIobWJhc2UsIE1VU0JfSU5UUlVTQik7DQotCXRlbXAgPSBtdXNiX3JlYWR3KG1i YXNlLCBNVVNCX0lOVFJUWCk7DQotCXRlbXAgPSBtdXNiX3JlYWR3KG1iYXNlLCBNVVNCX0lOVFJS WCk7DQorCW11c2JfY2xlYXJiKG1iYXNlLCBNVVNCX0lOVFJVU0IpOw0KKwltdXNiX2NsZWFydyht YmFzZSwgTVVTQl9JTlRSVFgpOw0KKwltdXNiX2NsZWFydyhtYmFzZSwgTVVTQl9JTlRSUlgpOw0K IH0NCiANCiBzdGF0aWMgdm9pZCBtdXNiX2VuYWJsZV9pbnRlcnJ1cHRzKHN0cnVjdCBtdXNiICpt dXNiKQ0KQEAgLTIyNzgsMTAgKzIyODMsMTkgQEAgbXVzYl9pbml0X2NvbnRyb2xsZXIoc3RydWN0 IGRldmljZSAqZGV2LCBpbnQgbklycSwgdm9pZCBfX2lvbWVtICpjdHJsKQ0KIAkJbXVzYl9yZWFk YiA9IG11c2ItPm9wcy0+cmVhZGI7DQogCWlmIChtdXNiLT5vcHMtPndyaXRlYikNCiAJCW11c2Jf d3JpdGViID0gbXVzYi0+b3BzLT53cml0ZWI7DQorCWlmIChtdXNiLT5vcHMtPmNsZWFyYikNCisJ CW11c2JfY2xlYXJiID0gbXVzYi0+b3BzLT5jbGVhcmI7DQorCWVsc2UNCisJCW11c2JfY2xlYXJi ID0gbXVzYl9yZWFkYjsNCisNCiAJaWYgKG11c2ItPm9wcy0+cmVhZHcpDQogCQltdXNiX3JlYWR3 ID0gbXVzYi0+b3BzLT5yZWFkdzsNCiAJaWYgKG11c2ItPm9wcy0+d3JpdGV3KQ0KIAkJbXVzYl93 cml0ZXcgPSBtdXNiLT5vcHMtPndyaXRldzsNCisJaWYgKG11c2ItPm9wcy0+Y2xlYXJ3KQ0KKwkJ bXVzYl9jbGVhcncgPSBtdXNiLT5vcHMtPmNsZWFydzsNCisJZWxzZQ0KKwkJbXVzYl9jbGVhcncg PSBtdXNiX3JlYWR3Ow0KIA0KICNpZm5kZWYgQ09ORklHX01VU0JfUElPX09OTFkNCiAJaWYgKCFt dXNiLT5vcHMtPmRtYV9pbml0IHx8ICFtdXNiLT5vcHMtPmRtYV9leGl0KSB7DQpkaWZmIC0tZ2l0 IGEvZHJpdmVycy91c2IvbXVzYi9tdXNiX2NvcmUuaCBiL2RyaXZlcnMvdXNiL211c2IvbXVzYl9j b3JlLmgNCmluZGV4IDlmNWE2OWMyZDczYi4uMGQ5YTM1ZmU4MmQ1IDEwMDY0NA0KLS0tIGEvZHJp dmVycy91c2IvbXVzYi9tdXNiX2NvcmUuaA0KKysrIGIvZHJpdmVycy91c2IvbXVzYi9tdXNiX2Nv cmUuaA0KQEAgLTEyMCw4ICsxMjAsMTAgQEAgc3RydWN0IG11c2JfaW87DQogICogQGZpZm9fb2Zm c2V0OiByZXR1cm5zIHRoZSBmaWZvIG9mZnNldA0KICAqIEByZWFkYjoJcmVhZCA4IGJpdHMNCiAg KiBAd3JpdGViOgl3cml0ZSA4IGJpdHMNCisgKiBAY2xlYXJiOgljb3VsZCBiZSBjbGVhci1vbi1y ZWFkYiBvciBXMUMNCiAgKiBAcmVhZHc6CXJlYWQgMTYgYml0cw0KICAqIEB3cml0ZXc6CXdyaXRl IDE2IGJpdHMNCisgKiBAY2xlYXJ3Ogljb3VsZCBiZSBjbGVhci1vbi1yZWFkdyBvciBXMUMNCiAg KiBAcmVhZF9maWZvOglyZWFkcyB0aGUgZmlmbw0KICAqIEB3cml0ZV9maWZvOgl3cml0ZXMgdG8g Zmlmbw0KICAqIEBnZXRfdG9nZ2xlOglwbGF0Zm9ybSBzcGVjaWZpYyBnZXQgdG9nZ2xlIGZ1bmN0 aW9uDQpAQCAtMTY0LDEwICsxNjYsMTIgQEAgc3RydWN0IG11c2JfcGxhdGZvcm1fb3BzIHsNCiAJ dTE2CWZpZm9fbW9kZTsNCiAJdTMyCSgqZmlmb19vZmZzZXQpKHU4IGVwbnVtKTsNCiAJdTMyCSgq YnVzY3RsX29mZnNldCkodTggZXBudW0sIHUxNiBvZmZzZXQpOw0KLQl1OAkoKnJlYWRiKShjb25z dCB2b2lkIF9faW9tZW0gKmFkZHIsIHVuc2lnbmVkIG9mZnNldCk7DQorCXU4CSgqcmVhZGIpKHZv aWQgX19pb21lbSAqYWRkciwgdW5zaWduZWQgb2Zmc2V0KTsNCiAJdm9pZAkoKndyaXRlYikodm9p ZCBfX2lvbWVtICphZGRyLCB1bnNpZ25lZCBvZmZzZXQsIHU4IGRhdGEpOw0KLQl1MTYJKCpyZWFk dykoY29uc3Qgdm9pZCBfX2lvbWVtICphZGRyLCB1bnNpZ25lZCBvZmZzZXQpOw0KKwl1OAkoKmNs ZWFyYikodm9pZCBfX2lvbWVtICphZGRyLCB1bnNpZ25lZCBpbnQgb2Zmc2V0KTsNCisJdTE2CSgq cmVhZHcpKHZvaWQgX19pb21lbSAqYWRkciwgdW5zaWduZWQgb2Zmc2V0KTsNCiAJdm9pZAkoKndy aXRldykodm9pZCBfX2lvbWVtICphZGRyLCB1bnNpZ25lZCBvZmZzZXQsIHUxNiBkYXRhKTsNCisJ dTE2CSgqY2xlYXJ3KSh2b2lkIF9faW9tZW0gKmFkZHIsIHVuc2lnbmVkIGludCBvZmZzZXQpOw0K IAl2b2lkCSgqcmVhZF9maWZvKShzdHJ1Y3QgbXVzYl9od19lcCAqaHdfZXAsIHUxNiBsZW4sIHU4 ICpidWYpOw0KIAl2b2lkCSgqd3JpdGVfZmlmbykoc3RydWN0IG11c2JfaHdfZXAgKmh3X2VwLCB1 MTYgbGVuLCBjb25zdCB1OCAqYnVmKTsNCiAJdTE2CSgqZ2V0X3RvZ2dsZSkoc3RydWN0IG11c2Jf cWggKnFoLCBpbnQgaXNfb3V0KTsNCmRpZmYgLS1naXQgYS9kcml2ZXJzL3VzYi9tdXNiL211c2Jf aW8uaCBiL2RyaXZlcnMvdXNiL211c2IvbXVzYl9pby5oDQppbmRleCA4MTc5MzM0ZjQwNWIuLjcy MDA1OTZhMzg4ZiAxMDA2NDQNCi0tLSBhL2RyaXZlcnMvdXNiL211c2IvbXVzYl9pby5oDQorKysg Yi9kcml2ZXJzL3VzYi9tdXNiL211c2JfaW8uaA0KQEAgLTM3LDExICszNywxMyBAQCBzdHJ1Y3Qg bXVzYl9pbyB7DQogfTsNCiANCiAvKiBEbyBub3QgYWRkIG5ldyBlbnRyaWVzIGhlcmUsIGFkZCB0 aGVtIHRoZSBzdHJ1Y3QgbXVzYl9pbyBpbnN0ZWFkICovDQotZXh0ZXJuIHU4ICgqbXVzYl9yZWFk YikoY29uc3Qgdm9pZCBfX2lvbWVtICphZGRyLCB1bnNpZ25lZCBvZmZzZXQpOw0KK2V4dGVybiB1 OCAoKm11c2JfcmVhZGIpKHZvaWQgX19pb21lbSAqYWRkciwgdW5zaWduZWQgb2Zmc2V0KTsNCiBl eHRlcm4gdm9pZCAoKm11c2Jfd3JpdGViKSh2b2lkIF9faW9tZW0gKmFkZHIsIHVuc2lnbmVkIG9m ZnNldCwgdTggZGF0YSk7DQotZXh0ZXJuIHUxNiAoKm11c2JfcmVhZHcpKGNvbnN0IHZvaWQgX19p b21lbSAqYWRkciwgdW5zaWduZWQgb2Zmc2V0KTsNCitleHRlcm4gdTggKCptdXNiX2NsZWFyYiko dm9pZCBfX2lvbWVtICphZGRyLCB1bnNpZ25lZCBpbnQgb2Zmc2V0KTsNCitleHRlcm4gdTE2ICgq bXVzYl9yZWFkdykodm9pZCBfX2lvbWVtICphZGRyLCB1bnNpZ25lZCBvZmZzZXQpOw0KIGV4dGVy biB2b2lkICgqbXVzYl93cml0ZXcpKHZvaWQgX19pb21lbSAqYWRkciwgdW5zaWduZWQgb2Zmc2V0 LCB1MTYgZGF0YSk7DQotZXh0ZXJuIHUzMiBtdXNiX3JlYWRsKGNvbnN0IHZvaWQgX19pb21lbSAq YWRkciwgdW5zaWduZWQgb2Zmc2V0KTsNCitleHRlcm4gdTE2ICgqbXVzYl9jbGVhcncpKHZvaWQg X19pb21lbSAqYWRkciwgdW5zaWduZWQgaW50IG9mZnNldCk7DQorZXh0ZXJuIHUzMiBtdXNiX3Jl YWRsKHZvaWQgX19pb21lbSAqYWRkciwgdW5zaWduZWQgb2Zmc2V0KTsNCiBleHRlcm4gdm9pZCBt dXNiX3dyaXRlbCh2b2lkIF9faW9tZW0gKmFkZHIsIHVuc2lnbmVkIG9mZnNldCwgdTMyIGRhdGEp Ow0KIA0KICNlbmRpZg0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvdXNiL211c2IvbXVzYmhzZG1hLmMg Yi9kcml2ZXJzL3VzYi9tdXNiL211c2Joc2RtYS5jDQppbmRleCBkNTQ5YzBiODMzNjYuLjk3NWM2 MWVlNGU2YSAxMDA2NDQNCi0tLSBhL2RyaXZlcnMvdXNiL211c2IvbXVzYmhzZG1hLmMNCisrKyBi L2RyaXZlcnMvdXNiL211c2IvbXVzYmhzZG1hLmMNCkBAIC0yODQsNyArMjg0LDcgQEAgaXJxcmV0 dXJuX3QgZG1hX2NvbnRyb2xsZXJfaXJxKGludCBpcnEsIHZvaWQgKnByaXZhdGVfZGF0YSkNCiAN CiAJc3Bpbl9sb2NrX2lycXNhdmUoJm11c2ItPmxvY2ssIGZsYWdzKTsNCiANCi0JaW50X2hzZG1h ID0gbXVzYl9yZWFkYihtYmFzZSwgTVVTQl9IU0RNQV9JTlRSKTsNCisJaW50X2hzZG1hID0gbXVz Yl9jbGVhcmIobWJhc2UsIE1VU0JfSFNETUFfSU5UUik7DQogDQogCWlmICghaW50X2hzZG1hKSB7 DQogCQltdXNiX2RiZyhtdXNiLCAic3B1cmlvdXMgRE1BIGlycSIpOw0KZGlmZiAtLWdpdCBhL2Ry aXZlcnMvdXNiL211c2Ivc3VueGkuYyBiL2RyaXZlcnMvdXNiL211c2Ivc3VueGkuYw0KaW5kZXgg ODMyYTQxZjllZTdkLi4yYzFiYmFhODMyZGQgMTAwNjQ0DQotLS0gYS9kcml2ZXJzL3VzYi9tdXNi L3N1bnhpLmMNCisrKyBiL2RyaXZlcnMvdXNiL211c2Ivc3VueGkuYw0KQEAgLTQwNyw3ICs0MDcs NyBAQCBzdGF0aWMgdTMyIHN1bnhpX211c2JfYnVzY3RsX29mZnNldCh1OCBlcG51bSwgdTE2IG9m ZnNldCkNCiAJcmV0dXJuIFNVTlhJX01VU0JfVFhGVU5DQUREUiArIG9mZnNldDsNCiB9DQogDQot c3RhdGljIHU4IHN1bnhpX211c2JfcmVhZGIoY29uc3Qgdm9pZCBfX2lvbWVtICphZGRyLCB1bnNp Z25lZCBvZmZzZXQpDQorc3RhdGljIHU4IHN1bnhpX211c2JfcmVhZGIodm9pZCBfX2lvbWVtICph ZGRyLCB1bnNpZ25lZCBvZmZzZXQpDQogew0KIAlzdHJ1Y3Qgc3VueGlfZ2x1ZSAqZ2x1ZTsNCiAN CkBAIC01MjAsNyArNTIwLDcgQEAgc3RhdGljIHZvaWQgc3VueGlfbXVzYl93cml0ZWIodm9pZCBf X2lvbWVtICphZGRyLCB1bnNpZ25lZCBvZmZzZXQsIHU4IGRhdGEpDQogCQkoaW50KShhZGRyIC0g c3VueGlfbXVzYi0+bXJlZ3MpKTsNCiB9DQogDQotc3RhdGljIHUxNiBzdW54aV9tdXNiX3JlYWR3 KGNvbnN0IHZvaWQgX19pb21lbSAqYWRkciwgdW5zaWduZWQgb2Zmc2V0KQ0KK3N0YXRpYyB1MTYg c3VueGlfbXVzYl9yZWFkdyh2b2lkIF9faW9tZW0gKmFkZHIsIHVuc2lnbmVkIG9mZnNldCkNCiB7 DQogCWlmIChhZGRyID09IHN1bnhpX211c2ItPm1yZWdzKSB7DQogCQkvKiBnZW5lcmljIGNvbnRy b2wgb3IgZmlmbyBjb250cm9sIHJlZyBhY2Nlc3MgKi8NCmRpZmYgLS1naXQgYS9kcml2ZXJzL3Vz Yi9tdXNiL3R1c2I2MDEwLmMgYi9kcml2ZXJzL3VzYi9tdXNiL3R1c2I2MDEwLmMNCmluZGV4IDM5 NDUzMjg3YjVjMy4uY2ZiOTRmOTQ2N2EzIDEwMDY0NA0KLS0tIGEvZHJpdmVycy91c2IvbXVzYi90 dXNiNjAxMC5jDQorKysgYi9kcml2ZXJzL3VzYi9tdXNiL3R1c2I2MDEwLmMNCkBAIC0xNDIsNyAr MTQyLDcgQEAgc3RhdGljIHZvaWQgdHVzYl9lcF9zZWxlY3Qodm9pZCBfX2lvbWVtICptYmFzZSwg dTggZXBudW0pDQogLyoNCiAgKiBUVVNCNjAxMCBkb2Vzbid0IGFsbG93IDgtYml0IGFjY2Vzczsg MTYtYml0IGFjY2VzcyBpcyB0aGUgbWluaW11bS4NCiAgKi8NCi1zdGF0aWMgdTggdHVzYl9yZWFk Yihjb25zdCB2b2lkIF9faW9tZW0gKmFkZHIsIHVuc2lnbmVkIG9mZnNldCkNCitzdGF0aWMgdTgg dHVzYl9yZWFkYih2b2lkIF9faW9tZW0gKmFkZHIsIHVuc2lnbmVkIG9mZnNldCkNCiB7DQogCXUx NiB0bXA7DQogCXU4IHZhbDsNCi0tIA0KMi4yNC4wDQo=