Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp73580ybl; Tue, 10 Dec 2019 17:55:53 -0800 (PST) X-Google-Smtp-Source: APXvYqz/W06ZxV+YR9cp919DNomj7mdiEnfJnMOf5SNO1SSjs/8cewgOj/n5mqMjon13yYHsZ6Jg X-Received: by 2002:aca:1b08:: with SMTP id b8mr893271oib.106.1576029353803; Tue, 10 Dec 2019 17:55:53 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1576029353; cv=none; d=google.com; s=arc-20160816; b=SrB/v7Oaz/gaduGtiv9q4ijtWzmPj/HQThexj9y8zjlU2iJMaICoVhfpKIaRjxF8ZP PgLn4rZiT0Bib9zDAT8GPvd3tBSBjdX4Uu7sdaC/VtKrXLa3Y54UpvJOUEt8hQk9Pcg/ wmhchzG4Oj6qkMaiq1pMdgJ9Fl0Zva2/X3WAYliS4Y6ff30fcTkIjGjnyZB/hZrUjmyD wdf0yRLKvqolKykNesUwq8PjaiJdwnRKN4iw98NNL1m15AEDTAAbOI9U+OZqvrrJzlZs 8k/w4SdQ0t2huedfWCFo4iusEB0aiJzBKawHagjTIwrVhk/N+w9Bw8+nu/z2aGDw91q7 QVwg== 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=9HrUhTi78f5xP0jry51zQs2YAQuyV98mbQ++goxlMsg=; b=dKN0y3xt+w/te38sd9UFh8IKH9R43R5//priogliG5eNMh8AcEOA1tl0dHL5vgM+P8 urM6QubNEkuX4HNZ+vGWmtwxkN6YeXW+3FoYRt0MvaXYDv9RbAdGzr1D8m0tOPUdUs/s mAdfiIXkqJQVq0IdjDia8oBxSSt/BJF4Bb43smy+FwRa7KvQ9wxpQO4f8yx743M6tUaB cud7Xdo6FWvDG8+1eK4LP81Fc2hbousv/qIO5sUDVDtXLV1LFAWi1sK6cZhopRlCbVdH vyqyHIpNTbPxtfErY7FAUkK0HEeWYoQrKV0K0UTr6DqeKnEy2Q+GYv8sjJUIxJmZ14cY IZcA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@mediatek.com header.s=dk header.b=cyPeNpoY; 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 y23si170877oti.65.2019.12.10.17.55.41; Tue, 10 Dec 2019 17:55:53 -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=cyPeNpoY; 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 S1727543AbfLKBzI (ORCPT + 99 others); Tue, 10 Dec 2019 20:55:08 -0500 Received: from mailgw02.mediatek.com ([1.203.163.81]:48437 "EHLO mailgw02.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1726417AbfLKBzG (ORCPT ); Tue, 10 Dec 2019 20:55:06 -0500 X-UUID: 1874a1a90d4443a69b0528e9f34e309c-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=9HrUhTi78f5xP0jry51zQs2YAQuyV98mbQ++goxlMsg=; b=cyPeNpoYaODWGr+Utgu2FeP9WTiP4aKtka1Cye6zRqevSF4oSVCJKuPoV+JUfLQMPtgN3yjDX7ldj/SmIgCY0GY8gwjharFUNaQH+z8FJe2aiIar7djR8cvcubo6ndMY3ZGSN68cosVStc5M56xMVsAhPjTwxvg3AwDg9fo6YIM=; X-UUID: 1874a1a90d4443a69b0528e9f34e309c-20191211 Received: from mtkcas32.mediatek.inc [(172.27.4.253)] by mailgw02.mediatek.com (envelope-from ) (mailgw01.mediatek.com ESMTP with TLS) with ESMTP id 1494153295; Wed, 11 Dec 2019 09:54:58 +0800 Received: from mtkcas09.mediatek.inc (172.21.101.178) by MTKMBS31N2.mediatek.inc (172.27.4.87) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Wed, 11 Dec 2019 09:53:59 +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:50 +0800 From: To: Bin Liu , Rob Herring CC: Greg Kroah-Hartman , Mark Rutland , Matthias Brugger , Alan Stern , , , , , , , , , Min Guo Subject: [PATCH v9 3/6] usb: musb: Add get/set toggle hooks Date: Wed, 11 Dec 2019 09:54:43 +0800 Message-ID: <20191211015446.11477-4-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: FB2895EDD654822D40F138DF16C63129CE844CA87D732564AD51AE561924C7122000: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+DQoNCkFkZCBnZXQvc2V0IHRvZ2ds ZSBob29rcyBpbiBzdHJ1Y3QgbXVzYl9pbyBhbmQgc3RydWN0IG11c2JfcGxhdGZvcm1fb3BzDQpm b3Igc3BlY2lhbCBwbGF0Zm9ybTsgcmVtb3ZlIGZ1bmN0aW9uIG11c2Jfc2F2ZV90b2dnbGUsIHVz ZSB0aGUgc2V0L2dldA0KY2FsbGJhY2sgdG8gaGFuZGxlIHRvZ2dsZS4NCg0KU2lnbmVkLW9mZi1i eTogTWluIEd1byA8bWluLmd1b0BtZWRpYXRlay5jb20+DQotLS0NCmNoYW5nZXMgaW4gdjk6DQox LiBubyBjaGFuZ2VzDQoNCmNoYW5nZXMgaW4gdjg6DQoxLiBubyBjaGFuZ2VzDQoNCmNoYW5nZXMg aW4gdjc6DQoxLiBubyBjaGFuZ2VzDQoNCmNoYW5nZXMgaW4gdjY6DQoxLiBubyBjaGFuZ2VzDQoN CmNoYW5nZXMgaW4gdjU6DQoxLiBubyBjaGFuZ2VzDQoNCm5ldyBwYXRjaCBiYXNlZCBvbiB2NDoN Ci0tLQ0KIGRyaXZlcnMvdXNiL211c2IvbXVzYl9jb3JlLmMgfCA0MiArKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKw0KIGRyaXZlcnMvdXNiL211c2IvbXVzYl9jb3JlLmggfCAgNSArKysr DQogZHJpdmVycy91c2IvbXVzYi9tdXNiX2hvc3QuYyB8IDQ2ICsrKysrKysrLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLQ0KIGRyaXZlcnMvdXNiL211c2IvbXVzYl9pby5oICAgfCAgNCArKysr DQogNCBmaWxlcyBjaGFuZ2VkLCA2MSBpbnNlcnRpb25zKCspLCAzNiBkZWxldGlvbnMoLSkNCg0K ZGlmZiAtLWdpdCBhL2RyaXZlcnMvdXNiL211c2IvbXVzYl9jb3JlLmMgYi9kcml2ZXJzL3VzYi9t dXNiL211c2JfY29yZS5jDQppbmRleCAxNWNjYTkxMmM1M2UuLjMyYzAwNjUyZTFhMiAxMDA2NDQN Ci0tLSBhL2RyaXZlcnMvdXNiL211c2IvbXVzYl9jb3JlLmMNCisrKyBiL2RyaXZlcnMvdXNiL211 c2IvbXVzYl9jb3JlLmMNCkBAIC0yNzQsNiArMjc0LDM4IEBAIHN0YXRpYyB2b2lkIG11c2JfZGVm YXVsdF93cml0ZXcodm9pZCBfX2lvbWVtICphZGRyLCB1bnNpZ25lZCBvZmZzZXQsIHUxNiBkYXRh KQ0KIAlfX3Jhd193cml0ZXcoZGF0YSwgYWRkciArIG9mZnNldCk7DQogfQ0KIA0KK3N0YXRpYyB1 MTYgbXVzYl9kZWZhdWx0X2dldF90b2dnbGUoc3RydWN0IG11c2JfcWggKnFoLCBpbnQgaXNfb3V0 KQ0KK3sNCisJdm9pZCBfX2lvbWVtICplcGlvID0gcWgtPmh3X2VwLT5yZWdzOw0KKwl1MTYgY3Ny Ow0KKw0KKwlpZiAoaXNfb3V0KQ0KKwkJY3NyID0gbXVzYl9yZWFkdyhlcGlvLCBNVVNCX1RYQ1NS KSAmIE1VU0JfVFhDU1JfSF9EQVRBVE9HR0xFOw0KKwllbHNlDQorCQljc3IgPSBtdXNiX3JlYWR3 KGVwaW8sIE1VU0JfUlhDU1IpICYgTVVTQl9SWENTUl9IX0RBVEFUT0dHTEU7DQorDQorCXJldHVy biBjc3I7DQorfQ0KKw0KK3N0YXRpYyB1MTYgbXVzYl9kZWZhdWx0X3NldF90b2dnbGUoc3RydWN0 IG11c2JfcWggKnFoLCBpbnQgaXNfb3V0LA0KKwkJCQkgICBzdHJ1Y3QgdXJiICp1cmIpDQorew0K Kwl1MTYgY3NyOw0KKwl1MTYgdG9nZ2xlOw0KKw0KKwl0b2dnbGUgPSB1c2JfZ2V0dG9nZ2xlKHVy Yi0+ZGV2LCBxaC0+ZXBudW0sIGlzX291dCk7DQorDQorCWlmIChpc19vdXQpDQorCQljc3IgPSB0 b2dnbGUgPyAoTVVTQl9UWENTUl9IX1dSX0RBVEFUT0dHTEUNCisJCQkJfCBNVVNCX1RYQ1NSX0hf REFUQVRPR0dMRSkNCisJCQkJOiBNVVNCX1RYQ1NSX0NMUkRBVEFUT0c7DQorCWVsc2UNCisJCWNz ciA9IHRvZ2dsZSA/IChNVVNCX1JYQ1NSX0hfV1JfREFUQVRPR0dMRQ0KKwkJCQl8IE1VU0JfUlhD U1JfSF9EQVRBVE9HR0xFKSA6IDA7DQorDQorCXJldHVybiBjc3I7DQorfQ0KKw0KIC8qDQogICog TG9hZCBhbiBlbmRwb2ludCdzIEZJRk8NCiAgKi8NCkBAIC0yMjcxLDYgKzIzMDMsMTYgQEAgbXVz Yl9pbml0X2NvbnRyb2xsZXIoc3RydWN0IGRldmljZSAqZGV2LCBpbnQgbklycSwgdm9pZCBfX2lv bWVtICpjdHJsKQ0KIAllbHNlDQogCQltdXNiLT5pby53cml0ZV9maWZvID0gbXVzYl9kZWZhdWx0 X3dyaXRlX2ZpZm87DQogDQorCWlmIChtdXNiLT5vcHMtPmdldF90b2dnbGUpDQorCQltdXNiLT5p by5nZXRfdG9nZ2xlID0gbXVzYi0+b3BzLT5nZXRfdG9nZ2xlOw0KKwllbHNlDQorCQltdXNiLT5p by5nZXRfdG9nZ2xlID0gbXVzYl9kZWZhdWx0X2dldF90b2dnbGU7DQorDQorCWlmIChtdXNiLT5v cHMtPnNldF90b2dnbGUpDQorCQltdXNiLT5pby5zZXRfdG9nZ2xlID0gbXVzYi0+b3BzLT5zZXRf dG9nZ2xlOw0KKwllbHNlDQorCQltdXNiLT5pby5zZXRfdG9nZ2xlID0gbXVzYl9kZWZhdWx0X3Nl dF90b2dnbGU7DQorDQogCWlmICghbXVzYi0+eGNlaXYtPmlvX29wcykgew0KIAkJbXVzYi0+eGNl aXYtPmlvX2RldiA9IG11c2ItPmNvbnRyb2xsZXI7DQogCQltdXNiLT54Y2Vpdi0+aW9fcHJpdiA9 IG11c2ItPm1yZWdzOw0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvdXNiL211c2IvbXVzYl9jb3JlLmgg Yi9kcml2ZXJzL3VzYi9tdXNiL211c2JfY29yZS5oDQppbmRleCAwNDIwM2I3MTI2ZDUuLjlmNWE2 OWMyZDczYiAxMDA2NDQNCi0tLSBhL2RyaXZlcnMvdXNiL211c2IvbXVzYl9jb3JlLmgNCisrKyBi L2RyaXZlcnMvdXNiL211c2IvbXVzYl9jb3JlLmgNCkBAIC0yNyw2ICsyNyw3IEBADQogc3RydWN0 IG11c2I7DQogc3RydWN0IG11c2JfaHdfZXA7DQogc3RydWN0IG11c2JfZXA7DQorc3RydWN0IG11 c2JfcWg7DQogDQogLyogSGVscGVyIGRlZmluZXMgZm9yIHN0cnVjdCBtdXNiLT5od3ZlcnMgKi8N CiAjZGVmaW5lIE1VU0JfSFdWRVJTX01BSk9SKHgpCSgoeCA+PiAxMCkgJiAweDFmKQ0KQEAgLTEy Myw2ICsxMjQsOCBAQCBzdHJ1Y3QgbXVzYl9pbzsNCiAgKiBAd3JpdGV3Ogl3cml0ZSAxNiBiaXRz DQogICogQHJlYWRfZmlmbzoJcmVhZHMgdGhlIGZpZm8NCiAgKiBAd3JpdGVfZmlmbzoJd3JpdGVz IHRvIGZpZm8NCisgKiBAZ2V0X3RvZ2dsZToJcGxhdGZvcm0gc3BlY2lmaWMgZ2V0IHRvZ2dsZSBm dW5jdGlvbg0KKyAqIEBzZXRfdG9nZ2xlOglwbGF0Zm9ybSBzcGVjaWZpYyBzZXQgdG9nZ2xlIGZ1 bmN0aW9uDQogICogQGRtYV9pbml0OglwbGF0Zm9ybSBzcGVjaWZpYyBkbWEgaW5pdCBmdW5jdGlv bg0KICAqIEBkbWFfZXhpdDoJcGxhdGZvcm0gc3BlY2lmaWMgZG1hIGV4aXQgZnVuY3Rpb24NCiAg KiBAaW5pdDoJdHVybnMgb24gY2xvY2tzLCBzZXRzIHVwIHBsYXRmb3JtLXNwZWNpZmljIHJlZ2lz dGVycywgZXRjDQpAQCAtMTY3LDYgKzE3MCw4IEBAIHN0cnVjdCBtdXNiX3BsYXRmb3JtX29wcyB7 DQogCXZvaWQJKCp3cml0ZXcpKHZvaWQgX19pb21lbSAqYWRkciwgdW5zaWduZWQgb2Zmc2V0LCB1 MTYgZGF0YSk7DQogCXZvaWQJKCpyZWFkX2ZpZm8pKHN0cnVjdCBtdXNiX2h3X2VwICpod19lcCwg dTE2IGxlbiwgdTggKmJ1Zik7DQogCXZvaWQJKCp3cml0ZV9maWZvKShzdHJ1Y3QgbXVzYl9od19l cCAqaHdfZXAsIHUxNiBsZW4sIGNvbnN0IHU4ICpidWYpOw0KKwl1MTYJKCpnZXRfdG9nZ2xlKShz dHJ1Y3QgbXVzYl9xaCAqcWgsIGludCBpc19vdXQpOw0KKwl1MTYJKCpzZXRfdG9nZ2xlKShzdHJ1 Y3QgbXVzYl9xaCAqcWgsIGludCBpc19vdXQsIHN0cnVjdCB1cmIgKnVyYik7DQogCXN0cnVjdCBk bWFfY29udHJvbGxlciAqDQogCQkoKmRtYV9pbml0KSAoc3RydWN0IG11c2IgKm11c2IsIHZvaWQg X19pb21lbSAqYmFzZSk7DQogCXZvaWQJKCpkbWFfZXhpdCkoc3RydWN0IGRtYV9jb250cm9sbGVy ICpjKTsNCmRpZmYgLS1naXQgYS9kcml2ZXJzL3VzYi9tdXNiL211c2JfaG9zdC5jIGIvZHJpdmVy cy91c2IvbXVzYi9tdXNiX2hvc3QuYw0KaW5kZXggNWE0NGI3MDM3MmQ5Li44ODZjOWI2MDJmOGMg MTAwNjQ0DQotLS0gYS9kcml2ZXJzL3VzYi9tdXNiL211c2JfaG9zdC5jDQorKysgYi9kcml2ZXJz L3VzYi9tdXNiL211c2JfaG9zdC5jDQpAQCAtMjg2LDI2ICsyODYsNiBAQCBfX2FjcXVpcmVzKG11 c2ItPmxvY2spDQogCXNwaW5fbG9jaygmbXVzYi0+bG9jayk7DQogfQ0KIA0KLS8qIEZvciBidWxr L2ludGVycnVwdCBlbmRwb2ludHMgb25seSAqLw0KLXN0YXRpYyBpbmxpbmUgdm9pZCBtdXNiX3Nh dmVfdG9nZ2xlKHN0cnVjdCBtdXNiX3FoICpxaCwgaW50IGlzX2luLA0KLQkJCQkgICAgc3RydWN0 IHVyYiAqdXJiKQ0KLXsNCi0Jdm9pZCBfX2lvbWVtCQkqZXBpbyA9IHFoLT5od19lcC0+cmVnczsN Ci0JdTE2CQkJY3NyOw0KLQ0KLQkvKg0KLQkgKiBGSVhNRTogdGhlIGN1cnJlbnQgTWVudG9yIERN QSBjb2RlIHNlZW1zIHRvIGhhdmUNCi0JICogcHJvYmxlbXMgZ2V0dGluZyB0b2dnbGUgY29ycmVj dC4NCi0JICovDQotDQotCWlmIChpc19pbikNCi0JCWNzciA9IG11c2JfcmVhZHcoZXBpbywgTVVT Ql9SWENTUikgJiBNVVNCX1JYQ1NSX0hfREFUQVRPR0dMRTsNCi0JZWxzZQ0KLQkJY3NyID0gbXVz Yl9yZWFkdyhlcGlvLCBNVVNCX1RYQ1NSKSAmIE1VU0JfVFhDU1JfSF9EQVRBVE9HR0xFOw0KLQ0K LQl1c2Jfc2V0dG9nZ2xlKHVyYi0+ZGV2LCBxaC0+ZXBudW0sICFpc19pbiwgY3NyID8gMSA6IDAp Ow0KLX0NCi0NCiAvKg0KICAqIEFkdmFuY2UgdGhpcyBoYXJkd2FyZSBlbmRwb2ludCdzIHF1ZXVl LCBjb21wbGV0aW5nIHRoZSBzcGVjaWZpZWQgVVJCIGFuZA0KICAqIGFkdmFuY2luZyB0byBlaXRo ZXIgdGhlIG5leHQgVVJCIHF1ZXVlZCB0byB0aGF0IHFoLCBvciBlbHNlIGludmFsaWRhdGluZw0K QEAgLTMyMCw2ICszMDAsNyBAQCBzdGF0aWMgdm9pZCBtdXNiX2FkdmFuY2Vfc2NoZWR1bGUoc3Ry dWN0IG11c2IgKm11c2IsIHN0cnVjdCB1cmIgKnVyYiwNCiAJc3RydWN0IG11c2JfaHdfZXAJKmVw ID0gcWgtPmh3X2VwOw0KIAlpbnQJCQlyZWFkeSA9IHFoLT5pc19yZWFkeTsNCiAJaW50CQkJc3Rh dHVzOw0KKwl1MTYJCQl0b2dnbGU7DQogDQogCXN0YXR1cyA9ICh1cmItPnN0YXR1cyA9PSAtRUlO UFJPR1JFU1MpID8gMCA6IHVyYi0+c3RhdHVzOw0KIA0KQEAgLTMyNyw3ICszMDgsOCBAQCBzdGF0 aWMgdm9pZCBtdXNiX2FkdmFuY2Vfc2NoZWR1bGUoc3RydWN0IG11c2IgKm11c2IsIHN0cnVjdCB1 cmIgKnVyYiwNCiAJc3dpdGNoIChxaC0+dHlwZSkgew0KIAljYXNlIFVTQl9FTkRQT0lOVF9YRkVS X0JVTEs6DQogCWNhc2UgVVNCX0VORFBPSU5UX1hGRVJfSU5UOg0KLQkJbXVzYl9zYXZlX3RvZ2ds ZShxaCwgaXNfaW4sIHVyYik7DQorCQl0b2dnbGUgPSBtdXNiLT5pby5nZXRfdG9nZ2xlKHFoLCAh aXNfaW4pOw0KKwkJdXNiX3NldHRvZ2dsZSh1cmItPmRldiwgcWgtPmVwbnVtLCAhaXNfaW4sIHRv Z2dsZSA/IDEgOiAwKTsNCiAJCWJyZWFrOw0KIAljYXNlIFVTQl9FTkRQT0lOVF9YRkVSX0lTT0M6 DQogCQlpZiAoc3RhdHVzID09IDAgJiYgdXJiLT5lcnJvcl9jb3VudCkNCkBAIC03NzIsMTMgKzc1 NCw4IEBAIHN0YXRpYyB2b2lkIG11c2JfZXBfcHJvZ3JhbShzdHJ1Y3QgbXVzYiAqbXVzYiwgdTgg ZXBudW0sDQogCQkJCQkpOw0KIAkJCWNzciB8PSBNVVNCX1RYQ1NSX01PREU7DQogDQotCQkJaWYg KCFod19lcC0+dHhfZG91YmxlX2J1ZmZlcmVkKSB7DQotCQkJCWlmICh1c2JfZ2V0dG9nZ2xlKHVy Yi0+ZGV2LCBxaC0+ZXBudW0sIDEpKQ0KLQkJCQkJY3NyIHw9IE1VU0JfVFhDU1JfSF9XUl9EQVRB VE9HR0xFDQotCQkJCQkJfCBNVVNCX1RYQ1NSX0hfREFUQVRPR0dMRTsNCi0JCQkJZWxzZQ0KLQkJ CQkJY3NyIHw9IE1VU0JfVFhDU1JfQ0xSREFUQVRPRzsNCi0JCQl9DQorCQkJaWYgKCFod19lcC0+ dHhfZG91YmxlX2J1ZmZlcmVkKQ0KKwkJCQljc3IgfD0gbXVzYi0+aW8uc2V0X3RvZ2dsZShxaCwg aXNfb3V0LCB1cmIpOw0KIA0KIAkJCW11c2Jfd3JpdGV3KGVwaW8sIE1VU0JfVFhDU1IsIGNzcik7 DQogCQkJLyogUkVWSVNJVCBtYXkgbmVlZCB0byBjbGVhciBGTFVTSEZJRk8gLi4uICovDQpAQCAt ODYwLDE3ICs4MzcsMTIgQEAgc3RhdGljIHZvaWQgbXVzYl9lcF9wcm9ncmFtKHN0cnVjdCBtdXNi ICptdXNiLCB1OCBlcG51bSwNCiANCiAJLyogSU4vcmVjZWl2ZSAqLw0KIAl9IGVsc2Ugew0KLQkJ dTE2CWNzcjsNCisJCXUxNiBjc3IgPSAwOw0KIA0KIAkJaWYgKGh3X2VwLT5yeF9yZWluaXQpIHsN CiAJCQltdXNiX3J4X3JlaW5pdChtdXNiLCBxaCwgZXBudW0pOw0KKwkJCWNzciB8PSBtdXNiLT5p by5zZXRfdG9nZ2xlKHFoLCBpc19vdXQsIHVyYik7DQogDQotCQkJLyogaW5pdCBuZXcgc3RhdGU6 IHRvZ2dsZSBhbmQgTllFVCwgbWF5YmUgRE1BIGxhdGVyICovDQotCQkJaWYgKHVzYl9nZXR0b2dn bGUodXJiLT5kZXYsIHFoLT5lcG51bSwgMCkpDQotCQkJCWNzciA9IE1VU0JfUlhDU1JfSF9XUl9E QVRBVE9HR0xFDQotCQkJCQl8IE1VU0JfUlhDU1JfSF9EQVRBVE9HR0xFOw0KLQkJCWVsc2UNCi0J CQkJY3NyID0gMDsNCiAJCQlpZiAocWgtPnR5cGUgPT0gVVNCX0VORFBPSU5UX1hGRVJfSU5UKQ0K IAkJCQljc3IgfD0gTVVTQl9SWENTUl9ESVNOWUVUOw0KIA0KQEAgLTkzMyw2ICs5MDUsNyBAQCBz dGF0aWMgdm9pZCBtdXNiX2J1bGtfbmFrX3RpbWVvdXQoc3RydWN0IG11c2IgKm11c2IsIHN0cnVj dCBtdXNiX2h3X2VwICplcCwNCiAJdm9pZCBfX2lvbWVtCQkqZXBpbyA9IGVwLT5yZWdzOw0KIAlz dHJ1Y3QgbXVzYl9xaAkJKmN1cl9xaCwgKm5leHRfcWg7DQogCXUxNgkJCXJ4X2NzciwgdHhfY3Ny Ow0KKwl1MTYJCQl0b2dnbGU7DQogDQogCW11c2JfZXBfc2VsZWN0KG1iYXNlLCBlcC0+ZXBudW0p Ow0KIAlpZiAoaXNfaW4pIHsNCkBAIC05NzAsNyArOTQzLDggQEAgc3RhdGljIHZvaWQgbXVzYl9i dWxrX25ha190aW1lb3V0KHN0cnVjdCBtdXNiICptdXNiLCBzdHJ1Y3QgbXVzYl9od19lcCAqZXAs DQogCQkJdXJiLT5hY3R1YWxfbGVuZ3RoICs9IGRtYS0+YWN0dWFsX2xlbjsNCiAJCQlkbWEtPmFj dHVhbF9sZW4gPSAwTDsNCiAJCX0NCi0JCW11c2Jfc2F2ZV90b2dnbGUoY3VyX3FoLCBpc19pbiwg dXJiKTsNCisJCXRvZ2dsZSA9IG11c2ItPmlvLmdldF90b2dnbGUoY3VyX3FoLCAhaXNfaW4pOw0K KwkJdXNiX3NldHRvZ2dsZSh1cmItPmRldiwgY3VyX3FoLT5lcG51bSwgIWlzX2luLCB0b2dnbGUg PyAxIDogMCk7DQogDQogCQlpZiAoaXNfaW4pIHsNCiAJCQkvKiBtb3ZlIGN1cl9xaCB0byBlbmQg b2YgcXVldWUgKi8NCmRpZmYgLS1naXQgYS9kcml2ZXJzL3VzYi9tdXNiL211c2JfaW8uaCBiL2Ry aXZlcnMvdXNiL211c2IvbXVzYl9pby5oDQppbmRleCA4MDU4YTU4MDkyY2YuLjgxNzkzMzRmNDA1 YiAxMDA2NDQNCi0tLSBhL2RyaXZlcnMvdXNiL211c2IvbXVzYl9pby5oDQorKysgYi9kcml2ZXJz L3VzYi9tdXNiL211c2JfaW8uaA0KQEAgLTIyLDYgKzIyLDggQEANCiAgKiBAcmVhZF9maWZvOglw bGF0Zm9ybSBzcGVjaWZpYyBmdW5jdGlvbiB0byByZWFkIGZpZm8NCiAgKiBAd3JpdGVfZmlmbzoJ cGxhdGZvcm0gc3BlY2lmaWMgZnVuY3Rpb24gdG8gd3JpdGUgZmlmbw0KICAqIEBidXNjdGxfb2Zm c2V0OiBwbGF0Zm9ybSBzcGVjaWZpYyBmdW5jdGlvbiB0byBnZXQgYnVzY3RsIG9mZnNldA0KKyAq IEBnZXRfdG9nZ2xlOiBwbGF0Zm9ybSBzcGVjaWZpYyBmdW5jdGlvbiB0byBnZXQgdG9nZ2xlDQor ICogQHNldF90b2dnbGU6IHBsYXRmb3JtIHNwZWNpZmljIGZ1bmN0aW9uIHRvIHNldCB0b2dnbGUN CiAgKi8NCiBzdHJ1Y3QgbXVzYl9pbyB7DQogCXUzMgkoKmVwX29mZnNldCkodTggZXBudW0sIHUx NiBvZmZzZXQpOw0KQEAgLTMwLDYgKzMyLDggQEAgc3RydWN0IG11c2JfaW8gew0KIAl2b2lkCSgq cmVhZF9maWZvKShzdHJ1Y3QgbXVzYl9od19lcCAqaHdfZXAsIHUxNiBsZW4sIHU4ICpidWYpOw0K IAl2b2lkCSgqd3JpdGVfZmlmbykoc3RydWN0IG11c2JfaHdfZXAgKmh3X2VwLCB1MTYgbGVuLCBj b25zdCB1OCAqYnVmKTsNCiAJdTMyCSgqYnVzY3RsX29mZnNldCkodTggZXBudW0sIHUxNiBvZmZz ZXQpOw0KKwl1MTYJKCpnZXRfdG9nZ2xlKShzdHJ1Y3QgbXVzYl9xaCAqcWgsIGludCBpc19vdXQp Ow0KKwl1MTYJKCpzZXRfdG9nZ2xlKShzdHJ1Y3QgbXVzYl9xaCAqcWgsIGludCBpc19vdXQsIHN0 cnVjdCB1cmIgKnVyYik7DQogfTsNCiANCiAvKiBEbyBub3QgYWRkIG5ldyBlbnRyaWVzIGhlcmUs IGFkZCB0aGVtIHRoZSBzdHJ1Y3QgbXVzYl9pbyBpbnN0ZWFkICovDQotLSANCjIuMjQuMA0K