Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp300078pxj; Tue, 18 May 2021 03:48:04 -0700 (PDT) X-Google-Smtp-Source: ABdhPJy6t96sIAhAfoQCMXQDQdg4RPqBit7DwX0fSxMhFjJACWzxSGGUP0IJzDTsH55pwMqvWHXw X-Received: by 2002:a17:906:9141:: with SMTP id y1mr5558515ejw.111.1621334884679; Tue, 18 May 2021 03:48:04 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1621334884; cv=none; d=google.com; s=arc-20160816; b=Q4/d9tAgC13vBJM15hUSkfFpmQON+f9lAxytHTyweOTHYu907X7BlGUUU5DwraPOxu OVlhZHLyksAaXDEkg6RDLxFSwnJ8HOUaQFUyNWV9Nix5AJn6J4FVFl/7o03tg1i2JhoL a93DQAdHnSXsgm42TxwZeoY/9vqcF6mfzyHA0PAS3GHl0g2hZXBQnKpVSgc4iUocfjn+ KpzQAqkAkxeYNC+CN7Qk4nD0iu+/IRTIYMoo+w/YgqMS1MkWqr1wMnDsq2ZIFL+b0igv 9oHfYUDfPIOpAhCClxU/JDKQq8W7D5yCcM84cfsxfI0dSuViekp46/Pat1w+lEoF0p8e 7png== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=LcQKNW0USfCfOIlAlxPvs+YcfZLTh4vzZM01zuVigng=; b=lZJaJpvy7m559NvbJXZqBrzvx3M9TtgiHHtpsb7yKyalLoKJ6hvTMSbfuxCj1N+kXN QHXuRi1ulQrCrxI/5/zg79AjTnKNI9+VtCaGalTBOalMiJVJz1ZirbYraSlxlvpWntWz /depUSwGaTlvYB4FQFr1VGTxYSoEU8c3YuSmB6HvB+QXgy8ktNXJaru0IjKMMRR21vAO bWrqqCC8qPUKA4dPkPQAHBMhh6H/KPOfSlrdN2w/qBT49APcxyJ/X6YJfF6A4InISTRi jN50Rn7KVCnh7VTAoXaVhMGF5N6Irk+2QShpKYO9Pbj5NBeYsvw63y+nThNod1nvVcEH ZhFg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b="zaQI/Rx/"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id k4si17440368edv.523.2021.05.18.03.47.42; Tue, 18 May 2021 03:48:04 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b="zaQI/Rx/"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S243757AbhEQPOr (ORCPT + 99 others); Mon, 17 May 2021 11:14:47 -0400 Received: from mail.kernel.org ([198.145.29.99]:46480 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S242717AbhEQPE3 (ORCPT ); Mon, 17 May 2021 11:04:29 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 6F99A61C17; Mon, 17 May 2021 14:28:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1621261702; bh=DGejjeRC7+aoqLuuEhvVuE+mag9lvvv+H+3HISvqTwQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=zaQI/Rx/1H3J5Ja+NDPSGaRUdlOfpl8ZE2gM4gK9wwnQ28XtbraUKFemB5TLMFKD3 GQzOhVk1vFXnq+tgLqDOjsUvuw5C/1c6ogtXVwM/VtChGMnKdOjK7GqOxiEqWlVYZo CrOubGrmMUBnOhVyObp61UUb7NzEVbJnGM8K+Oxw= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Suman Anna , Mathieu Poirier , Bjorn Andersson , Sasha Levin Subject: [PATCH 5.11 143/329] remoteproc: pru: Fix wrong success return value for fw events Date: Mon, 17 May 2021 16:00:54 +0200 Message-Id: <20210517140306.949859871@linuxfoundation.org> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210517140302.043055203@linuxfoundation.org> References: <20210517140302.043055203@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Suman Anna [ Upstream commit 1fe72bcfac087dba5ab52778e0646ed9e145cd32 ] The irq_create_fwspec_mapping() returns a proper virq value on success and 0 upon any failure. The pru_handle_intrmap() treats this as an error and disposes all firmware event mappings correctly, but is returning this incorrect value as is, letting the pru_rproc_start() interpret it as a success and boot the PRU. Fix this by returning an error value back upon any such failure. While at this, revise the error trace to print some meaningful info about the failed event. Fixes: c75c9fdac66e ("remoteproc: pru: Add support for PRU specific interrupt configuration") Signed-off-by: Suman Anna Reviewed-by: Mathieu Poirier Link: https://lore.kernel.org/r/20210407155641.5501-3-s-anna@ti.com Signed-off-by: Bjorn Andersson Signed-off-by: Sasha Levin --- drivers/remoteproc/pru_rproc.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/remoteproc/pru_rproc.c b/drivers/remoteproc/pru_rproc.c index 9226b8f3fe14..dcd5ea0d1f37 100644 --- a/drivers/remoteproc/pru_rproc.c +++ b/drivers/remoteproc/pru_rproc.c @@ -339,8 +339,10 @@ static int pru_handle_intrmap(struct rproc *rproc) pru->mapped_irq[i] = irq_create_fwspec_mapping(&fwspec); if (!pru->mapped_irq[i]) { - dev_err(dev, "failed to get virq\n"); - ret = pru->mapped_irq[i]; + dev_err(dev, "failed to get virq for fw mapping %d: event %d chnl %d host %d\n", + i, fwspec.param[0], fwspec.param[1], + fwspec.param[2]); + ret = -EINVAL; goto map_fail; } } -- 2.30.2