From patchwork Tue Aug 11 03:56:48 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Heinrich Schuchardt X-Patchwork-Id: 1343161 X-Patchwork-Delegate: uboot@andestech.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=lists.denx.de (client-ip=2a01:238:438b:c500:173d:9f52:ddab:ee01; helo=phobos.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=gmx.de Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; secure) header.d=gmx.net header.i=@gmx.net header.a=rsa-sha256 header.s=badeba3b8450 header.b=lf55wEEE; dkim-atps=neutral Received: from phobos.denx.de (phobos.denx.de [IPv6:2a01:238:438b:c500:173d:9f52:ddab:ee01]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4BQfDN6WCYz9sTM for ; Tue, 11 Aug 2020 13:57:21 +1000 (AEST) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 0D6E181817; Tue, 11 Aug 2020 05:57:18 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=none (p=none dis=none) header.from=gmx.de Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (1024-bit key; secure) header.d=gmx.net header.i=@gmx.net header.b="lf55wEEE"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id 7182781988; Tue, 11 Aug 2020 05:57:17 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,FREEMAIL_FROM,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.2 Received: from mout.gmx.net (mout.gmx.net [212.227.15.18]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id D698380422 for ; Tue, 11 Aug 2020 05:57:14 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=none (p=none dis=none) header.from=gmx.de Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=xypron.glpk@gmx.de DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1597118215; bh=6VAznon//pkUBeNEeL/g2FmsuIFCAANUZ9lhJ+rloBI=; h=X-UI-Sender-Class:From:To:Cc:Subject:Date; b=lf55wEEEen1aJmgMt7bdaKNZN8QUBbhJLAJVQOjWB6dJf9zEJxcri3mJLYQsUwdle ORtmUzErmjG6fcNFXv1EgUkSke3m013roFHsVahhQP715L6HZaHbfgx+iu1H5ASc1g s+MZwAeTnUSOIpD9q43auRRaijfj3R5u3GsOikw0= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from LT02.fritz.box ([178.202.41.107]) by mail.gmx.com (mrgmx005 [212.227.17.184]) with ESMTPSA (Nemesis) id 1N63Vi-1klNHz1nkO-016SoP; Tue, 11 Aug 2020 05:56:55 +0200 From: Heinrich Schuchardt To: Rick Chen Cc: Sean Anderson , Lukas Auer , Simon Glass , Anup Patel , Daniel Schwierzeck , u-boot@lists.denx.de, Heinrich Schuchardt Subject: [PATCH 1/1] riscv: don't jump to 0x0 in handle_ipi() Date: Tue, 11 Aug 2020 05:56:48 +0200 Message-Id: <20200811035648.3284-1-xypron.glpk@gmx.de> X-Mailer: git-send-email 2.28.0 MIME-Version: 1.0 X-Provags-ID: V03:K1:WRyOIrR+QChLTyz+x/sOXsqtQpzccKg+jZcChfAEfWjK5DGE0fs rJeu9NRASU0i3kg5vbzHzlffXihkO5Sd0dzPIF1m5Ee8SbgoylS7LOGdegAH/23857sDHCc BoRMXwz9PIVI2S23lmf53kxefMnRX/kLpky9i8XxZp59i1AYazFz/XFMv1BYDo6iZ9LnbXb MKGK7wcIb7zCbjwKHZlxg== X-UI-Out-Filterresults: notjunk:1;V03:K0:zEvOA+QGe1k=:RUmc8jIWdGbKg9AxSevUT5 iBPH++TWULtya+EoF5OWs2nFno7ft4VCqnPFDnmkDPyK+g6yvyoxeuvQve92YKtF18eHuclUm UqGyAWXkvq1YYjJxviLb+xb1ucKXyGDfbMrFOrv0jLhVSmFKt0DcLcpODYjd3wpbxWts+IIeB 5r9AKK7e6dAhPK2lCdfFQsUc0etx0nWYb0CU4bTOOlRpmklfWnngh1z2767q6Bp1/z9GbuZVK ct8neIK7rhnQyXuw3ML63jd26jsBqZm9dF2sx4srFC5XXbYf7G5j0y+i/0Ygw0wQldXN8cD7e inMLmvJISoWoY5B2yZv6kClqJ+RsLZg2ElpZFiK9NtK5LN8H/MFtKaop9iSa73L7RJ0d7Y3g7 t/DQdiMx1o8nXQvUd7E9GeC2+h28x56P5cp2CoTVaK0Phmalqut6DCafjGjpEfBknFCvEbWIV Ox8sFNfqRxNllEX9ENwZsjOvX3S85rJXfoGt1VfQzslR3qBwc46JkC41burRrXEfH4hJvMcYw 6IMMiDsRFStVr4wLuoyqvsY89VqbQA+quMfaVFeBRXltMaoosk/iNsWMCv0NdhKbH1NAtQKU7 sCA2cPCpZr8S9/24/RyOjOPa2TkFtDdVrrphJudqsiYwes1EhJZo9VIFNZTvaY4AVHP0BJW9b SwZV8/9fC0ZqjcscdVZGUNQrkKzsN6KVLzpTbNJaCfOqu9P5E85RlE3mlqoVtfLXxhikKM5e5 pnj0SLhE26jOk8+tnOhx94IaOip4p/Dxs8325QSAk0rbV2kYHLfejxXfGRAqmdJvNx4/B0/lB 8PoAK0FIwLqCc48ZTuOW/pE0UTE2BQ1O3utOb3TXhRJ8Osm6zVa7aaRt4XJvq7+4eJPIWRcGI hPE0vdM1rUN4vWdDmZWFejELel/wz1zxCkyYyW0LypnTXQXQcg2fMT6egK1YcylJYWmQ2PmJO l1QL79jPo3wthEQk3G9vFUbVqU2d3upTMBTXhLb3bgmaHZ8fcbg6wQ4znun1CzUJltCd/pdb7 TFO7QFA3ji0dqoFVmeMai4qA0oYa2/0Z2Xq8n1hqYPqxLUZgsY2r9jgM0Bys2191cHTrjQE5b org3B5VdG10n5Sh3nP43dTrNzIw2/O8xX3OfBDipD+FRpDCnRAGt11RXUVbtC6e9y+rEpC1An wr7HfSULmi6QoefXa3WOKqOdmNJLlTvucuS5de5SM2QOTKsx9a5h9Y/t/K6MhK8v4x7Mlw+i9 PkiLrUtE8V6g098Rkclz4sSN0ZDMFvKwtD4G4xA== X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.34 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" X-Virus-Scanned: clamav-milter 0.102.3 at phobos.denx.de X-Virus-Status: Clean At least on the Kendryte K210: gd->arch.available_harts= 0x0000000000000003 gd->arch.ipi[0].addr= 0x0000000000000000 gd->arch.ipi[0].arg0= 0x0000000000000000 gd->arch.ipi[0].arg1= 0x0000000000000000 gd->arch.ipi[1].addr= 0x0000000000000000 gd->arch.ipi[1].arg0= 0x0000000000000000 gd->arch.ipi[1].arg1= 0x0000000000000000 We should not jump to 0x0 to handle an interrupt. Signed-off-by: Heinrich Schuchardt --- arch/riscv/lib/smp.c | 2 ++ 1 file changed, 2 insertions(+) -- 2.28.0 diff --git a/arch/riscv/lib/smp.c b/arch/riscv/lib/smp.c index ac22136314..d725fa32e8 100644 --- a/arch/riscv/lib/smp.c +++ b/arch/riscv/lib/smp.c @@ -96,6 +96,8 @@ void handle_ipi(ulong hart) return; } + if (!smp_function) + return; smp_function(hart, gd->arch.ipi[hart].arg0, gd->arch.ipi[hart].arg1); }