From patchwork Mon Jun 25 08:08:41 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jun Li X-Patchwork-Id: 10485255 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 7ACF0601D5 for ; Mon, 25 Jun 2018 08:26:49 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 64F79288A9 for ; Mon, 25 Jun 2018 08:26:49 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 590DD288FC; Mon, 25 Jun 2018 08:26:49 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.8 required=2.0 tests=BAYES_00,DKIM_SIGNED, MAILING_LIST_MULTI, RCVD_IN_DNSWL_HI, T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id E01A8288A9 for ; Mon, 25 Jun 2018 08:26:48 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753229AbeFYI0p (ORCPT ); Mon, 25 Jun 2018 04:26:45 -0400 Received: from mail-db5eur01on0069.outbound.protection.outlook.com ([104.47.2.69]:49472 "EHLO EUR01-DB5-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1753288AbeFYI0d (ORCPT ); Mon, 25 Jun 2018 04:26:33 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=PykRYD47hnAPtQXzP1NEHAWaq3kO4QsSfxWKcoh0HPs=; b=ImsJ1/CXB+HigxutipVsjRiLruf6DhTjoxVSBfRkSyyb5yszf3GgUifMJFj3zWmybvlaEqrTXRSaSp0Jk2nf5AqK+F9i7lAt5rSv9hI9bXn3X5x9sn2oNrcDEAjZBuhA/O5a0SsxyYlD5axDXZAQBI+iVUmf+aHfNZp7PqOT2tc= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=jun.li@nxp.com; Received: from b47624-OptiPlex-7040.ap.freescale.net (92.121.68.129) by VI1PR0402MB3920.eurprd04.prod.outlook.com (2603:10a6:803:23::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.884.24; Mon, 25 Jun 2018 08:26:25 +0000 From: Li Jun To: robh+dt@kernel.org, gregkh@linuxfoundation.org, heikki.krogerus@linux.intel.com, linux@roeck-us.net Cc: a.hajda@samsung.com, jun.li@nxp.com, cw00.choi@samsung.com, shufan_lee@richtek.com, peter.chen@nxp.com, devicetree@vger.kernel.org, linux-usb@vger.kernel.org, linux-imx@nxp.com Subject: [PATCH v7 09/14] staging: typec: tcpci: register port before request irq Date: Mon, 25 Jun 2018 16:08:41 +0800 Message-Id: <1529914126-22550-10-git-send-email-jun.li@nxp.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1529914126-22550-1-git-send-email-jun.li@nxp.com> References: <1529914126-22550-1-git-send-email-jun.li@nxp.com> MIME-Version: 1.0 X-Originating-IP: [92.121.68.129] X-ClientProxiedBy: HK0PR04CA0004.apcprd04.prod.outlook.com (2603:1096:203:36::16) To VI1PR0402MB3920.eurprd04.prod.outlook.com (2603:10a6:803:23::12) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 58295430-edac-436d-d686-08d5da755a49 X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(8989117)(4534165)(4627221)(201703031133081)(201702281549075)(8990107)(5600026)(711020)(48565401081)(2017052603328)(7153060)(7193020); SRVR:VI1PR0402MB3920; X-Microsoft-Exchange-Diagnostics: 1; VI1PR0402MB3920; 3:raY/cLEinoFck2pm3b6rFbdWkNf+hpAkDHmOEucxN9vssRcXi5P7huI+fAn0bnhiyiLDqn7uwX3wqBgpNjl4q9jh4EjJ/la4MA7Eev0Mw/VEOkechAtp/aeLI/D+JsHNwXvjK4WKHURlm28yqdZCg5ItATQHqVCHGieukvPwFOWztw66lRJbc8kVWC5ZVonAl4n6vdUM2ckxWFRQH1vFY1hwWPFU0wkbGxxpHnYvKlVBl00n3jDeHA2x2yDWpEaE; 25:MOdvuaEQmuUYwdJ4fVhkW/aZKsnN5GklMrhZwne/1juHT5rETlrpjeePTVdXDk6KcU96lA8Yc+Gc5scLALHLa85yrBXRU8EYpi/p4CEUKBtETDHzMxUBUYe1O4XMX9wTuoDPn0fCdMb2/SsHWe+ZU7HniIEtYnv+/jwMGE9iaxEf7lJoxY6vsIggHGN27pWLPG5cUjyMm+6ei0yiztklDAjtMEBFdBmvZ6KJD5zA9dpn0w3WaTUKceh8LGRCNh3vVCP3JgjCDNUq+d15nLMozXcX1q0gFbPB02q0Lt1+ZTkhoyKB9XaYpKR76wWjnXPyjXB7+lJMWtc6bn7bmCHDug==; 31:MnWeGe8FqlhFr6NwmKo1waFJX/bLXVa1p6AAIxmptbe/7ch1Uvgp/ilU78XBHIoPaasDhiYUNpMT8HaEbnvtKwg/VukApowMRw3ZduC6wjakhsYcgB/5Yegi+n2AEZPNOPfPpniC3tD8wKl3z+TqR1sAX3Ktb0reSxKsBTdl0MP/Y8C/aY/Q13v5lEVKa/jxIFPgkTQi9gEGN5hvTNPu0ixBW5kkJl2hA8VpGgNuv9U= X-MS-TrafficTypeDiagnostic: VI1PR0402MB3920: X-Microsoft-Exchange-Diagnostics: 1; VI1PR0402MB3920; 20:QqZAes+SWyw+MywkxqnYU28C7Sz39KGVqvCT/L4m6Z506bsrOyYY9FVw4N4FUl+Mzi6bdYtLhGRUfQgi6iXlkfDlrm8dvVq+ZIHwLiVRmkhO3/jOMyKMs+/PD5jTmW+bMBbce62MQq43TxLq1LHns9BxE0MWePaSrkOsyEz1lo0NMzuJuM1eJBfHF1EKg11CD4maRp6Jx0zHqyW05LIRqKtOFB0t3HCZDsm/eeFQ9mlumnMeKjlqaoaftVIPUO6ZakKzikideb709B7pJE2pLvpnEGK4P5nEyXRtmmNHoiPgJYPTZlJcGWwhw59QFWtdjwN4ugyyNjpaiEeqJ0rxK7ut1CTKk9dzZrYm0xPCAmv78NgY17fFRueWZG3uUu69virlWfdvOli/LQ0tSSoRDq0g3aWXgbJX36UezS8oDBoVmOotOUXGUD7Q203ELyNDyZVqpeUvs8eyMAs8OS4R+iAb9AxJtQ2pzAR3ySZSY4i6W4JEDojgIH0xqG3XmGDI; 4:+en9yZ14wgZwNdpG3dyFf5k0j9y/lS0VSHNtmXQwDiDK21OFZSzjdkm6NrYp0twPbcR/AJ1Qc+g+sW33DyF3FVKsrbBjzP7jqVpAd0ohMOn280PF8OPHMDasfeyicXVs/DlYDXheRIm5rqRQwllfz4BV8KSEUKdqHTUVFqWiK1+LwIeLxsTtq2t5LjfyYgMsRXPOfRZTi6XHxAX7yYdgmhSTPEUjNlQmbOi/IXsbcWulr+GZcJFCuEibc3GsFxw8WYwRswICBoI2PEFE0V57BDLSf6XQFce4KnmEqjiNM6JwaHk4RLYeIB4BURerVBNLDP0UJ8nnjUD5geevMKZES37e4ba4SpoMkQaMN5YuYS8= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197)(228905959029699); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(93006095)(93001095)(10201501046)(3002001)(3231254)(944501410)(52105095)(6055026)(149027)(150027)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(20161123560045)(20161123564045)(20161123558120)(6072148)(201708071742011)(7699016); SRVR:VI1PR0402MB3920; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0402MB3920; X-Forefront-PRVS: 0714841678 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(366004)(346002)(39380400002)(39860400002)(396003)(376002)(199004)(189003)(53936002)(25786009)(47776003)(316002)(2906002)(16586007)(6486002)(36756003)(4326008)(386003)(6506007)(186003)(6512007)(478600001)(26005)(16526019)(97736004)(8936002)(86362001)(59450400001)(50226002)(52116002)(476003)(81166006)(81156014)(486006)(76176011)(305945005)(51416003)(8676002)(2616005)(6666003)(105586002)(68736007)(446003)(11346002)(66066001)(5660300001)(7736002)(50466002)(3846002)(106356001)(48376002)(6116002)(956004); DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0402MB3920; H:b47624-OptiPlex-7040.ap.freescale.net; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; Received-SPF: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0402MB3920; 23:cSuTvsspx9unYv//9tWfT9XyaDeOyUuqjS9kfyT?= =?us-ascii?Q?ggpylP5f6vbLM3nNSclof0Z8eMBHYdXaz/YuaIkod7n3Fih2W8k8lnSyZ4At?= =?us-ascii?Q?zxZUHVGhSIM9/+dNvecH1mvBd56uxWXrwd72Id2W+boC2tjQxRfXH5tXljlo?= =?us-ascii?Q?Cs5FKSS+qc+NT2+F4zdnIBxSkdhpz+hkavn6eLKPHlAS8oxqZUqFZakWRhE3?= =?us-ascii?Q?2Q26GaUMFfL3Mg4jF9X57ANIpOKyFmasLEMd8cbQYS1JozLdX9quch29sHHD?= =?us-ascii?Q?w9NKRfZblenTyOflTO7pMxsXJ/eCUEPQyigFGNA2PfYt4kndefwuMKoKarkW?= =?us-ascii?Q?SaoSIf/+EBA2o6PqAjuGLUPWneYcfde/IBKl03CV1l6zYq7S7nECv4GJ0gOU?= =?us-ascii?Q?l1cYJHZ91FSUuuySYPmz9HtQuh8YSu2lBWFFGdUG01ifFSctZwIO9BsawYrH?= =?us-ascii?Q?SIKm6mteKWgzk/ZHm/oQO882BGFFwZqfocG+aTjPVIpXhI3UuJp2VDNRCai8?= =?us-ascii?Q?8BtuiPUpGxiN0haLmnqHpsgb1xhiyPVPwi/dgKGfs35MRPc5XAr7TN/PLHTW?= =?us-ascii?Q?vWTKepf/WiFSreDEivL0RGdHEuSa+zBt8UxivJx6Cz5RPOWA+IQtkCaZFrj6?= =?us-ascii?Q?40g7gCDN9CTiAfF0NZT1tkyj663xF1UGxrwmPUSoRue6reTmuMsMJDvXxdT/?= =?us-ascii?Q?+CEvmq8QDFhpNDHqjR+Xd10JTcvumcP9p8ewSXWziNuHGKqo0AX41EPoGLe+?= =?us-ascii?Q?4D89FZNsrDUScWQSHU9t3JBwUQqKADOAx3LKLyDIETes+dyvXDgId+7zQdIn?= =?us-ascii?Q?EotpJiWvVuApix2sd4pSKX7q/GogNlAekuN6ebTkdfuBZy4Dci7Jl6Es7Hec?= =?us-ascii?Q?CJmuxEoT+BOrqa5HBQ521T/WcEK4tWzRdjVjjjChnGexc9rIhBgvaFUHuxQG?= =?us-ascii?Q?hNcHeya4VWf4ip5rFQv+XIOJQaOoFAWqPx9Mm/z047ALPOqIa2o3/KCOhL8O?= =?us-ascii?Q?tynKtn8+NPgeXA8tM5bp2/tOQtG8aNgAY+wJ0bRfe2BN4Hfq8qVpJVKePeDY?= =?us-ascii?Q?8bvwxlz0RI7dbDZUBxUPdUbgvzpqBgbgU0Lbw54FeQqKdusaOXbbkQb8D1h5?= =?us-ascii?Q?6a2KTabn94YrZqUxqh/EbvLMbHKZ1akSXQZ7sh14FT9tZ1qxLVapf0PMXTD1?= =?us-ascii?Q?8PTQrqBOx5FaRoy0=3D?= X-Microsoft-Antispam-Message-Info: DSGdHghxMKiXACJRt8GIj99puOooE/LYqFU5CtJ0T1lagGa0HgZ9OEH07mAQ0Y4uu6Tps1NFPngzUBk9nSjZaoDp2llM19c28jyuKhEo9VM0Bd0KufNoE4xxAfgkOQxU1Y/GGKLN8NHf2G2HsBUFdT4qv0vI8LXDxbHnRslcCQxWzBMyh6i+otB8XC0gVATT1j/6qL2ZCzRUftmNCyKM133DXK3+4BuiaDx9CZ9B1huSffidGfRNrOXt2sgUvTDxPxEvRBfE5bmx6lS0HqfBXkKjPtyyZWC3y1crguqV3fa/GVY2DzPWlJ1sY4QnMoi6zquFyosTcOuQIyKjewdZ2sWjQOAni0UxFG2nG0NsVkk= X-Microsoft-Exchange-Diagnostics: 1; VI1PR0402MB3920; 6:/Xwy/B6ZCN98oKrzKKDozO+OZ35vRhCDEBtvwb7JjkIC+oegLJiUSjDbSTmBcelxmt8wUzxSvaJCXVoSrKEdq5UChrlF27Lgr/uWFesTEwC8DU3DbiHfIUv2bw1MthVHAOJuJej/ZG+OnYd6gpjbqMCgYOyJg+L08LNFEGFLLahxmJTBl8j9E74F5EVW7arqobVEKD0Ef+HJWaEk0wDLJhQaDyj/7aGMTEQwV4JZZEavYHtJbac0cAMthXSnLC18yvXnUnYZYIPdPzrefXBGGgk+OwQrq8zIDNYJ5sU/y5Hsm4HN/DJxUWUafDAgJD1ZAg/0ud8A8GcOc4pvnZFG2wXzB+UDrfrjy451QdD0+JGUxm+mgCbhyYaPlWDsFJmn7M5fNGuL+pwwr0a/PiDOCGHrhpvL10SBvQ1qkST1ovF4/qDnZ4hrpiZYG48xrp9rzjnk7rFpgRpy/UqjHEIBqg==; 5:kzZrDRY8WdD8OqIjwJT/r0BBYsrPG7DUXpZHac3tZbmqdGVp88P3bVun6Fe51c7tOgkqmlXIRF54fQFccyPD39J5UN+ObfsFvAFT5TCh5seIRU7FOYSSl6b7vmSTP9Faaw9ENV+bFWazoqpzJ3xbIHVqS2nhat3kVRx2I+2ttyM=; 24:vFSLn8ibI0shSYJH//i6SbwZxZ+GIA6Nl9mO8l/wRQ4zs916HwQ+WZi6nTnN9eM1p4x9lA8jkdrGDDnJGphVHhNnwkr0Io3b4e8j82C5cOA= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; VI1PR0402MB3920; 7:RWQmqeYh2JgIeA9jlmJq1cENv/17UU7dIzSNuBZw+Bp3VVIpJ2cQpCLgegV4rqpESys7eVczDolylxqpHyxalmZ3ysCPO7YBWy44DULlh8Wu3PLRQP2W+t8JY2kG6BDD93R/FKUjOlU2Kc0Gz+ho5HW1obM36FATxV3U1e1s990if2clAurRhcQWDZzsF4O4tUbvjhfdeew7BpIiRQrcdkzJzy9FunAMM5IU/Lq8ENtjQArb7hHFks3+5MHD1ymv X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Jun 2018 08:26:25.7828 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 58295430-edac-436d-d686-08d5da755a49 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0402MB3920 Sender: linux-usb-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-usb@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP From: Peter Chen With that we can clear any pending events and the port is registered so driver can be ready to handle typec events once we request irq. Reviewed-by: Heikki Krogerus Signed-off-by: Peter Chen Signed-off-by: Li Jun --- drivers/staging/typec/tcpci.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/drivers/staging/typec/tcpci.c b/drivers/staging/typec/tcpci.c index b63f147..3b35fce 100644 --- a/drivers/staging/typec/tcpci.c +++ b/drivers/staging/typec/tcpci.c @@ -537,24 +537,27 @@ static int tcpci_probe(struct i2c_client *client, if (IS_ERR(chip->data.regmap)) return PTR_ERR(chip->data.regmap); + i2c_set_clientdata(client, chip); + /* Disable chip interrupts before requesting irq */ err = regmap_raw_write(chip->data.regmap, TCPC_ALERT_MASK, &val, sizeof(u16)); if (err < 0) return err; + chip->tcpci = tcpci_register_port(&client->dev, &chip->data); + if (IS_ERR(chip->tcpci)) + return PTR_ERR(chip->tcpci); + err = devm_request_threaded_irq(&client->dev, client->irq, NULL, _tcpci_irq, IRQF_ONESHOT | IRQF_TRIGGER_LOW, dev_name(&client->dev), chip); - if (err < 0) + if (err < 0) { + tcpci_unregister_port(chip->tcpci); return err; + } - chip->tcpci = tcpci_register_port(&client->dev, &chip->data); - if (IS_ERR(chip->tcpci)) - return PTR_ERR(chip->tcpci); - - i2c_set_clientdata(client, chip); return 0; }