Received: by 2002:a25:6193:0:0:0:0:0 with SMTP id v141csp2369162ybb; Mon, 30 Mar 2020 05:03:32 -0700 (PDT) X-Google-Smtp-Source: ADFU+vuqJVlYsbhj8VEIy5itqqeyC/2SQVa+WXb2g5QSVH/LZ+ZfE9lwFxjJ3xBYfzTvG7fSm8YY X-Received: by 2002:aca:a883:: with SMTP id r125mr6986991oie.10.1585569812742; Mon, 30 Mar 2020 05:03:32 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1585569812; cv=none; d=google.com; s=arc-20160816; b=LRWddn5MIBjhKYF9bWrapmqEyazlLmKWeOlCJfBjiP0BVZ7o/ByDaTwMvbcZgsSdeM UDXKLGPFF2t+76TUrVYYAAcQI7TQRS53AI7BcmYmMzN73N+JRP77KGlMlE5pWG3Es/5C w0BDTjgbYq2vMfl95MHt5dQSUikfcp472V8kaJ1WNGRN8iqizsis5rnfQxudP8hEJ99v SdYXaMes8u+1qzmPqwBqHLYt5Z9/LjcIQ1EONP5O+b26FX0QK3Ts9tHOlzNbGD9cAIZZ h2IOgGltBwEuBDmDAPzx0T7X/2CdDeayxjVYwH1KcIsfYWOKEb6kaeHVcBnHMm3dVdKf LKPA== 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=5VxWqiKfBYkTl2ue0aZAVUdgrUF2ST2GV63F0OYzy1A=; b=lBPfv1jNOEzshBc8QUIEJPzDFfDwdC2IFZDBAL10Jnd7JhWPLR3ruu7xetyb6s5hnC rcHG7e9zrhLdI6kmTFmeZYoHSnlGv823J8kawsMeO+U4MPuLYHiZV0XrkNTHKaC8CMmh 9F6XnLJPzOE4Aw8+gUrlkLLOTJgbdSDbJFVA9DzXquZsZnAxAbZbmEaGPcE4lXzwxH3a Ab6Hvu+AqhCTB06BehHvSdAyZyJcxnf6hxcsDbUgrfqnIktgZCdbCPTPCItYWUAMGttX aR/7DI7OJIyLM0o6rlf4LpMlAucHnevLcJcs5G9qlVrGlpuYzXOj3+jXDcHoIf/412WQ OKtw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@mediatek.com header.s=dk header.b=I6D5dxes; 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 h25si1988674otk.120.2020.03.30.05.03.03; Mon, 30 Mar 2020 05:03:32 -0700 (PDT) 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=I6D5dxes; 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 S1730099AbgC3MBB (ORCPT + 99 others); Mon, 30 Mar 2020 08:01:01 -0400 Received: from mailgw02.mediatek.com ([210.61.82.184]:51927 "EHLO mailgw02.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1730007AbgC3MBA (ORCPT ); Mon, 30 Mar 2020 08:01:00 -0400 X-UUID: 2698dd0e06cf437f97d9e87b11c7a2f0-20200330 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=5VxWqiKfBYkTl2ue0aZAVUdgrUF2ST2GV63F0OYzy1A=; b=I6D5dxesLe6B6xuHD7DabF6MJhNZv13BNkDI1exAwzoIFMEKUn52yPe5mSJuqDE7JMtTBKjR17RgXoipUqUdI1VpGwsgP+IpfY99nyutYFaeYf9Idqo4SGQtJOZBTlPwF2xMG5Z+TXsUnqe6e/Jxb30SUri8Sul9R8IoZVtSDzM=; X-UUID: 2698dd0e06cf437f97d9e87b11c7a2f0-20200330 Received: from mtkcas07.mediatek.inc [(172.21.101.84)] by mailgw02.mediatek.com (envelope-from ) (Cellopoint E-mail Firewall v4.1.10 Build 0809 with TLS) with ESMTP id 67303543; Mon, 30 Mar 2020 20:00:52 +0800 Received: from mtkcas07.mediatek.inc (172.21.101.84) by mtkmbs02n2.mediatek.inc (172.21.101.101) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Mon, 30 Mar 2020 20:00:46 +0800 Received: from mtkswgap22.mediatek.inc (172.21.77.33) by mtkcas07.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1395.4 via Frontend Transport; Mon, 30 Mar 2020 20:00:48 +0800 From: To: CC: , , , , , Light Hsieh Subject: [PATCH v5 1/2] pinctrl: mediatek: make MediaTek pinctrl v2 driver ready for buidling loadable module Date: Mon, 30 Mar 2020 20:00:47 +0800 Message-ID: <1585569648-14017-2-git-send-email-light.hsieh@mediatek.com> X-Mailer: git-send-email 1.8.1.1.dirty In-Reply-To: <1585569648-14017-1-git-send-email-light.hsieh@mediatek.com> References: <1585569648-14017-1-git-send-email-light.hsieh@mediatek.com> MIME-Version: 1.0 Content-Type: text/plain X-TM-SNTS-SMTP: 8503A35FA992A58839846C5EB96565D5A3268487D2EDCDF08D6EB35E7119BBC42000: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 RnJvbTogTGlnaHQgSHNpZWggPGxpZ2h0LmhzaWVoQG1lZGlhdGVrLmNvbT4NCg0KSW4gdGhlIGZ1 dHVyZSB3ZSB3YW50IHRvIGJlIGFibGUgdG8gYnVpbGQgdGhlIE1lZGlhVGVrIHBpbmN0cmwgZHJp dmVyLA0KYmFzZWQgb24gcGFyaXMsIGFzIGtlcm5lbCBtb2R1bGUuIFRoaXMgcGF0Y2ggYWxsb3dz IHBpbmN0cmwtcGFyaXMuYywgdGhlDQpleHRlcm5hbCBpbnRlcnJ1cHQgY29udHJvbGxlciBtdGst ZWludC5jLCBhbmQgcGluY3RybC1tdGstY29tbW9uLXYyLmMgdG8NCmJlIGxvYWRhYmxlIGFzIG1v ZHVsZS4NCg0KU2lnbmVkLW9mZi1ieTogTGlnaHQgSHNpZWggPGxpZ2h0LmhzaWVoQG1lZGlhdGVr LmNvbT4NClJldmlld2VkLWJ5OiBNYXR0aGlhcyBCcnVnZ2VyIDxtYXR0aGlhcy5iZ2dAZ21haWwu Y29tPg0KLS0tDQogZHJpdmVycy9waW5jdHJsL21lZGlhdGVrL0tjb25maWcgICAgICAgICAgICAg ICAgIHwgMTEgKysrKysrKysrLS0NCiBkcml2ZXJzL3BpbmN0cmwvbWVkaWF0ZWsvTWFrZWZpbGUg ICAgICAgICAgICAgICAgfCAgNSArKystLQ0KIGRyaXZlcnMvcGluY3RybC9tZWRpYXRlay9tdGst ZWludC5jICAgICAgICAgICAgICB8ICA5ICsrKysrKysrKw0KIGRyaXZlcnMvcGluY3RybC9tZWRp YXRlay9waW5jdHJsLW10ay1jb21tb24tdjIuYyB8IDI0ICsrKysrKysrKysrKysrKysrKysrKysr Kw0KIGRyaXZlcnMvcGluY3RybC9tZWRpYXRlay9waW5jdHJsLXBhcmlzLmMgICAgICAgICB8ICA2 ICsrKysrKw0KIDUgZmlsZXMgY2hhbmdlZCwgNTEgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMo LSkNCg0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvcGluY3RybC9tZWRpYXRlay9LY29uZmlnIGIvZHJp dmVycy9waW5jdHJsL21lZGlhdGVrL0tjb25maWcNCmluZGV4IDcwMWY5YWYuLjU1MWFjNzEgMTAw NjQ0DQotLS0gYS9kcml2ZXJzL3BpbmN0cmwvbWVkaWF0ZWsvS2NvbmZpZw0KKysrIGIvZHJpdmVy cy9waW5jdHJsL21lZGlhdGVrL0tjb25maWcNCkBAIC0zLDEwICszLDEyIEBAIG1lbnUgIk1lZGlh VGVrIHBpbmN0cmwgZHJpdmVycyINCiAJZGVwZW5kcyBvbiBBUkNIX01FRElBVEVLIHx8IENPTVBJ TEVfVEVTVA0KIA0KIGNvbmZpZyBFSU5UX01USw0KLQlib29sICJNZWRpYVRlayBFeHRlcm5hbCBJ bnRlcnJ1cHQgU3VwcG9ydCINCisJdHJpc3RhdGUgIk1lZGlhVGVrIEV4dGVybmFsIEludGVycnVw dCBTdXBwb3J0Ig0KIAlkZXBlbmRzIG9uIFBJTkNUUkxfTVRLIHx8IFBJTkNUUkxfTVRLX01PT1JF IHx8IFBJTkNUUkxfTVRLX1BBUklTIHx8IENPTVBJTEVfVEVTVA0KIAlzZWxlY3QgR1BJT0xJQg0K IAlzZWxlY3QgSVJRX0RPTUFJTg0KKwlkZWZhdWx0IHkgaWYgUElOQ1RSTF9NVEsgfHwgUElOQ1RS TF9NVEtfTU9PUkUNCisJZGVmYXVsdCBQSU5DVFJMX01US19QQVJJUw0KIA0KIGNvbmZpZyBQSU5D VFJMX01USw0KIAlib29sDQpAQCAtMTcsNiArMTksOSBAQCBjb25maWcgUElOQ1RSTF9NVEsNCiAJ c2VsZWN0IEVJTlRfTVRLDQogCXNlbGVjdCBPRl9HUElPDQogDQorY29uZmlnIFBJTkNUUkxfTVRL X1YyDQorCXRyaXN0YXRlDQorDQogY29uZmlnIFBJTkNUUkxfTVRLX01PT1JFDQogCWJvb2wNCiAJ ZGVwZW5kcyBvbiBPRg0KQEAgLTI1LDE1ICszMCwxNyBAQCBjb25maWcgUElOQ1RSTF9NVEtfTU9P UkUNCiAJc2VsZWN0IEdFTkVSSUNfUElOTVVYX0ZVTkNUSU9OUw0KIAlzZWxlY3QgR1BJT0xJQg0K IAlzZWxlY3QgT0ZfR1BJTw0KKwlzZWxlY3QgUElOQ1RSTF9NVEtfVjINCiANCiBjb25maWcgUElO Q1RSTF9NVEtfUEFSSVMNCi0JYm9vbA0KKwl0cmlzdGF0ZQ0KIAlkZXBlbmRzIG9uIE9GDQogCXNl bGVjdCBQSU5NVVgNCiAJc2VsZWN0IEdFTkVSSUNfUElOQ09ORg0KIAlzZWxlY3QgR1BJT0xJQg0K IAlzZWxlY3QgRUlOVF9NVEsNCiAJc2VsZWN0IE9GX0dQSU8NCisJc2VsZWN0IFBJTkNUUkxfTVRL X1YyDQogDQogIyBGb3IgQVJNdjcgU29Dcw0KIGNvbmZpZyBQSU5DVFJMX01UMjcwMQ0KZGlmZiAt LWdpdCBhL2RyaXZlcnMvcGluY3RybC9tZWRpYXRlay9NYWtlZmlsZSBiL2RyaXZlcnMvcGluY3Ry bC9tZWRpYXRlay9NYWtlZmlsZQ0KaW5kZXggYTc0MzI1YS4uNGI3MTMyOCAxMDA2NDQNCi0tLSBh L2RyaXZlcnMvcGluY3RybC9tZWRpYXRlay9NYWtlZmlsZQ0KKysrIGIvZHJpdmVycy9waW5jdHJs L21lZGlhdGVrL01ha2VmaWxlDQpAQCAtMiw4ICsyLDkgQEANCiAjIENvcmUNCiBvYmotJChDT05G SUdfRUlOVF9NVEspCQkrPSBtdGstZWludC5vDQogb2JqLSQoQ09ORklHX1BJTkNUUkxfTVRLKQkr PSBwaW5jdHJsLW10ay1jb21tb24ubw0KLW9iai0kKENPTkZJR19QSU5DVFJMX01US19NT09SRSkg Kz0gcGluY3RybC1tb29yZS5vIHBpbmN0cmwtbXRrLWNvbW1vbi12Mi5vDQotb2JqLSQoQ09ORklH X1BJTkNUUkxfTVRLX1BBUklTKSArPSBwaW5jdHJsLXBhcmlzLm8gcGluY3RybC1tdGstY29tbW9u LXYyLm8NCitvYmotJChDT05GSUdfUElOQ1RSTF9NVEtfVjIpCSs9IHBpbmN0cmwtbXRrLWNvbW1v bi12Mi5vDQorb2JqLSQoQ09ORklHX1BJTkNUUkxfTVRLX01PT1JFKSArPSBwaW5jdHJsLW1vb3Jl Lm8NCitvYmotJChDT05GSUdfUElOQ1RSTF9NVEtfUEFSSVMpICs9IHBpbmN0cmwtcGFyaXMubw0K IA0KICMgU29DIERyaXZlcnMNCiBvYmotJChDT05GSUdfUElOQ1RSTF9NVDI3MDEpCSs9IHBpbmN0 cmwtbXQyNzAxLm8NCmRpZmYgLS1naXQgYS9kcml2ZXJzL3BpbmN0cmwvbWVkaWF0ZWsvbXRrLWVp bnQuYyBiL2RyaXZlcnMvcGluY3RybC9tZWRpYXRlay9tdGstZWludC5jDQppbmRleCA3ZTUyNmJj Zi4uMjI3MzZmNiAxMDA2NDQNCi0tLSBhL2RyaXZlcnMvcGluY3RybC9tZWRpYXRlay9tdGstZWlu dC5jDQorKysgYi9kcml2ZXJzL3BpbmN0cmwvbWVkaWF0ZWsvbXRrLWVpbnQuYw0KQEAgLTE1LDYg KzE1LDcgQEANCiAjaW5jbHVkZSA8bGludXgvaW8uaD4NCiAjaW5jbHVkZSA8bGludXgvaXJxY2hp cC9jaGFpbmVkX2lycS5oPg0KICNpbmNsdWRlIDxsaW51eC9pcnFkb21haW4uaD4NCisjaW5jbHVk ZSA8bGludXgvbW9kdWxlLmg+DQogI2luY2x1ZGUgPGxpbnV4L29mX2lycS5oPg0KICNpbmNsdWRl IDxsaW51eC9wbGF0Zm9ybV9kZXZpY2UuaD4NCiANCkBAIC0zNzksNiArMzgwLDcgQEAgaW50IG10 a19laW50X2RvX3N1c3BlbmQoc3RydWN0IG10a19laW50ICplaW50KQ0KIA0KIAlyZXR1cm4gMDsN CiB9DQorRVhQT1JUX1NZTUJPTF9HUEwobXRrX2VpbnRfZG9fc3VzcGVuZCk7DQogDQogaW50IG10 a19laW50X2RvX3Jlc3VtZShzdHJ1Y3QgbXRrX2VpbnQgKmVpbnQpDQogew0KQEAgLTM4Niw2ICsz ODgsNyBAQCBpbnQgbXRrX2VpbnRfZG9fcmVzdW1lKHN0cnVjdCBtdGtfZWludCAqZWludCkNCiAN CiAJcmV0dXJuIDA7DQogfQ0KK0VYUE9SVF9TWU1CT0xfR1BMKG10a19laW50X2RvX3Jlc3VtZSk7 DQogDQogaW50IG10a19laW50X3NldF9kZWJvdW5jZShzdHJ1Y3QgbXRrX2VpbnQgKmVpbnQsIHVu c2lnbmVkIGxvbmcgZWludF9udW0sDQogCQkJICB1bnNpZ25lZCBpbnQgZGVib3VuY2UpDQpAQCAt NDQwLDYgKzQ0Myw3IEBAIGludCBtdGtfZWludF9zZXRfZGVib3VuY2Uoc3RydWN0IG10a19laW50 ICplaW50LCB1bnNpZ25lZCBsb25nIGVpbnRfbnVtLA0KIA0KIAlyZXR1cm4gMDsNCiB9DQorRVhQ T1JUX1NZTUJPTF9HUEwobXRrX2VpbnRfc2V0X2RlYm91bmNlKTsNCiANCiBpbnQgbXRrX2VpbnRf ZmluZF9pcnEoc3RydWN0IG10a19laW50ICplaW50LCB1bnNpZ25lZCBsb25nIGVpbnRfbikNCiB7 DQpAQCAtNDUxLDYgKzQ1NSw3IEBAIGludCBtdGtfZWludF9maW5kX2lycShzdHJ1Y3QgbXRrX2Vp bnQgKmVpbnQsIHVuc2lnbmVkIGxvbmcgZWludF9uKQ0KIA0KIAlyZXR1cm4gaXJxOw0KIH0NCitF WFBPUlRfU1lNQk9MX0dQTChtdGtfZWludF9maW5kX2lycSk7DQogDQogaW50IG10a19laW50X2Rv X2luaXQoc3RydWN0IG10a19laW50ICplaW50KQ0KIHsNCkBAIC00OTUsMyArNTAwLDcgQEAgaW50 IG10a19laW50X2RvX2luaXQoc3RydWN0IG10a19laW50ICplaW50KQ0KIA0KIAlyZXR1cm4gMDsN CiB9DQorRVhQT1JUX1NZTUJPTF9HUEwobXRrX2VpbnRfZG9faW5pdCk7DQorDQorTU9EVUxFX0xJ Q0VOU0UoIkdQTCB2MiIpOw0KK01PRFVMRV9ERVNDUklQVElPTigiTWVkaWFUZWsgRUlOVCBEcml2 ZXIiKTsNCmRpZmYgLS1naXQgYS9kcml2ZXJzL3BpbmN0cmwvbWVkaWF0ZWsvcGluY3RybC1tdGst Y29tbW9uLXYyLmMgYi9kcml2ZXJzL3BpbmN0cmwvbWVkaWF0ZWsvcGluY3RybC1tdGstY29tbW9u LXYyLmMNCmluZGV4IDFkYTk0MjUuLjU2M2I2NjIgMTAwNjQ0DQotLS0gYS9kcml2ZXJzL3BpbmN0 cmwvbWVkaWF0ZWsvcGluY3RybC1tdGstY29tbW9uLXYyLmMNCisrKyBiL2RyaXZlcnMvcGluY3Ry bC9tZWRpYXRlay9waW5jdHJsLW10ay1jb21tb24tdjIuYw0KQEAgLTEyLDYgKzEyLDcgQEANCiAj aW5jbHVkZSA8bGludXgvZ3Bpby9kcml2ZXIuaD4NCiAjaW5jbHVkZSA8bGludXgvcGxhdGZvcm1f ZGV2aWNlLmg+DQogI2luY2x1ZGUgPGxpbnV4L2lvLmg+DQorI2luY2x1ZGUgPGxpbnV4L21vZHVs ZS5oPg0KICNpbmNsdWRlIDxsaW51eC9vZl9pcnEuaD4NCiANCiAjaW5jbHVkZSAibXRrLWVpbnQu aCINCkBAIC0yMDYsNiArMjA3LDcgQEAgaW50IG10a19od19zZXRfdmFsdWUoc3RydWN0IG10a19w aW5jdHJsICpodywgY29uc3Qgc3RydWN0IG10a19waW5fZGVzYyAqZGVzYywNCiANCiAJcmV0dXJu IDA7DQogfQ0KK0VYUE9SVF9TWU1CT0xfR1BMKG10a19od19zZXRfdmFsdWUpOw0KIA0KIGludCBt dGtfaHdfZ2V0X3ZhbHVlKHN0cnVjdCBtdGtfcGluY3RybCAqaHcsIGNvbnN0IHN0cnVjdCBtdGtf cGluX2Rlc2MgKmRlc2MsDQogCQkgICAgIGludCBmaWVsZCwgaW50ICp2YWx1ZSkNCkBAIC0yMjUs NiArMjI3LDcgQEAgaW50IG10a19od19nZXRfdmFsdWUoc3RydWN0IG10a19waW5jdHJsICpodywg Y29uc3Qgc3RydWN0IG10a19waW5fZGVzYyAqZGVzYywNCiANCiAJcmV0dXJuIDA7DQogfQ0KK0VY UE9SVF9TWU1CT0xfR1BMKG10a19od19nZXRfdmFsdWUpOw0KIA0KIHN0YXRpYyBpbnQgbXRrX3h0 X2ZpbmRfZWludF9udW0oc3RydWN0IG10a19waW5jdHJsICpodywgdW5zaWduZWQgbG9uZyBlaW50 X24pDQogew0KQEAgLTM2Myw2ICszNjYsNyBAQCBpbnQgbXRrX2J1aWxkX2VpbnQoc3RydWN0IG10 a19waW5jdHJsICpodywgc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikNCiANCiAJcmV0dXJu IG10a19laW50X2RvX2luaXQoaHctPmVpbnQpOw0KIH0NCitFWFBPUlRfU1lNQk9MX0dQTChtdGtf YnVpbGRfZWludCk7DQogDQogLyogUmV2aXNpb24gMCAqLw0KIGludCBtdGtfcGluY29uZl9iaWFz X2Rpc2FibGVfc2V0KHN0cnVjdCBtdGtfcGluY3RybCAqaHcsDQpAQCAtMzgyLDYgKzM4Niw3IEBA IGludCBtdGtfcGluY29uZl9iaWFzX2Rpc2FibGVfc2V0KHN0cnVjdCBtdGtfcGluY3RybCAqaHcs DQogDQogCXJldHVybiAwOw0KIH0NCitFWFBPUlRfU1lNQk9MX0dQTChtdGtfcGluY29uZl9iaWFz X2Rpc2FibGVfc2V0KTsNCiANCiBpbnQgbXRrX3BpbmNvbmZfYmlhc19kaXNhYmxlX2dldChzdHJ1 Y3QgbXRrX3BpbmN0cmwgKmh3LA0KIAkJCQkgY29uc3Qgc3RydWN0IG10a19waW5fZGVzYyAqZGVz YywgaW50ICpyZXMpDQpAQCAtNDA0LDYgKzQwOSw3IEBAIGludCBtdGtfcGluY29uZl9iaWFzX2Rp c2FibGVfZ2V0KHN0cnVjdCBtdGtfcGluY3RybCAqaHcsDQogDQogCXJldHVybiAwOw0KIH0NCitF WFBPUlRfU1lNQk9MX0dQTChtdGtfcGluY29uZl9iaWFzX2Rpc2FibGVfZ2V0KTsNCiANCiBpbnQg bXRrX3BpbmNvbmZfYmlhc19zZXQoc3RydWN0IG10a19waW5jdHJsICpodywNCiAJCQkgY29uc3Qg c3RydWN0IG10a19waW5fZGVzYyAqZGVzYywgYm9vbCBwdWxsdXApDQpAQCAtNDIzLDYgKzQyOSw3 IEBAIGludCBtdGtfcGluY29uZl9iaWFzX3NldChzdHJ1Y3QgbXRrX3BpbmN0cmwgKmh3LA0KIA0K IAlyZXR1cm4gMDsNCiB9DQorRVhQT1JUX1NZTUJPTF9HUEwobXRrX3BpbmNvbmZfYmlhc19zZXQp Ow0KIA0KIGludCBtdGtfcGluY29uZl9iaWFzX2dldChzdHJ1Y3QgbXRrX3BpbmN0cmwgKmh3LA0K IAkJCSBjb25zdCBzdHJ1Y3QgbXRrX3Bpbl9kZXNjICpkZXNjLCBib29sIHB1bGx1cCwgaW50ICpy ZXMpDQpAQCAtNDQyLDYgKzQ0OSw3IEBAIGludCBtdGtfcGluY29uZl9iaWFzX2dldChzdHJ1Y3Qg bXRrX3BpbmN0cmwgKmh3LA0KIA0KIAlyZXR1cm4gMDsNCiB9DQorRVhQT1JUX1NZTUJPTF9HUEwo bXRrX3BpbmNvbmZfYmlhc19nZXQpOw0KIA0KIC8qIFJldmlzaW9uIDEgKi8NCiBpbnQgbXRrX3Bp bmNvbmZfYmlhc19kaXNhYmxlX3NldF9yZXYxKHN0cnVjdCBtdGtfcGluY3RybCAqaHcsDQpAQCAt NDU2LDYgKzQ2NCw3IEBAIGludCBtdGtfcGluY29uZl9iaWFzX2Rpc2FibGVfc2V0X3JldjEoc3Ry dWN0IG10a19waW5jdHJsICpodywNCiANCiAJcmV0dXJuIDA7DQogfQ0KK0VYUE9SVF9TWU1CT0xf R1BMKG10a19waW5jb25mX2JpYXNfZGlzYWJsZV9zZXRfcmV2MSk7DQogDQogaW50IG10a19waW5j b25mX2JpYXNfZGlzYWJsZV9nZXRfcmV2MShzdHJ1Y3QgbXRrX3BpbmN0cmwgKmh3LA0KIAkJCQkg ICAgICBjb25zdCBzdHJ1Y3QgbXRrX3Bpbl9kZXNjICpkZXNjLCBpbnQgKnJlcykNCkBAIC00NzMs NiArNDgyLDcgQEAgaW50IG10a19waW5jb25mX2JpYXNfZGlzYWJsZV9nZXRfcmV2MShzdHJ1Y3Qg bXRrX3BpbmN0cmwgKmh3LA0KIA0KIAlyZXR1cm4gMDsNCiB9DQorRVhQT1JUX1NZTUJPTF9HUEwo bXRrX3BpbmNvbmZfYmlhc19kaXNhYmxlX2dldF9yZXYxKTsNCiANCiBpbnQgbXRrX3BpbmNvbmZf Ymlhc19zZXRfcmV2MShzdHJ1Y3QgbXRrX3BpbmN0cmwgKmh3LA0KIAkJCSAgICAgIGNvbnN0IHN0 cnVjdCBtdGtfcGluX2Rlc2MgKmRlc2MsIGJvb2wgcHVsbHVwKQ0KQEAgLTQ5Miw2ICs1MDIsNyBA QCBpbnQgbXRrX3BpbmNvbmZfYmlhc19zZXRfcmV2MShzdHJ1Y3QgbXRrX3BpbmN0cmwgKmh3LA0K IA0KIAlyZXR1cm4gMDsNCiB9DQorRVhQT1JUX1NZTUJPTF9HUEwobXRrX3BpbmNvbmZfYmlhc19z ZXRfcmV2MSk7DQogDQogaW50IG10a19waW5jb25mX2JpYXNfZ2V0X3JldjEoc3RydWN0IG10a19w aW5jdHJsICpodywNCiAJCQkgICAgICBjb25zdCBzdHJ1Y3QgbXRrX3Bpbl9kZXNjICpkZXNjLCBi b29sIHB1bGx1cCwNCkBAIC01MTcsNiArNTI4LDcgQEAgaW50IG10a19waW5jb25mX2JpYXNfZ2V0 X3JldjEoc3RydWN0IG10a19waW5jdHJsICpodywNCiANCiAJcmV0dXJuIDA7DQogfQ0KK0VYUE9S VF9TWU1CT0xfR1BMKG10a19waW5jb25mX2JpYXNfc2V0X3JldjEpOw0KIA0KIC8qIENvbWJvIGZv ciB0aGUgZm9sbG93aW5nIHB1bGwgcmVnaXN0ZXIgdHlwZToNCiAgKiAxLiBQVSArIFBEDQpAQCAt NzE3LDYgKzcyOSw3IEBAIGludCBtdGtfcGluY29uZl9iaWFzX3NldF9jb21ibyhzdHJ1Y3QgbXRr X3BpbmN0cmwgKmh3LA0KIG91dDoNCiAJcmV0dXJuIGVycjsNCiB9DQorRVhQT1JUX1NZTUJPTF9H UEwobXRrX3BpbmNvbmZfYmlhc19zZXRfY29tYm8pOw0KIA0KIGludCBtdGtfcGluY29uZl9iaWFz X2dldF9jb21ibyhzdHJ1Y3QgbXRrX3BpbmN0cmwgKmh3LA0KIAkJCSAgICAgIGNvbnN0IHN0cnVj dCBtdGtfcGluX2Rlc2MgKmRlc2MsDQpAQCAtNzM3LDYgKzc1MCw3IEBAIGludCBtdGtfcGluY29u Zl9iaWFzX2dldF9jb21ibyhzdHJ1Y3QgbXRrX3BpbmN0cmwgKmh3LA0KIG91dDoNCiAJcmV0dXJu IGVycjsNCiB9DQorRVhQT1JUX1NZTUJPTF9HUEwobXRrX3BpbmNvbmZfYmlhc19nZXRfY29tYm8p Ow0KIA0KIC8qIFJldmlzaW9uIDAgKi8NCiBpbnQgbXRrX3BpbmNvbmZfZHJpdmVfc2V0KHN0cnVj dCBtdGtfcGluY3RybCAqaHcsDQpAQCAtNzY2LDYgKzc4MCw3IEBAIGludCBtdGtfcGluY29uZl9k cml2ZV9zZXQoc3RydWN0IG10a19waW5jdHJsICpodywNCiANCiAJcmV0dXJuIGVycjsNCiB9DQor RVhQT1JUX1NZTUJPTF9HUEwobXRrX3BpbmNvbmZfZHJpdmVfc2V0KTsNCiANCiBpbnQgbXRrX3Bp bmNvbmZfZHJpdmVfZ2V0KHN0cnVjdCBtdGtfcGluY3RybCAqaHcsDQogCQkJICBjb25zdCBzdHJ1 Y3QgbXRrX3Bpbl9kZXNjICpkZXNjLCBpbnQgKnZhbCkNCkBAIC03OTAsNiArODA1LDcgQEAgaW50 IG10a19waW5jb25mX2RyaXZlX2dldChzdHJ1Y3QgbXRrX3BpbmN0cmwgKmh3LA0KIA0KIAlyZXR1 cm4gMDsNCiB9DQorRVhQT1JUX1NZTUJPTF9HUEwobXRrX3BpbmNvbmZfZHJpdmVfZ2V0KTsNCiAN CiAvKiBSZXZpc2lvbiAxICovDQogaW50IG10a19waW5jb25mX2RyaXZlX3NldF9yZXYxKHN0cnVj dCBtdGtfcGluY3RybCAqaHcsDQpAQCAtODExLDYgKzgyNyw3IEBAIGludCBtdGtfcGluY29uZl9k cml2ZV9zZXRfcmV2MShzdHJ1Y3QgbXRrX3BpbmN0cmwgKmh3LA0KIA0KIAlyZXR1cm4gZXJyOw0K IH0NCitFWFBPUlRfU1lNQk9MX0dQTChtdGtfcGluY29uZl9kcml2ZV9zZXRfcmV2MSk7DQogDQog aW50IG10a19waW5jb25mX2RyaXZlX2dldF9yZXYxKHN0cnVjdCBtdGtfcGluY3RybCAqaHcsDQog CQkJICAgICAgIGNvbnN0IHN0cnVjdCBtdGtfcGluX2Rlc2MgKmRlc2MsIGludCAqdmFsKQ0KQEAg LTgyOCwxOCArODQ1LDIxIEBAIGludCBtdGtfcGluY29uZl9kcml2ZV9nZXRfcmV2MShzdHJ1Y3Qg bXRrX3BpbmN0cmwgKmh3LA0KIA0KIAlyZXR1cm4gMDsNCiB9DQorRVhQT1JUX1NZTUJPTF9HUEwo bXRrX3BpbmNvbmZfZHJpdmVfZ2V0X3JldjEpOw0KIA0KIGludCBtdGtfcGluY29uZl9kcml2ZV9z ZXRfcmF3KHN0cnVjdCBtdGtfcGluY3RybCAqaHcsDQogCQkJICAgICAgIGNvbnN0IHN0cnVjdCBt dGtfcGluX2Rlc2MgKmRlc2MsIHUzMiBhcmcpDQogew0KIAlyZXR1cm4gbXRrX2h3X3NldF92YWx1 ZShodywgZGVzYywgUElOQ1RSTF9QSU5fUkVHX0RSViwgYXJnKTsNCiB9DQorRVhQT1JUX1NZTUJP TF9HUEwobXRrX3BpbmNvbmZfZHJpdmVfc2V0X3Jhdyk7DQogDQogaW50IG10a19waW5jb25mX2Ry aXZlX2dldF9yYXcoc3RydWN0IG10a19waW5jdHJsICpodywNCiAJCQkgICAgICAgY29uc3Qgc3Ry dWN0IG10a19waW5fZGVzYyAqZGVzYywgaW50ICp2YWwpDQogew0KIAlyZXR1cm4gbXRrX2h3X2dl dF92YWx1ZShodywgZGVzYywgUElOQ1RSTF9QSU5fUkVHX0RSViwgdmFsKTsNCiB9DQorRVhQT1JU X1NZTUJPTF9HUEwobXRrX3BpbmNvbmZfZHJpdmVfZ2V0X3Jhdyk7DQogDQogaW50IG10a19waW5j b25mX2Fkdl9wdWxsX3NldChzdHJ1Y3QgbXRrX3BpbmN0cmwgKmh3LA0KIAkJCSAgICAgY29uc3Qg c3RydWN0IG10a19waW5fZGVzYyAqZGVzYywgYm9vbCBwdWxsdXAsDQpAQCAtODgwLDYgKzkwMCw3 IEBAIGludCBtdGtfcGluY29uZl9hZHZfcHVsbF9zZXQoc3RydWN0IG10a19waW5jdHJsICpodywN CiANCiAJcmV0dXJuIGVycjsNCiB9DQorRVhQT1JUX1NZTUJPTF9HUEwobXRrX3BpbmNvbmZfYWR2 X3B1bGxfc2V0KTsNCiANCiBpbnQgbXRrX3BpbmNvbmZfYWR2X3B1bGxfZ2V0KHN0cnVjdCBtdGtf cGluY3RybCAqaHcsDQogCQkJICAgICBjb25zdCBzdHJ1Y3QgbXRrX3Bpbl9kZXNjICpkZXNjLCBi b29sIHB1bGx1cCwNCkBAIC05MjIsNiArOTQzLDcgQEAgaW50IG10a19waW5jb25mX2Fkdl9wdWxs X2dldChzdHJ1Y3QgbXRrX3BpbmN0cmwgKmh3LA0KIA0KIAlyZXR1cm4gMDsNCiB9DQorRVhQT1JU X1NZTUJPTF9HUEwobXRrX3BpbmNvbmZfYWR2X3B1bGxfZ2V0KTsNCiANCiBpbnQgbXRrX3BpbmNv bmZfYWR2X2RyaXZlX3NldChzdHJ1Y3QgbXRrX3BpbmN0cmwgKmh3LA0KIAkJCSAgICAgIGNvbnN0 IHN0cnVjdCBtdGtfcGluX2Rlc2MgKmRlc2MsIHUzMiBhcmcpDQpAQCAtOTQ4LDYgKzk3MCw3IEBA IGludCBtdGtfcGluY29uZl9hZHZfZHJpdmVfc2V0KHN0cnVjdCBtdGtfcGluY3RybCAqaHcsDQog DQogCXJldHVybiBlcnI7DQogfQ0KK0VYUE9SVF9TWU1CT0xfR1BMKG10a19waW5jb25mX2Fkdl9k cml2ZV9zZXQpOw0KIA0KIGludCBtdGtfcGluY29uZl9hZHZfZHJpdmVfZ2V0KHN0cnVjdCBtdGtf cGluY3RybCAqaHcsDQogCQkJICAgICAgY29uc3Qgc3RydWN0IG10a19waW5fZGVzYyAqZGVzYywg dTMyICp2YWwpDQpAQCAtOTcxLDMgKzk5NCw0IEBAIGludCBtdGtfcGluY29uZl9hZHZfZHJpdmVf Z2V0KHN0cnVjdCBtdGtfcGluY3RybCAqaHcsDQogDQogCXJldHVybiAwOw0KIH0NCitFWFBPUlRf U1lNQk9MX0dQTChtdGtfcGluY29uZl9hZHZfZHJpdmVfZ2V0KTsNCmRpZmYgLS1naXQgYS9kcml2 ZXJzL3BpbmN0cmwvbWVkaWF0ZWsvcGluY3RybC1wYXJpcy5jIGIvZHJpdmVycy9waW5jdHJsL21l ZGlhdGVrL3BpbmN0cmwtcGFyaXMuYw0KaW5kZXggODNiZjI5Yy4uODgyM2MwYyAxMDA2NDQNCi0t LSBhL2RyaXZlcnMvcGluY3RybC9tZWRpYXRlay9waW5jdHJsLXBhcmlzLmMNCisrKyBiL2RyaXZl cnMvcGluY3RybC9tZWRpYXRlay9waW5jdHJsLXBhcmlzLmMNCkBAIC0xMCw2ICsxMCw3IEBADQog ICovDQogDQogI2luY2x1ZGUgPGxpbnV4L2dwaW8vZHJpdmVyLmg+DQorI2luY2x1ZGUgPGxpbnV4 L21vZHVsZS5oPg0KICNpbmNsdWRlIDxkdC1iaW5kaW5ncy9waW5jdHJsL210NjV4eC5oPg0KICNp bmNsdWRlICJwaW5jdHJsLXBhcmlzLmgiDQogDQpAQCAtNjMzLDYgKzYzNCw3IEBAIHNzaXplX3Qg bXRrX3BjdHJsX3Nob3dfb25lX3BpbihzdHJ1Y3QgbXRrX3BpbmN0cmwgKmh3LA0KIA0KIAlyZXR1 cm4gbGVuOw0KIH0NCitFWFBPUlRfU1lNQk9MX0dQTChtdGtfcGN0cmxfc2hvd19vbmVfcGluKTsN CiANCiAjZGVmaW5lIFBJTl9EQkdfQlVGX1NaIDk2DQogc3RhdGljIHZvaWQgbXRrX3BjdHJsX2Ri Z19zaG93KHN0cnVjdCBwaW5jdHJsX2RldiAqcGN0bGRldiwgc3RydWN0IHNlcV9maWxlICpzLA0K QEAgLTEwMzcsMyArMTAzOSw3IEBAIHN0YXRpYyBpbnQgbXRrX3BhcmlzX3BpbmN0cmxfcmVzdW1l KHN0cnVjdCBkZXZpY2UgKmRldmljZSkNCiAJLnN1c3BlbmRfbm9pcnEgPSBtdGtfcGFyaXNfcGlu Y3RybF9zdXNwZW5kLA0KIAkucmVzdW1lX25vaXJxID0gbXRrX3BhcmlzX3BpbmN0cmxfcmVzdW1l LA0KIH07DQorRVhQT1JUX1NZTUJPTF9HUEwobXRrX3BhcmlzX3BpbmN0cmxfcHJvYmUpOw0KKw0K K01PRFVMRV9MSUNFTlNFKCJHUEwgdjIiKTsNCitNT0RVTEVfREVTQ1JJUFRJT04oIk1lZGlhVGVr IFBpbmN0cmwgQ29tbW9uIERyaXZlciBWMiBQYXJpcyIpOw0KLS0gDQoxLjguMS4xLmRpcnR5DQo=