From patchwork Wed Jun 21 11:59:53 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dong Aisheng X-Patchwork-Id: 778798 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3wt3Gp3Rq3z9ryr for ; Wed, 21 Jun 2017 22:01:54 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751148AbdFUMBy (ORCPT ); Wed, 21 Jun 2017 08:01:54 -0400 Received: from mail-bn3nam01on0051.outbound.protection.outlook.com ([104.47.33.51]:2976 "EHLO NAM01-BN3-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751118AbdFUMBw (ORCPT ); Wed, 21 Jun 2017 08:01:52 -0400 Received: from MWHPR03CA0028.namprd03.prod.outlook.com (10.174.173.145) by BY2PR0301MB0631.namprd03.prod.outlook.com (10.160.63.11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1178.14; Wed, 21 Jun 2017 12:01:49 +0000 Received: from BL2FFO11FD030.protection.gbl (2a01:111:f400:7c09::190) by MWHPR03CA0028.outlook.office365.com (2603:10b6:301:3b::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1199.15 via Frontend Transport; Wed, 21 Jun 2017 12:01:49 +0000 Authentication-Results: spf=fail (sender IP is 192.88.168.50) smtp.mailfrom=nxp.com; gmail.com; dkim=none (message not signed) header.d=none; gmail.com; dmarc=fail action=none header.from=nxp.com; Received-SPF: Fail (protection.outlook.com: domain of nxp.com does not designate 192.88.168.50 as permitted sender) receiver=protection.outlook.com; client-ip=192.88.168.50; helo=tx30smr01.am.freescale.net; Received: from tx30smr01.am.freescale.net (192.88.168.50) by BL2FFO11FD030.mail.protection.outlook.com (10.173.161.40) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.1178.14 via Frontend Transport; Wed, 21 Jun 2017 12:01:48 +0000 Received: from b29396-OptiPlex-7040.ap.freescale.net (b29396-OptiPlex-7040.ap.freescale.net [10.192.242.182]) by tx30smr01.am.freescale.net (8.14.3/8.14.0) with ESMTP id v5LC1Q1r009655; Wed, 21 Jun 2017 05:01:45 -0700 From: Dong Aisheng To: CC: , , , , , , , Dong Aisheng , Alexandre Courbot Subject: [PATCH V4 5/7] pinctrl: imx: remove gpio_request_enable and gpio_disable_free Date: Wed, 21 Jun 2017 19:59:53 +0800 Message-ID: <1498046395-30001-6-git-send-email-aisheng.dong@nxp.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1498046395-30001-1-git-send-email-aisheng.dong@nxp.com> References: <1498046395-30001-1-git-send-email-aisheng.dong@nxp.com> X-EOPAttributedMessage: 0 X-Matching-Connectors: 131425201089037027; (91ab9b29-cfa4-454e-5278-08d120cd25b8); () X-Forefront-Antispam-Report: CIP:192.88.168.50; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(336005)(39380400002)(39850400002)(39400400002)(39410400002)(39860400002)(39840400002)(39450400003)(2980300002)(1109001)(1110001)(339900001)(189002)(199003)(54534003)(9170700003)(104016004)(105606002)(106466001)(2351001)(966005)(2906002)(498600001)(50986999)(2950100002)(6916009)(6666003)(76176999)(33646002)(77096006)(48376002)(50466002)(7416002)(8656002)(305945005)(5660300001)(53936002)(38730400002)(110136004)(54906002)(47776003)(6306002)(86362001)(5003940100001)(36756003)(189998001)(50226002)(8936002)(85426001)(356003)(81166006)(8676002)(4326008)(39060400002); DIR:OUT; SFP:1101; SCL:1; SRVR:BY2PR0301MB0631; H:tx30smr01.am.freescale.net; FPR:; SPF:Fail; MLV:ovrnspm; MX:1; A:1; PTR:InfoDomainNonexistent; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BL2FFO11FD030; 1:DnUxIEOYIEjqXnPZsiUenCOkOZWrtYyI7srd9LfgoI2UtaKm+z5lMXhqURaNTcBAfvh4848p91k8QJgRFYQFdSYxxvW1l2JOPw7enOSn9o7ynJX6JG/fVJcyimOTHPbDiWNBjq9Io2Kidh6PgMNrIUA70otvJ6cdrv5K7BUFGNB8crH+HxjzG6/4iIdci4HN4pO7SjTUv7CAJgX0d74EtVPq0HcVSAJZpulLSY89jmqimI7G3EYsSVOgAjskglMxtRqnteXUitwj6HsUoo46IVh4VEX7gYdXcRym3OBAbZMLoQ0fLRLjdXJupkA2jWYxnz9qA+noUNtCgPvSsdOjIkGPB3QnoCeGrTyUPU5xR/nz8ek+MTCh32G1amckNgQtyN5UFgrLbBfgLcNFUMVb5Jyyqyv+bLhFSScAzyxjT9xZ/BZ34kfLOuH5SH8Rj7XLTBKJGKuMZTRkQaKnDRZf17nD2BsdC9QGC30udxEv6Xv4S9cxCZYaImr5W5vVHnav4Y4IhVLQc3k1/brXF2qbNlc4As9NbilfgR7BwmdgEy8xlfOnhC/WGTDJXQFCNewTX8b8FGJDSy/piop1dd1wDd0dM1CgHg2tz+IabDugvvE= MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 6bf67fd3-ddba-48ac-e182-08d4b89d4be6 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(201703131430075)(201703131517081); SRVR:BY2PR0301MB0631; X-Microsoft-Exchange-Diagnostics: 1; BY2PR0301MB0631; 3:qnBSmP4RwEGVGdvMNYdMTlxss9O1Ec1Jn8lOyR+sxoRuJ9omGaE44DZlDF84ZIj2LO8bsBKlpa+hWxlfAbaShtELQTLocPR0DmLh/tm1vWi8Q7h7wjoD6sjzaHQJaJH65fByoFE+YejJ522ltAWBh5zUJQvVkMOgdHHiRy87UhZIq9iHbNPj6KIVRvB+qVT3QSi4pKjcuQJVkI4774ME5v4/FZN3q4BYEMh442bO0/lBpaEoB8cfFHUvjpmE/1BEc26XNvb2Vw+nvHqkwB4TNJSe3TMYZLrRxpGjmdJQbGCfVFYGk9H12Gd3KQIeKhai9TO4zifu+nU0WA3pCY/FG2J/hfm7dsILkWRr+mFrLwefDkLvfn1ekzxzhOUaTloI7tUtH0kHGoNzbGYmrTf6SIVLQ9QXJnz9O0gLIJZYQA8cm3mxk49H+Qq4VRvyWu5t; 25:FQp3ketn17SI7F8O0bk/0E3Rvn7JEJoc6XpqvE5WWUOLPRz/Ifit/gxZmcaPe9Qv7f6ql/iyO2ErkZ1d09+XlU8Cf/pJpZBSI0lvwqAuIdXTHx7xMDwaQE1N39keIC7nebmY8CFgRcJqwYXsnIbjVNpjLyh8/AKmPqTH5ZQcYWttPhwadbBoR9y7tdJvTuwO5ZfOCY+LXnW6YVvluACdFRVrFi3YpGFJjs+U/7EVlKH/4mLQZ/eMQt4YkMYPvhdrehpNTSaJaZds1C9SGaoCYsX6U1fG+PgnA5MRItxeqnE3fvp+pK3ubYZ4456/MyHvdAbNqo2EuSMEdzemSsVQp81ZmLTtECJV75n9LCYLzRoUsr2ol6joNa30kGUBEy7r5CDqq+ymQHb8jDOykx/bRmm7quB18pPgjNKrZJn8S8uZ933cYdPPtWS+lH9GoJ9ILNUQcom9sgfDG6xp24QAy05GuDwCgQGJeLKQSkudSw0= X-MS-TrafficTypeDiagnostic: BY2PR0301MB0631: X-Microsoft-Exchange-Diagnostics: 1; BY2PR0301MB0631; 31:i0u72QnGWhKNy0Mdb/oAeFXCAVQzQ+oXHfZaqE2y7fCkVC5oALXR3WFQ3cUMykldxEkzv2KBszjTyZ7i1gNovUArsnwCO6MDdDvNH/TWL0ibE8O7pnQkzc6/QCcflQ1NqxZbsfkdPJnk/l0WbcK0W2k0odvn6HMKFHI1C6YcXkQdaT5Z7pCe9gkQ9r0jz0zCuj6raX0RdpJJ+04jxwZFtgbse5jrSVrrG/M0JHERRu0fyA7XH/JFcdRqAraSSFcE X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6095135)(601004)(2401047)(5005006)(13016025)(8121501046)(13018025)(100000703101)(100105400095)(10201501046)(3002001)(93006095)(93001095)(6055026)(6096035)(20161123561025)(20161123565025)(20161123556025)(20161123563025)(20161123559100)(201703131430075)(201703131448075)(201703131433075)(201703161259150)(201703151042153)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:BY2PR0301MB0631; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(400006)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:BY2PR0301MB0631; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BY2PR0301MB0631; 4:onbsHpO1Zuf2yi2JwgH61nUYSGmT93YBIwbNLuAs?= =?us-ascii?Q?ZtZKH47de2CW45pNZ+mBxKujwN6t3x6w6SYpeZuKClJVjr6sUTkzeiQ2dWoZ?= =?us-ascii?Q?pDYd2MeDfyILUoYAr2Q8hl0HvmxlNngNSEP8QwrIzin4nTVC5zUbG4o9tNi4?= =?us-ascii?Q?jha5wAKLoc5oYzKKYM5l/m77x8n8XnXPr4+BeJc8gMxW+BTnbz/l4RvC+DVg?= =?us-ascii?Q?mRygTjSVq+ATFqPM3csWeVZYd/L+rw04sfrygbeLX0Uy8JjG/05Y76o4CI1d?= =?us-ascii?Q?FObJBHT5CLaIlPCcPDefGOfiCOupsy9BLt2t0lcu2vw+s1qVAQ1L0zpjZYey?= =?us-ascii?Q?ojxWfQAZQQrGdDY40ehoC+UcZWcfniJvpOj9oGhKja7hjnrPnX3Lf4vis7r0?= =?us-ascii?Q?KbqrqeyuDlHYt6BaXrajm/xHHU48fTh8LhSgCXMbaLZ9YCG/GaOYAYbMlYGP?= =?us-ascii?Q?zYnXi0oWhBWYluwYKrEGUfH91lzGj5BznUVUjBf59316jqPyvhshhxpi7Ro1?= =?us-ascii?Q?GIFKAhSVSL+LHdZSzyG4Owe/R6spIJosxlpcOkos/Neaww+wdzWiZxMf9Z5V?= =?us-ascii?Q?aBiUVQHfXNiM+P1SpTGgZpzgMdG/nb2FX3BS6iXQZlYicFumNTxYR/A7xRNe?= =?us-ascii?Q?I450651CS+niQ9CkQtA0fHQTk19n+nouOPJnq95NLWs1iXCWNNn12e0fH1g0?= =?us-ascii?Q?bep9k7MsmSxeAq8TwYCSyUG5qD2aAnY32WBd1FFN2rRK1Vdvdy2rKsXMXFm2?= =?us-ascii?Q?Mn7vmW8bZkveuS0sUgg0063lPy3fz/OFuirFgfWk+ay6+wJ6IIsTEs0C7AKu?= =?us-ascii?Q?YUfUL1R4mDLDQ6jc26b4B957+smitMkHVpnJDKSvFNaWlVn8Muqi3b8d4GHj?= =?us-ascii?Q?zqyTQaLeYGYwAZJRl/2fKNnGFCHgGLXphIomHLj2JaOna6EXvMIX5rhpuQ5y?= =?us-ascii?Q?HI5RjAcpu099Lqpdw7s6coFoGnBrPEDaOSfiCiLChT68BujHVsY7Gzs2n254?= =?us-ascii?Q?U9E+zxYSSz26oAYT3NsP23BtSsmM0EPjgd0g+JpUfeOJ6lfpEF8Dnb+D4HXK?= =?us-ascii?Q?bwGComAidBaJLPn0JR0S8wOsedDgOKHvcBA5YSCuBjNjBegAazgGkLhCgLgT?= =?us-ascii?Q?ul2VGjeQ946CM4kyhZnR4vyh+oRxAY3mdrjJrCV5e8omENfBfvj8hBt1dwXO?= =?us-ascii?Q?1uNREc+JUJNeTthGHzXxIBlG9Sb1S/GqzddeA0xV+Fy5yC1ffZpUvwNkhwRa?= =?us-ascii?Q?bV5oEakossJh7amRqhQ=3D?= X-Forefront-PRVS: 0345CFD558 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BY2PR0301MB0631; 23:ebDi3Xhd3DJFvkLPdF097StsNWlbVeWVAIZuod2?= =?us-ascii?Q?LycL+fkjPF5SpEovI1hU6Y9h8YQg8KMhIW/sdwsmnIkIq9CDYqbnxFA6PHkh?= =?us-ascii?Q?EfYwiggFCEmmQAVpOxJhIdi/Kx6AEwGaTE0XipDGzWyL09fe1fPEJa33NPJb?= =?us-ascii?Q?ut/XdP1mB6q8R2zjAHALyJ2ab4shvEy5rrO1ZffuFPyQsmqyM3RBaazOL96G?= =?us-ascii?Q?0L35UllLwX6lrz6u/mXq+BF7BN4C+hqK+v+/RxoWsHeh4n5wEmgr+YoPnbNg?= =?us-ascii?Q?tItFIF6e/q3Tp44Fyz+zNh3vyeuJGFLZcpH5ZxXemSqtHGVmDjTiwQqbjRm8?= =?us-ascii?Q?V0zsTsu2IXPXoh29gZzfmk9D7dKZ7np/zzAPugP0r/65YqCNLjBR/MQUUoou?= =?us-ascii?Q?LYxPEdWovMzLhJrhkE7F3HM2WuvPlqqoTfJQD1a7+NAIRuFnzzk7RPLGZEMD?= =?us-ascii?Q?1+DpdznH7zMWYPp8bDLl5Pn9CJvU32LMRXms2QtknENWQ7yC4nJXL2zSZjx8?= =?us-ascii?Q?kO/9p0sQBI+yGlg/tKS6GQFU3RuM9gPuDECzUo/xP7LZn/bsBRFHgcwdnD8H?= =?us-ascii?Q?CijWwjgGQvQzBMp/x2pqZ2cE4MCw75mWF49AzZ95rQmEHxmUkQgvueXhFbl1?= =?us-ascii?Q?YJuYpYGekb0MwjaXm4aUNsxywNU8k6iUCHvfvG28M3TdHIGhwVQlruJmDi2I?= =?us-ascii?Q?9fTK4cKfV7koX0zW25q6RTt3A3RnHNzPrZuace+6qzbEuiH9tcSB2GsqR8pP?= =?us-ascii?Q?1prH0u2fP7BoQkZFERN2KkN5WgCJhdhwqQelOMKzajqI7Tnv/ZvWGN0VLdca?= =?us-ascii?Q?YgkpNXcPeC+j/+bletWiXCc3D6rz+4UIOjTIxkri9JaTYeFq3VEwz4/rlVU8?= =?us-ascii?Q?q8ixYQsVuSZ12zT5R+uBefrythXz1slDLEeMza2u3dMNLXtL/XykzEVTjQtY?= =?us-ascii?Q?lafOE5oSJsVGa11D+jMBwdmreKyZKNtAFJ8dJh82xC2aYg2XkuzZhRJ5WVxG?= =?us-ascii?Q?PHGqmgT8J/3SYljdNDK+L+NbDBbnZfxRO8sLPYoDvBF3gdSckvfZSsc1teXf?= =?us-ascii?Q?I3E/+NZSkUNQCktjzPdi0GuPw/J2+BeycqpC1N4EPsJxpNHNsl2rupYgzGp5?= =?us-ascii?Q?O2y+Or2zGXqlkBb3iNF0juKOg7xZxqOq1HKTaX9wih14DtMKNP9GLOCwVPxZ?= =?us-ascii?Q?J65yjdi2r4+s+a2r7P1Yt0LusKOWPQF5LjZ6TGvSy8GXvAPB1Knv/1JNOmAo?= =?us-ascii?Q?I9Ha2vJHzDB9weYHA/d2+H0wNIa8j6lm17KySbawIwPIfGWt8kEeG1Ipbv2F?= =?us-ascii?Q?aa/4cKL33HERvghBSbe3oMugBaSnQgpkIokDQPQWPmigE?= X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BY2PR0301MB0631; 6:pC85/+p35R+zFfpdNmPLLlj/7onrVsJY4nlhy8AX?= =?us-ascii?Q?nXx4k9YruvvpnM8R3jyEcmCPNaeKORvhvlCPDBD97XSd3jFQjX65PQw6l/FS?= =?us-ascii?Q?UHeFzE3CVNQpoSIfqdVnMpCbAgp8Br6fmB5na+XypLTv+HSbZZ1BsOqMODdc?= =?us-ascii?Q?7/eUQgVq21gEczly3DOI3QuEssxYmVMHmO9gPOYADho4UuXszsTgZsDvhvXa?= =?us-ascii?Q?2XAfHHGLN4vCDXkam86/WgSTHuTJMiaa3yNlEcZb0ag/KNvlkq4vTrslKyDk?= =?us-ascii?Q?1HGSvxbmm4nYcu2Edmowt6mZX4cUA0By64tVBj+xEIW1xIkO8JA9JvLY223G?= =?us-ascii?Q?+iw3Sf1DF8qkOkw0mUwx52YetLpBUdRi2rL5SYGfzg1cs1iJl9BBdn/h4QwS?= =?us-ascii?Q?hQMvfNiypS1mIaZkUP+9ktdpIaH1dOH2gnK6BoW3qDQ+W9GSOY49AzNCNTno?= =?us-ascii?Q?EJSKl8tZnD6EPtI3v7ZSyXoiQuW8cvV8JzVRW1dCgZnH8yI16SiwiDF03las?= =?us-ascii?Q?oGr9mECYVSrmEHpmxLfDbEytF8ZfPfgfhnIBS++VxGXYBAcLyZUKiGXmMTQA?= =?us-ascii?Q?szoIyw0wFerzplLPnTBvWuCrrGi2YB6BpJugH5vAU47IQwEjduaX23n4MTfn?= =?us-ascii?Q?r+MRjpGU9UqhpJtaslaJiB5mAicOFKTY0b+67b/HkBs08ajLSb8AJdBCNBS4?= =?us-ascii?Q?rfe9My9NRN4IFYEAxiGLqupQ1S45+cUs7qAxs4mD7ithAMjc4jbq0yXwUdfQ?= =?us-ascii?Q?yfykxqTDfn1qEajxOEjVX9d9bmVxT6d9QCR9uTKcI6l7k4Ek2s0/XSMHu8DC?= =?us-ascii?Q?StHbsNilX6pUg26kaIQJFrUQiUU87+I1Hihx3YBtEWBiaCbiGWyaorBmgyLF?= =?us-ascii?Q?RNiGRK83kaB/q3f9WKWDHdUnozh8IKA3iIy7xjswGBJ3N8jZC2BSquOvCAgD?= =?us-ascii?Q?NiN9KTIVqN1PnZYD3QOWQv4PNDGmGKNObKaOCT7dhA=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1; BY2PR0301MB0631; 5:4cwyokCFdcqhzWm5K+E27CGXahSX/XH/dcG7VwfoFBvMubllZD4NoIpuTlMo7IlezmCkZ0L19iDaeFfVcvh+LN8ET92XYE8UJu5Qwosk8CWDUuH6RVX8arK4HJi15H31QTysDJPWRIRb/8B95hxUJn0+V2H1CD9v5zRZVJsfqGUT7LvQLsSwHzSqAXy6KJSLU0Mok/WbwLEzkTi4hmxn0fbx+W/96ZEbtlmmaGfXxEK+wjoWtlMe1CJprPihcdjfvkmY2gdmls6+TG0l9nXxlZRyMhhC7UtlD1OpeFRzdCVawdat9LNiAz+3haMISCJmUfvXphp0gvgBA1TE/FUJ105MrGXPLPKZfIscWXnGS1TZqTL0+Soamy4eAzci1EvJsouCoAn44Ax3aQSzEiYrN7O/NaEimh03OhABmbfj5yDVdVOcsX6NMmc6iEkYM9wd5SJzvAklIGkotb6u0w5gph8YzLkpQaYA2Jxkb5P7Tjhcvo3lwtYpH2eJFgCME9orbQRVamNqTwB8GAmQeonv+w==; 24:y7N2YuiAj1iAbg0LNxDJKJ5KiDwY1hg0hFXaz1dwjPJMcyNxwxAJqMADagNJpgA+q0fThB5worikzs9/1l8YnRDDXWxFIBQprHSQJSFHZCQ= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BY2PR0301MB0631; 7:WL0HyjSGNCvZzryfXrtsaWucoUdvV2dWdhBGdih+31VKJuiIZUSlADjuDi0pt7OJ9xLwYR+oWxMxQxam2lIQL3PiGj5TPBTamEcJ5V/Qb6cfYmb+TywB2E1LVWpnONgr9bHhqad8LeFaLkrUeY9YSYY1JBK/SNGtIhRpfp6cQmdL3jewSHdnanvNb8aOcLQE4gBTTcOleN6ZEm+nEV4WaGGy3ncmdU56DmEpThyQUwaW7GW+qAVLGivoaYiYq0Vv8Qud5jgobyubXZNef37H85WkDcMEMtKX11FlTj3w/TMMl89kk0XA6vq3blt0b7wAmRkAjx1eBU+jCc2XqnswohUOpzQBu36EN+QKVWWqMY+iwynDL64uGoIy2YGUxscFHWNqf14Lbd3rmWGR0crQxKgIj/kYYQ1UYu0Vg+qVfHSY9KSOYLbAODVbxQU4A86BR9xsX9G0Z3gGIGfw/0yNrAB/uEJ/z8JrJBvQwknJ7jbH8V8yMzmvk7BEiqCT5l7RUrl4K1A8GcxgmBAGs6PmPccg4/ZpKPlWtzT+nR/zZMlnY0TFz2zwN2Ey5oFtyGoDRaiJcj87EWKqBpKOP30q66i6b16/SOzGps9t12j/IMdnLbz9r872w+KssG0/BhUaJHMdfLYHc8ctC+I6MIflXLpLkmta/cZvoVgss8iwf9AJel5jpw8huF9H4gRW+LAegfZ1vsLYJDpGa3S5knUWVt/Tr7Uf65c1cMuaC6HCF9wsDnW/jTWWAE37B2WdIh0o/CF4wZegkDNnAZ0a8PQPO4isyNU1Qypkb6++d4uJ9xQ= X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jun 2017 12:01:48.7165 (UTC) X-MS-Exchange-CrossTenant-Id: 5afe0b00-7697-4969-b663-5eab37d5f47e X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5afe0b00-7697-4969-b663-5eab37d5f47e; Ip=[192.88.168.50]; Helo=[tx30smr01.am.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY2PR0301MB0631 Sender: linux-gpio-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-gpio@vger.kernel.org gpio_request_enable/disable_free actually are not quite necessary as standard IMX pinctrl binding already sets GPIO mux from device tree, e.g. VF610_PAD_PTB20__GPIO_42 or MX7D_PAD_SD2_CD_B__GPIO5_IO9 No need to do it again in gpio_request_enable. And according to Stefan: "For all GPIO I checked in upstream device trees we assign a pinctrl to the same node, so in all cases gpio_request_enable/disable is really unnecessary." So it should be safe to simply remove it. Cc: Stefan Agner Cc: Linus Walleij Cc: Alexandre Courbot Cc: Shawn Guo Cc: Fugang Duan Cc: Bai Ping Signed-off-by: Dong Aisheng Acked-by: Stefan Agner --- ChangeLog: * New patch. Instead of fixing gpio_request_enable/disable, we decided to remove it after dicussion with Stefan (see blow). https://www.spinics.net/lists/arm-kernel/msg583154.html --- drivers/pinctrl/freescale/pinctrl-imx.c | 69 --------------------------------- 1 file changed, 69 deletions(-) diff --git a/drivers/pinctrl/freescale/pinctrl-imx.c b/drivers/pinctrl/freescale/pinctrl-imx.c index fc1ba3c..505fe79 100644 --- a/drivers/pinctrl/freescale/pinctrl-imx.c +++ b/drivers/pinctrl/freescale/pinctrl-imx.c @@ -255,73 +255,6 @@ static int imx_pmx_set(struct pinctrl_dev *pctldev, unsigned selector, return 0; } -static int imx_pmx_gpio_request_enable(struct pinctrl_dev *pctldev, - struct pinctrl_gpio_range *range, unsigned offset) -{ - struct imx_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev); - struct imx_pinctrl_soc_info *info = ipctl->info; - const struct imx_pin_reg *pin_reg; - struct group_desc *grp; - struct imx_pin *imx_pin; - unsigned int pin, group; - u32 reg; - - /* Currently implementation only for shared mux/conf register */ - if (!(info->flags & SHARE_MUX_CONF_REG)) - return 0; - - pin_reg = &info->pin_regs[offset]; - if (pin_reg->mux_reg == -1) - return -EINVAL; - - /* Find the pinctrl config with GPIO mux mode for the requested pin */ - for (group = 0; group < pctldev->num_groups; group++) { - grp = pinctrl_generic_get_group(pctldev, group); - if (!grp) - continue; - for (pin = 0; pin < grp->num_pins; pin++) { - imx_pin = &((struct imx_pin *)(grp->data))[pin]; - if (imx_pin->pin == offset && !imx_pin->mux_mode) - goto mux_pin; - } - } - - return -EINVAL; - -mux_pin: - reg = readl(ipctl->base + pin_reg->mux_reg); - reg &= ~info->mux_mask; - reg |= imx_pin->config; - writel(reg, ipctl->base + pin_reg->mux_reg); - - return 0; -} - -static void imx_pmx_gpio_disable_free(struct pinctrl_dev *pctldev, - struct pinctrl_gpio_range *range, unsigned offset) -{ - struct imx_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev); - struct imx_pinctrl_soc_info *info = ipctl->info; - const struct imx_pin_reg *pin_reg; - u32 reg; - - /* - * Only Vybrid has the input/output buffer enable flags (IBE/OBE) - * They are part of the shared mux/conf register. - */ - if (!(info->flags & SHARE_MUX_CONF_REG)) - return; - - pin_reg = &info->pin_regs[offset]; - if (pin_reg->mux_reg == -1) - return; - - /* Clear IBE/OBE/PUE to disable the pin (Hi-Z) */ - reg = readl(ipctl->base + pin_reg->mux_reg); - reg &= ~0x7; - writel(reg, ipctl->base + pin_reg->mux_reg); -} - static int imx_pmx_gpio_set_direction(struct pinctrl_dev *pctldev, struct pinctrl_gpio_range *range, unsigned offset, bool input) { @@ -357,8 +290,6 @@ static const struct pinmux_ops imx_pmx_ops = { .get_function_name = pinmux_generic_get_function_name, .get_function_groups = pinmux_generic_get_function_groups, .set_mux = imx_pmx_set, - .gpio_request_enable = imx_pmx_gpio_request_enable, - .gpio_disable_free = imx_pmx_gpio_disable_free, .gpio_set_direction = imx_pmx_gpio_set_direction, };