From mboxrd@z Thu Jan 1 00:00:00 1970 From: Hans de Goede Subject: [PATCH 04/18] staging: typec: tcpm: Add helpers for exporting current-limit through a psy Date: Sun, 6 Aug 2017 14:35:41 +0200 Message-ID: <20170806123555.5124-5-hdegoede@redhat.com> References: <20170806123555.5124-1-hdegoede@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20170806123555.5124-1-hdegoede@redhat.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: driverdev-devel-bounces@linuxdriverproject.org Sender: "devel" To: Darren Hart , Andy Shevchenko , Wolfram Sang , Sebastian Reichel , Greg Kroah-Hartman , Guenter Roeck , Heikki Krogerus Cc: devel@driverdev.osuosl.org, linux-pm@vger.kernel.org, Tony Lindgren , linux-kernel@vger.kernel.org, platform-driver-x86@vger.kernel.org, Hans de Goede , Liam Breck , linux-i2c@vger.kernel.org List-Id: linux-i2c@vger.kernel.org Tm90IGFsbCB0eXBlLWMgcG9ydC1jb250cm9sbGVyIGNhbiBjb250cm9sIHRoZSBjdXJyZW50LWxp bWl0IGRpcmVjdGx5LAppbiBjYXNlcyB3aGVyZSB0aGUgY3VycmVudCBsaW1pdCBjYW4gbm90IGJl IGNvbnRyb2xsZWQgZGlyZWN0bHkgaXQgbmVlZHMKdG8gYmUgZXhwb3J0ZWQgc28gdGhhdCBhbm90 aGVyIGRyaXZlciAoZS5nLiB0aGUgY2hhcmdlciBkcml2ZXIpIGNhbiBwaWNrCnRoZSBsaW1pdCB1 cCBhbmQgY29uZmlndXJlIHRoZSBzeXN0ZW0gYWNjb3JkaW5nbHkuCgpUaGUgcG93ZXItc3VwcGx5 IHN1YnN5cyBhbHJlYWR5IHByb3ZpZGVzIGluZnJhc3RydWN0dXJlIGZvciB0aGlzLApwb3dlci1z dXBwbHkgZGV2aWNlcyBoYXZlIHRoZSBub3Rpb24gb2YgYmVpbmcgc3VwcGxpZWQgYnkgYW5vdGhl cgpwb3dlci1zdXBwbHkgYW5kIGhhdmUgcHJvcGVydGllcyB0aHJvdWdoIHdoaWNoIHdlIGNhbiBl eHBvcnQgdGhlCmN1cnJlbnQtbGltaXQuCgpUaGlzIGNvbW1pdHMgYWRkcyAyIGhlbHBlciBmdW5j dGlvbnMgZm9yIHVzZSBieSBwb3J0LWNvbnRyb2xsZXIgZHJpdmVycwp3aGljaCB3YW50IHRvIGV4 cG9ydCB0aGUgY3VycmVudC1saW1pdCBpbmZvIGluIHRoaXMgd2F5OgoKaW50IHRjcG1fcmVnaXN0 ZXJfcHN5KHN0cnVjdCBkZXZpY2UgKmRldiwgc3RydWN0IHRjcGNfZGV2ICp0Y3BjLAoJCSAgICAg IGNvbnN0IGNoYXIgKm5hbWUpOwppbnQgdGNwbV9zZXRfY3VycmVudF9saW1pdF9wc3koc3RydWN0 IHRjcGNfZGV2ICp0Y3BjLCB1MzIgbWF4X21hLCB1MzIgbXYpOwoKU2lnbmVkLW9mZi1ieTogSGFu cyBkZSBHb2VkZSA8aGRlZ29lZGVAcmVkaGF0LmNvbT4KLS0tCiBkcml2ZXJzL3N0YWdpbmcvdHlw ZWMvdGNwbS1oZWxwZXJzLmMgfCA2NiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysKIGRyaXZlcnMvc3RhZ2luZy90eXBlYy90Y3BtLmggICAgICAgICB8ICA5ICsrKysrCiAyIGZp bGVzIGNoYW5nZWQsIDc1IGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9kcml2ZXJzL3N0YWdp bmcvdHlwZWMvdGNwbS1oZWxwZXJzLmMgYi9kcml2ZXJzL3N0YWdpbmcvdHlwZWMvdGNwbS1oZWxw ZXJzLmMKaW5kZXggMGM4N2VjOTkzNmUxLi44Zjc2OTk1NzY4NzggMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvc3RhZ2luZy90eXBlYy90Y3BtLWhlbHBlcnMuYworKysgYi9kcml2ZXJzL3N0YWdpbmcvdHlw ZWMvdGNwbS1oZWxwZXJzLmMKQEAgLTIwLDYgKzIwLDYwIEBACiAKICNpbmNsdWRlICJ0Y3BtLmgi CiAKK3N0YXRpYyBpbnQgdGNwbV9wc3lfZ2V0X3Byb3BlcnR5KHN0cnVjdCBwb3dlcl9zdXBwbHkg KnBzeSwKKwkJCQkgZW51bSBwb3dlcl9zdXBwbHlfcHJvcGVydHkgcHNwLAorCQkJCSB1bmlvbiBw b3dlcl9zdXBwbHlfcHJvcHZhbCAqdmFsKQoreworCXN0cnVjdCB0Y3BjX2RldiAqdGNwYyA9IHBv d2VyX3N1cHBseV9nZXRfZHJ2ZGF0YShwc3kpOworCisJc3dpdGNoIChwc3ApIHsKKwljYXNlIFBP V0VSX1NVUFBMWV9QUk9QX1ZPTFRBR0VfTk9XOgorCQl2YWwtPmludHZhbCA9IHRjcGMtPnN1cHBs eV92b2x0YWdlICogMTAwMDsgLyogbVYgLT4gwrVWICovCisJCWJyZWFrOworCWNhc2UgUE9XRVJf U1VQUExZX1BST1BfQ1VSUkVOVF9NQVg6CisJCXZhbC0+aW50dmFsID0gdGNwYy0+Y3VycmVudF9s aW1pdCAqIDEwMDA7IC8qIG1BIC0+IMK1QSAqLworCQlicmVhazsKKwlkZWZhdWx0OgorCQlyZXR1 cm4gLUVOT0RBVEE7CisJfQorCisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBlbnVtIHBvd2VyX3N1 cHBseV9wcm9wZXJ0eSB0Y3BtX3BzeV9wcm9wZXJ0aWVzW10gPSB7CisJUE9XRVJfU1VQUExZX1BS T1BfVk9MVEFHRV9OT1csCisJUE9XRVJfU1VQUExZX1BST1BfQ1VSUkVOVF9NQVgsCit9OworCitp bnQgdGNwbV9yZWdpc3Rlcl9wc3koc3RydWN0IGRldmljZSAqZGV2LCBzdHJ1Y3QgdGNwY19kZXYg KnRjcGMsCisJCSAgICAgIGNvbnN0IGNoYXIgKm5hbWUpCit7CisJc3RydWN0IHBvd2VyX3N1cHBs eV9jb25maWcgcHN5X2NmZyA9IHt9OworCXN0cnVjdCBwb3dlcl9zdXBwbHlfZGVzYyAqZGVzYzsK KwlpbnQgcmV0ID0gMDsKKworCWRlc2MgPSBkZXZtX2t6YWxsb2MoZGV2LCBzaXplb2YoKmRlc2Mp LCBHRlBfS0VSTkVMKTsKKwlpZiAoIWRlc2MpCisJCXJldHVybiAtRU5PTUVNOworCisJZGVzYy0+ bmFtZQkJPSBuYW1lOworCWRlc2MtPnR5cGUJCT0gUE9XRVJfU1VQUExZX1RZUEVfVVNCOworCWRl c2MtPnByb3BlcnRpZXMJPSB0Y3BtX3BzeV9wcm9wZXJ0aWVzOworCWRlc2MtPm51bV9wcm9wZXJ0 aWVzCT0gQVJSQVlfU0laRSh0Y3BtX3BzeV9wcm9wZXJ0aWVzKTsKKwlkZXNjLT5nZXRfcHJvcGVy dHkJPSB0Y3BtX3BzeV9nZXRfcHJvcGVydHk7CisJcHN5X2NmZy5kcnZfZGF0YQk9IHRjcGM7CisK Kwl0Y3BjLT5wc3kgPSBkZXZtX3Bvd2VyX3N1cHBseV9yZWdpc3RlcihkZXYsIGRlc2MsICZwc3lf Y2ZnKTsKKwlpZiAoSVNfRVJSKHRjcGMtPnBzeSkpIHsKKwkJcmV0ID0gUFRSX0VSUih0Y3BjLT5w c3kpOworCQl0Y3BjLT5wc3kgPSBOVUxMOworCQlkZXZfZXJyKGRldiwgIkVycm9yIHJlZ2lzdGVy aW5nIHBvd2VyLXN1cHBseTogJWRcbiIsIHJldCk7CisJfQorCisJcmV0dXJuIHJldDsKK30KK0VY UE9SVF9TWU1CT0xfR1BMKHRjcG1fcmVnaXN0ZXJfcHN5KTsKKwogLyogR2VuZXJpYyAoaGVscGVy KSBpbXBsZW1lbnRhdGlvbnMgZm9yIHNvbWUgdGNwY19kZXYgY2FsbGJhY2tzICovCiBpbnQgdGNw bV9nZXRfdXNiMl9jdXJyZW50X2xpbWl0X2V4dGNvbihzdHJ1Y3QgdGNwY19kZXYgKnRjcGMpCiB7 CkBAIC01OCwzICsxMTIsMTUgQEAgaW50IHRjcG1fZ2V0X3VzYjJfY3VycmVudF9saW1pdF9leHRj b24oc3RydWN0IHRjcGNfZGV2ICp0Y3BjKQogCXJldHVybiBjdXJyZW50X2xpbWl0OwogfQogRVhQ T1JUX1NZTUJPTF9HUEwodGNwbV9nZXRfdXNiMl9jdXJyZW50X2xpbWl0X2V4dGNvbik7CisKK2lu dCB0Y3BtX3NldF9jdXJyZW50X2xpbWl0X3BzeShzdHJ1Y3QgdGNwY19kZXYgKnRjcGMsIHUzMiBt YXhfbWEsIHUzMiBtdikKK3sKKwl0Y3BjLT5zdXBwbHlfdm9sdGFnZSA9IG12OworCXRjcGMtPmN1 cnJlbnRfbGltaXQgPSBtYXhfbWE7CisKKwlpZiAodGNwYy0+cHN5KQorCQlwb3dlcl9zdXBwbHlf Y2hhbmdlZCh0Y3BjLT5wc3kpOworCisJcmV0dXJuIDA7Cit9CitFWFBPUlRfU1lNQk9MX0dQTCh0 Y3BtX3NldF9jdXJyZW50X2xpbWl0X3BzeSk7CmRpZmYgLS1naXQgYS9kcml2ZXJzL3N0YWdpbmcv dHlwZWMvdGNwbS5oIGIvZHJpdmVycy9zdGFnaW5nL3R5cGVjL3RjcG0uaAppbmRleCAzNWU4YzFl N2RiYTAuLjFiMTQ3NWI0ODdiNSAxMDA2NDQKLS0tIGEvZHJpdmVycy9zdGFnaW5nL3R5cGVjL3Rj cG0uaAorKysgYi9kcml2ZXJzL3N0YWdpbmcvdHlwZWMvdGNwbS5oCkBAIC0xNyw2ICsxNyw3IEBA CiAKICNpbmNsdWRlIDxsaW51eC9iaXRvcHMuaD4KICNpbmNsdWRlIDxsaW51eC9leHRjb24uaD4K KyNpbmNsdWRlIDxsaW51eC9wb3dlcl9zdXBwbHkuaD4KICNpbmNsdWRlIDxsaW51eC91c2IvdHlw ZWMuaD4KICNpbmNsdWRlICJwZC5oIgogCkBAIC0xMjksNiArMTMwLDEwIEBAIHN0cnVjdCB0Y3Bj X2RldiB7CiAJc3RydWN0IHRjcGNfbXV4X2RldiAqbXV4OwogCS8qIFVzZWQgYnkgdGNwbV9nZXRf dXNiMl9jdXJyZW50X2xpbWl0X2V4dGNvbiBoZWxwZXJzICovCiAJc3RydWN0IGV4dGNvbl9kZXYg KnVzYjJfZXh0Y29uOworCS8qIFVzZWQgYnkgdGNwbV9zZXRfY3VycmVudF9saW1pdF9wc3kgaGVs cGVycyAqLworCXN0cnVjdCBwb3dlcl9zdXBwbHkgKnBzeTsKKwl1MzIgY3VycmVudF9saW1pdDsK Kwl1MzIgc3VwcGx5X3ZvbHRhZ2U7CiB9OwogCiBzdHJ1Y3QgdGNwbV9wb3J0OwpAQCAtMTU0LDcg KzE1OSwxMSBAQCB2b2lkIHRjcG1fcGRfdHJhbnNtaXRfY29tcGxldGUoc3RydWN0IHRjcG1fcG9y dCAqcG9ydCwKIHZvaWQgdGNwbV9wZF9oYXJkX3Jlc2V0KHN0cnVjdCB0Y3BtX3BvcnQgKnBvcnQp Owogdm9pZCB0Y3BtX3RjcGNfcmVzZXQoc3RydWN0IHRjcG1fcG9ydCAqcG9ydCk7CiAKK2ludCB0 Y3BtX3JlZ2lzdGVyX3BzeShzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCB0Y3BjX2RldiAqdGNw YywKKwkJICAgICAgY29uc3QgY2hhciAqbmFtZSk7CisKIC8qIEdlbmVyaWMgKGhlbHBlcikgaW1w bGVtZW50YXRpb25zIGZvciBzb21lIHRjcGNfZGV2IGNhbGxiYWNrcyAqLwogaW50IHRjcG1fZ2V0 X3VzYjJfY3VycmVudF9saW1pdF9leHRjb24oc3RydWN0IHRjcGNfZGV2ICp0Y3BjKTsKK2ludCB0 Y3BtX3NldF9jdXJyZW50X2xpbWl0X3BzeShzdHJ1Y3QgdGNwY19kZXYgKnRjcGMsIHUzMiBtYXhf bWEsIHUzMiBtdik7CiAKICNlbmRpZiAvKiBfX0xJTlVYX1VTQl9UQ1BNX0ggKi8KLS0gCjIuMTMu MwoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZGV2ZWwg bWFpbGluZyBsaXN0CmRldmVsQGxpbnV4ZHJpdmVycHJvamVjdC5vcmcKaHR0cDovL2RyaXZlcmRl di5saW51eGRyaXZlcnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8vZHJpdmVyZGV2LWRldmVs Cg==