From patchwork Thu Sep 24 09:00:45 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Amelie Delaunay X-Patchwork-Id: 11796665 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id A87FC59D for ; Thu, 24 Sep 2020 09:03:11 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 71BFD23741 for ; Thu, 24 Sep 2020 09:03:11 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="rSPuejb8"; dkim=fail reason="signature verification failed" (2048-bit key) header.d=st.com header.i=@st.com header.b="bIOHvamU" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 71BFD23741 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=st.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To:Message-ID:Date: Subject:To:From:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=aveXpeDr8JM6M5mIbQbvL9XYzzhvwG2SzIvszbs/VAs=; b=rSPuejb8/+Zkzw35qYkFMm20a 1XyUKvPIrXeKPqMuTLHe8JwbDzNvnsT+cBAnAP7KMS/cORApPNZChXNKB1LeDt6RdAVn6eRxfe8tx U5VWOIKAdjLHQvYG1aA2Jxu5XTB5fEfyV3Yuu4OawvTjxrFkc50GZQVdjDlGpDpCRUiEYoKK/+yYo UQY28jLQMOaQPCZaAF1MLj3W/y1O1xWl3z34GJ9ACcmIQcDZE+GkLwl/yxKAA5n4ofp0UlruEIeQD g6JUD2HAsn0D0eCCqb5nz5ZaciD02sI92euoxcn3jNzQbjxgbncgx4iYkw1R/EXjgxqXtiECnIkdz gPtUfV6/Q==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kLN8M-0001Zo-2k; Thu, 24 Sep 2020 09:01:46 +0000 Received: from mx07-00178001.pphosted.com ([185.132.182.106]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kLN7j-0001F1-IQ for linux-arm-kernel@lists.infradead.org; Thu, 24 Sep 2020 09:01:11 +0000 Received: from pps.filterd (m0046668.ppops.net [127.0.0.1]) by mx07-00178001.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id 08O8ujau013743; Thu, 24 Sep 2020 11:00:58 +0200 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=st.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : mime-version : content-type; s=STMicroelectronics; bh=qOPGSA4k71owNvAkgVgp5TldnSG68YhSY830P7UkA/I=; b=bIOHvamUs6vElV/APFQyD+/d0FFkehc1CJEJJA4vvv2VqZ/7AZlzSgai3/PQ4Nq9VbXK 3+MJ1P1tDe7HgidrRoDlX7cdOkp85jL9kxVAf4AEXXz2w22p116KawDGvGn+AbPRinJ6 4ANc5tE5uJQL5pP8a0klXIdQ+rKJ5Sf0w+4sACWdEC3p/l+lksyG1v8xe1quIvTX02MG zoiqYPG7YFnG/vQr5Lkv+fv9Xh+PyL1qo3ZXsh6iV+NabOYNsadjgbD3lGAf14OeQicD G/xR/OO5GxD69a68ZdYVMrtQVUwuZzLJxl6iz4ZEKBcoMAMIUO+XQZRfuGkxoNR9A0fW DQ== Received: from beta.dmz-eu.st.com (beta.dmz-eu.st.com [164.129.1.35]) by mx07-00178001.pphosted.com with ESMTP id 33n7f02r6j-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 24 Sep 2020 11:00:58 +0200 Received: from euls16034.sgp.st.com (euls16034.sgp.st.com [10.75.44.20]) by beta.dmz-eu.st.com (STMicroelectronics) with ESMTP id 0E74110002A; Thu, 24 Sep 2020 11:00:58 +0200 (CEST) Received: from Webmail-eu.st.com (sfhdag3node2.st.com [10.75.127.8]) by euls16034.sgp.st.com (STMicroelectronics) with ESMTP id F0C7B2A4D61; Thu, 24 Sep 2020 11:00:57 +0200 (CEST) Received: from localhost (10.75.127.45) by SFHDAG3NODE2.st.com (10.75.127.8) with Microsoft SMTP Server (TLS) id 15.0.1473.3; Thu, 24 Sep 2020 11:00:57 +0200 From: Amelie Delaunay To: Rob Herring , Greg Kroah-Hartman , Maxime Coquelin , Alexandre Torgue , Russell King , Heikki Krogerus Subject: [PATCH v3 2/6] usb: typec: add typec_find_pwr_opmode Date: Thu, 24 Sep 2020 11:00:45 +0200 Message-ID: <20200924090049.9041-3-amelie.delaunay@st.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20200924090049.9041-1-amelie.delaunay@st.com> References: <20200924090049.9041-1-amelie.delaunay@st.com> MIME-Version: 1.0 X-Originating-IP: [10.75.127.45] X-ClientProxiedBy: SFHDAG5NODE1.st.com (10.75.127.13) To SFHDAG3NODE2.st.com (10.75.127.8) X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.235, 18.0.687 definitions=2020-09-24_05:2020-09-24, 2020-09-24 signatures=0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200924_050107_857573_7237F76B X-CRM114-Status: GOOD ( 18.28 ) X-Spam-Score: -0.9 (/) X-Spam-Report: SpamAssassin version 3.4.4 on merlin.infradead.org summary: Content analysis details: (-0.9 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at https://www.dnswl.org/, low trust [185.132.182.106 listed in list.dnswl.org] 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.0 SPF_PASS SPF: sender matches SPF record -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: devicetree@vger.kernel.org, Amelie Delaunay , linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org, Fabrice Gasnier , linux-stm32@st-md-mailman.stormreply.com, linux-arm-kernel@lists.infradead.org Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org This patch adds a function that converts power operation mode string into power operation mode value. It is useful to configure power operation mode through device tree property, as power capabilities may be linked to hardware design. Acked-by: Heikki Krogerus Signed-off-by: Amelie Delaunay --- No changes in v3. No changes in v2. --- drivers/usb/typec/class.c | 15 +++++++++++++++ include/linux/usb/typec.h | 1 + 2 files changed, 16 insertions(+) diff --git a/drivers/usb/typec/class.c b/drivers/usb/typec/class.c index 02655694f200..35eec707cb51 100644 --- a/drivers/usb/typec/class.c +++ b/drivers/usb/typec/class.c @@ -1448,6 +1448,21 @@ void typec_set_pwr_opmode(struct typec_port *port, } EXPORT_SYMBOL_GPL(typec_set_pwr_opmode); +/** + * typec_find_pwr_opmode - Get the typec power operation mode capability + * @name: power operation mode string + * + * This routine is used to find the typec_pwr_opmode by its string @name. + * + * Returns typec_pwr_opmode if success, otherwise negative error code. + */ +int typec_find_pwr_opmode(const char *name) +{ + return match_string(typec_pwr_opmodes, + ARRAY_SIZE(typec_pwr_opmodes), name); +} +EXPORT_SYMBOL_GPL(typec_find_pwr_opmode); + /** * typec_find_orientation - Convert orientation string to enum typec_orientation * @name: Orientation string diff --git a/include/linux/usb/typec.h b/include/linux/usb/typec.h index 9cb1bec94b71..6be558045942 100644 --- a/include/linux/usb/typec.h +++ b/include/linux/usb/typec.h @@ -268,6 +268,7 @@ int typec_set_mode(struct typec_port *port, int mode); void *typec_get_drvdata(struct typec_port *port); +int typec_find_pwr_opmode(const char *name); int typec_find_orientation(const char *name); int typec_find_port_power_role(const char *name); int typec_find_power_role(const char *name);