From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751879AbdJBUZJ (ORCPT ); Mon, 2 Oct 2017 16:25:09 -0400 Received: from hqemgate15.nvidia.com ([216.228.121.64]:16359 "EHLO hqemgate15.nvidia.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751296AbdJBUZH (ORCPT ); Mon, 2 Oct 2017 16:25:07 -0400 X-PGP-Universal: processed; by hqpgpgate101.nvidia.com on Mon, 02 Oct 2017 13:24:50 -0700 Subject: Re: [PATCH 3/4] reset: tegra: check BPMP response return code To: Timo Alho , CC: , References: <00e7714871d7568e9fc848dc5f76d14e07984a1e.1504776489.git.talho@nvidia.com> From: Jon Hunter Message-ID: Date: Mon, 2 Oct 2017 21:24:04 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.3.0 MIME-Version: 1.0 In-Reply-To: <00e7714871d7568e9fc848dc5f76d14e07984a1e.1504776489.git.talho@nvidia.com> X-Originating-IP: [10.26.11.81] X-ClientProxiedBy: UKMAIL102.nvidia.com (10.26.138.15) To UKMAIL101.nvidia.com (10.26.138.13) Content-Type: text/plain; charset="utf-8" Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 07/09/17 10:31, Timo Alho wrote: > Add checks for return code in BPMP response message. > > Signed-off-by: Timo Alho > --- > drivers/reset/tegra/reset-bpmp.c | 9 ++++++++- > 1 file changed, 8 insertions(+), 1 deletion(-) > > diff --git a/drivers/reset/tegra/reset-bpmp.c b/drivers/reset/tegra/reset-bpmp.c > index 5daf2ee..fac2db6 100644 > --- a/drivers/reset/tegra/reset-bpmp.c > +++ b/drivers/reset/tegra/reset-bpmp.c > @@ -23,6 +23,7 @@ static int tegra_bpmp_reset_common(struct reset_controller_dev *rstc, > struct tegra_bpmp *bpmp = to_tegra_bpmp(rstc); > struct mrq_reset_request request; > struct tegra_bpmp_message msg; > + int err; > > memset(&request, 0, sizeof(request)); > request.cmd = command; > @@ -33,7 +34,13 @@ static int tegra_bpmp_reset_common(struct reset_controller_dev *rstc, > msg.tx.data = &request; > msg.tx.size = sizeof(request); > > - return tegra_bpmp_transfer(bpmp, &msg); > + err = tegra_bpmp_transfer(bpmp, &msg); > + if (err < 0) > + return err; > + else if (msg.rx.ret < 0) > + return -EINVAL; > + > + return 0; > } > > static int tegra_bpmp_reset_module(struct reset_controller_dev *rstc, Acked-by: Jon Hunter Cheers Jon -- nvpublic