From patchwork Mon Apr 23 10:33:33 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jean-Baptiste Maneyrol X-Patchwork-Id: 10356577 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 E4F3860209 for ; Mon, 23 Apr 2018 10:34:20 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id D3CA628464 for ; Mon, 23 Apr 2018 10:34:20 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id C606F28A3B; Mon, 23 Apr 2018 10:34:20 +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 335C728464 for ; Mon, 23 Apr 2018 10:34:20 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754642AbeDWKeT (ORCPT ); Mon, 23 Apr 2018 06:34:19 -0400 Received: from mail-bn3nam01on0087.outbound.protection.outlook.com ([104.47.33.87]:13568 "EHLO NAM01-BN3-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1754442AbeDWKeS (ORCPT ); Mon, 23 Apr 2018 06:34:18 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=invensense.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=/V71z1b1vVJcKVLsfpL+iou5wq3gcNsPETRjMv1xG9k=; b=Ky1gP3M1ZHdF8dy4wMGcuQVldCkrIuPy3cxWEUAlb2ZF/T6ZDw3Xfvo0cyzQBF5QS3e0LJzkX4hkuRBaJnYj8fou3rNhWaYnefpzOY6K7KO+w2Fp7KfmSdqV7rU/xKs3dpe0EUYyV38AQEA0q+xW+HXrzPPWZfiekwbxYfGmZHQ= Authentication-Results: vger.kernel.org; dkim=none (message not signed) header.d=none;vger.kernel.org; dmarc=none action=none header.from=invensense.com; Received: from frgnb-l-34296kv.invcorp.invensense.com (2a01:e35:87fd:c140:39a5:e592:8e24:6975) by BN6PR1201MB0178.namprd12.prod.outlook.com (2603:10b6:405:56::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.696.12; Mon, 23 Apr 2018 10:34:16 +0000 From: Jean-Baptiste Maneyrol To: linux-iio@vger.kernel.org Cc: Jean-Baptiste Maneyrol Subject: [PATCH v4 4/4] iio: imu: inv_mpu6050: clean read channel data error path Date: Mon, 23 Apr 2018 12:33:33 +0200 Message-Id: <1524479613-23954-4-git-send-email-jmaneyrol@invensense.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1524479613-23954-1-git-send-email-jmaneyrol@invensense.com> References: <1524479613-23954-1-git-send-email-jmaneyrol@invensense.com> MIME-Version: 1.0 X-Originating-IP: [2a01:e35:87fd:c140:39a5:e592:8e24:6975] X-ClientProxiedBy: DB6PR0601CA0023.eurprd06.prod.outlook.com (2603:10a6:4:7b::33) To BN6PR1201MB0178.namprd12.prod.outlook.com (2603:10b6:405:56::10) X-MS-PublicTrafficType: Email X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(5600026)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020); SRVR:BN6PR1201MB0178; X-Microsoft-Exchange-Diagnostics: 1; BN6PR1201MB0178; 3:kRaQ6mHWTu4QxvXQwOF9LMj1dAsPI53wpjJC6J1U683TAo/cV+ZEK5n1dvqUnJar4KY4/Eok8u5dklBIL7/FT20RtpFtbQVXZy/MjYw1qp9IXW/LUNE3P8+CLkaAJfJHT9QfA1+LsP3Jh64bROm67RwsFBvM+EontKvoRIvtwVg1xmV7JjcvVapPfZcnXK51Xy2VqnBMT17FmRRb1uCRYkwD+T7f1q/5xR9f7/fZFtlzCfwKSJkey2Je1iRz8Kl1; 25:RnbJfGsqWVuxBKzpMyBa3YkeDX7H+rSSzkkrZZEhgMOUXmu5DA6xv0112xYQfUN3ikCQI3CjEVMhtgsg19Gwpd4t6xYTmk6Bo1Bqpy96XVbiE+0FGMluAU7tdFF5DEMokbUFNpFnENJoYoul8uZA1NcLqCXcojzOpL4ekduTllfW/qlHK/jgMT3lruc2ktgzPoDvE4zsUpubAi3xDWWN0MgpZLNlrvlvCTa7C3zy18USYeJwN7eK0Qi9HQYCzITZ1YQhSFC75as6wLl41QbELpK+dP9VcWRrpEXxX0oP+xsGUH3mtiti6c6AYQrEXYTzyOxxdG0PbS6PvulfNT0WqQ==; 31:k5ABU+oiPaer4IgEnw8xI23h+i/lxyexpl1Y2/AbAb6YFrN2M6SbFR1V+9Axfu2yhqtBu5B+4L8zHbh1+JrM7ySz4zQFT+zsjZI1xD33oiercpcoNUrF64smpM+qNhpYRY6WgpGBK934TJstyniNK+T586yrBlLVtVMCcHjPdJ4X9qec4g/5dBveu4wHhQQbtMJyf2TQV2zPxi1oQ8EKzRxeqp2hBNtx2+Kt+o4JCeE= X-MS-TrafficTypeDiagnostic: BN6PR1201MB0178: X-Microsoft-Exchange-Diagnostics: 1; BN6PR1201MB0178; 20:hi3UkSAk9vAZaYbWgXIpqzRlLqDdJs8Bmmgpo41cQlUQo+K84PQedYgPb9WhFpF0LtMgZMR6NziiVMG2hl3lt4qOg5i9zBuuhqcE9mSKY5EH2nsjGi39+riEw9VHmHMZa6N95615/pXGInTcgBsbujF5fyBnNVLAOSItPZbRLe9T29xjBXorSq+IjcgNf5RRmqbEhwfzyhq8bsfl9qsE7UAFrBfVWCMn+gnxmZr9Acj/EyK8XzaFsbD8zZCxy9/1AR1PDWq267D30wdboh1f3o4AUJEDOQ9cO7HntayouLYAi+1r9jStxn8OOXCjJQc8C56xcC9d7k6ueHunW8JH25EuWMJOEdDlIb5/zO2+DP7tcxnTKS1qfWcQSrDH2HbqKG1oQP2E6TAxeb/pUOrseXZITEN8i/cd4/gUdc4pO59u4h1oyEwJ6EJy2TUz29UXpjzgOkPKPXtUZLiIGa3imOSPheHZc4cD+CgX0yoqTcl7x+Ve/chmWfFwQuYn0L51; 4:s6nv7KR6uw9v3KtaCdi1kUx+R77vE9BU6+ZXesqRsI5Y80fPMVDhBv6AMvBMFskajloWRjTA6kBLX0+eQMTS5zIAkhjB+AF8v6bcb1/Gjbj+M7PNS4jEM/HoRz/dQ+RpLoZmOpsimY2aj09Q+NxegVOG2EK5GzYhSXe8cbpMLefg7jIOiOx3FiOR7AWxn+XK34zm8rY7nAXiNbIiChACBnIxLRfZ8uqgJCnnh7/KOvj0/kSsTlX9uA/FollCvmCgJYbEBsGSwvPkWWIZb8mRBoqHL1k2ZFIl9nx7zg7t3K5umi/9eco7HBczFL9QpIGu X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(257004950022427); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040522)(2401047)(8121501046)(5005006)(93006095)(93001095)(3002001)(3231232)(944501410)(52105095)(10201501046)(6041310)(20161123564045)(20161123558120)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(6072148)(201708071742011); SRVR:BN6PR1201MB0178; BCL:0; PCL:0; RULEID:; SRVR:BN6PR1201MB0178; X-Forefront-PRVS: 06515DA04B X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(39850400004)(376002)(396003)(346002)(39380400002)(366004)(36756003)(305945005)(5660300001)(6116002)(50466002)(48376002)(2906002)(80792005)(81166006)(8676002)(59450400001)(47776003)(86362001)(8936002)(50226002)(2351001)(72206003)(386003)(7736002)(25786009)(2616005)(11346002)(446003)(46003)(476003)(76176011)(16526019)(186003)(52116002)(478600001)(7696005)(6666003)(53936002)(52396003)(2361001)(16586007)(6486002)(4326008)(316002)(6916009)(107886003); DIR:OUT; SFP:1101; SCL:1; SRVR:BN6PR1201MB0178; H:frgnb-l-34296kv.invcorp.invensense.com; FPR:; SPF:None; LANG:en; MLV:sfv; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BN6PR1201MB0178; 23:Flbs748GNiQyniWcEsxU1KGgSljqMnLS8Uru/tT?= =?us-ascii?Q?Ww+P4PTUVuHerm1r3y5TDKyu1XN5OTJPwD/34oTPZAE+gfzWsbTEEWAfgwpk?= =?us-ascii?Q?lSINu7DHgQM1Akdd7WO3kuHL5S7JLOx0+UVSoMp2Td86QuleK47fcBGIEFcG?= =?us-ascii?Q?PSlJi4veyhbZZNm16EvDY4WRaLTd9srLSYwXrZqNrfGK5hzzDPt9x9Q50I7O?= =?us-ascii?Q?sl9dP9jkXnPX5M+FUHf8ipGCKd0ljow8q6ULUgLy2kwMKaLwWWnH59xDJh+B?= =?us-ascii?Q?cKITHUhRyPopSgKXwumZNuNWe7h6zQsrdBFVbHv7xrKtd8qwdfDeAUVGX1tb?= =?us-ascii?Q?Za6/dGAsY57+ULVsRc8LVpcSLaHWov2xPb9/BDg27TJAy2YmSYc1aNv5K5ii?= =?us-ascii?Q?Pij2c0Md3kVDESgzgFv/EG3bkGHJTnvN7uf33GL0vPVpzXDCge6DUzuT1/TA?= =?us-ascii?Q?d7fyv6vu+EZAaG4b54V9gpTp3IC4XxzKDT9LtsyEucgnUDUb7MWtoDLwJDyQ?= =?us-ascii?Q?0FSYsB8hQt5crCWv4DRMtZi9kxeAGfWsgP1Bgo+oqWplrNYzDTcPmEWIBkb3?= =?us-ascii?Q?lbf0BlghdfAMoIOyw6wYgn2Z7U4Vs2/kYRJ9O1qpXCurjnJLg2tdv/nH08/E?= =?us-ascii?Q?3gm7QoPJRESt7itsHdfb4SGMwbJBuVr2KCGqRBD3eDVpE3+wbOaVDlLat1tj?= =?us-ascii?Q?62z3vI8Dk/wfHI+8MQSwIY7JnY+J+tConQi1pnN6DZJC7jXrjeIrAF0E8DKz?= =?us-ascii?Q?DSkP7ai+qv+DdAfJemQCEttVC9Tp9gG9R+AznNXC6PwN/ZCXZ19G0y64jv2L?= =?us-ascii?Q?ViYoeeDmvixKxaNyNwLrlKWU36xD3As1TDyMGu/DoOSq/JyKopvG8yTgiLqu?= =?us-ascii?Q?XSPBgNlaUfHuwJq2psV+E/dPE5DxUWDO2XPIaJLSj0Vq7hL6juMJOTXqI+Ml?= =?us-ascii?Q?Yu8Z/NUNbQd7khB8p0f6pVmggWLAB/cSwYH2fjjWV/PIs68viZM8kiJsNzqH?= =?us-ascii?Q?z+EpehICfxG+8ZoRSDwNLaD9yV8MKf0rZdxehy6Aaz4suBuIAwlMoCb1lV4D?= =?us-ascii?Q?OXFf+BfYpLdfGkxVWN9L3IMgUt97R?= X-Microsoft-Antispam-Message-Info: MPtoRDjdixhkIZ5L6Yrfkn7pVpb9p3P1hG7lGbtzBLP7h1/CF9+ONnGManzqLHP3IlW/b6PrEK/aI92CCWc1G0DV/e2m4Jb5I6uYC07kZNiXpZT5nHgP+IUCuk1w/Y+HW3oDKdwvshWiUfHILwAhk0EnRJyW5l5p7XaGHwvghUDn09lDIDn73/JuBBuKv66A X-Microsoft-Exchange-Diagnostics: 1; BN6PR1201MB0178; 6:QQS36aa/BwexfP9Pw4pmyaJJ7wqcGSL7zIoM9IbPnBRYB9dtXLZkC5c7JmYOHp6d1RrLxX2bx4bgfuE/qX+ODWu2SitWvwqm5Gq0NNOI9mDFbq3gCB96VtsLEGXeMAqHUL3uvfpCCs4+FctQaLHgJbayqu+lsBCk9cmNS/8o1hx8Ufnv+7jCB+Ea8XA1GVTkpMqe3LnCxu8vCfKree2SJHSiNgiJkUOaKwFhgUoOJkAyQIf1c4WF3wUgj/ua/oFQQMim75U656SDoi7MghN7omh1tKXcIICit8uarErC0CNs2gBelelHiJXjxu547IK5QzsO4nw/HLK+763uVoqb+UKp1sf+9vvby1SxrzR56LI2K0fWWRKD0wCo7lWbY491HrSAJmPdpXz5cr/VOjw7Y5NsGigUyogOw48k9yXVjr+67ixKLgy4j/LkYq5SCXTMn6ORthAJnfh8231mS6Xyyw==; 5:9+efkegmvbLEt9mQKp445ForLc8wgou/qvVsdP3suCTxdu3YVPIAs5I/+QZV+2Ce+bmMLX1Mpe4mYx7diFZihQ3s/VgJlhRsQg17EhwT85gHolRzimCbSLb13TcuLvMGAFdvjXH77z6ABkRqqn1J6Zqc5YlyJqStFTFfEh09YlY=; 24:UoZSwbGllcAVEWg8a3v4y5B27J5b1NvR1ZDrGEJfUOf78gANfJtWc7bPrQkvJ67mlCSb/KKsLK6hoHem7qn1c8OcAh+m4XXRGBS4dArP9EQ= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BN6PR1201MB0178; 7:LmKdWcCOzpjQb402cNyp15M+S5amKsHE0H951UOZV6jqx+KJR1QKIh9GhksClMLquZwgtpJ9s4Iok684ANFL3IHfJjJIdEVMkCp+d/Q9HbgbzrjEgfVtcA7xILfladOjE2vlyNNFMMLkhGw1vzrCxDl9Xp+t/sbEoxKAg7BJQJKedA8AFpD7Unusyfum0PGO49DLSoYE7r9IURhpWbQXdNmou9jz3yt6nLLAOtPHwHg+JvSl0tOw6+mtc4OGel6O X-MS-Office365-Filtering-Correlation-Id: ccf44a58-28f4-4270-0131-08d5a905c439 X-OriginatorOrg: invensense.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Apr 2018 10:34:16.8700 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: ccf44a58-28f4-4270-0131-08d5a905c439 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 462b3b3b-e42b-47ea-801a-f1581aac892d X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR1201MB0178 Sender: linux-iio-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-iio@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Delete the useless ored result and give a second chance to turn the chip back off at the end. Signed-off-by: Jean-Baptiste Maneyrol --- drivers/iio/imu/inv_mpu6050/inv_mpu_core.c | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/drivers/iio/imu/inv_mpu6050/inv_mpu_core.c b/drivers/iio/imu/inv_mpu6050/inv_mpu_core.c index 79b44fd..aafa777 100644 --- a/drivers/iio/imu/inv_mpu6050/inv_mpu_core.c +++ b/drivers/iio/imu/inv_mpu6050/inv_mpu_core.c @@ -338,7 +338,7 @@ static int inv_mpu6050_read_channel_data(struct iio_dev *indio_dev, { struct inv_mpu6050_state *st = iio_priv(indio_dev); int result; - int ret = IIO_VAL_INT; + int ret; result = iio_device_claim_direct_mode(indio_dev); if (result) @@ -383,14 +383,18 @@ static int inv_mpu6050_read_channel_data(struct iio_dev *indio_dev, break; } -error_power_off: - result |= inv_mpu6050_set_power_itg(st, false); -error_release: - iio_device_release_direct_mode(indio_dev); + result = inv_mpu6050_set_power_itg(st, false); if (result) - return result; + goto error_power_off; + iio_device_release_direct_mode(indio_dev); return ret; + +error_power_off: + inv_mpu6050_set_power_itg(st, false); +error_release: + iio_device_release_direct_mode(indio_dev); + return result; } static int