From patchwork Wed Mar 31 20:16:40 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Igor Opaniuk X-Patchwork-Id: 1460703 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; dkim=pass (2048-bit key; unprotected) header.d=foundries.io header.i=@foundries.io header.a=rsa-sha256 header.s=google header.b=OyKDkdjA; 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 4F9d032KKKz9sRf for ; Thu, 1 Apr 2021 07:17:23 +1100 (AEDT) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 2C5C082900; Wed, 31 Mar 2021 22:17:08 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=none (p=none dis=none) header.from=foundries.io Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (2048-bit key; unprotected) header.d=foundries.io header.i=@foundries.io header.b="OyKDkdjA"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id 715CE828A4; Wed, 31 Mar 2021 22:16:55 +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=-2.0 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,SPF_HELO_NONE autolearn=ham autolearn_force=no version=3.4.2 Received: from mail-lj1-x232.google.com (mail-lj1-x232.google.com [IPv6:2a00:1450:4864:20::232]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id 77756828A4 for ; Wed, 31 Mar 2021 22:16:50 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=none (p=none dis=none) header.from=foundries.io Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=igor.opaniuk@foundries.io Received: by mail-lj1-x232.google.com with SMTP id u10so25384574lju.7 for ; Wed, 31 Mar 2021 13:16:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=foundries.io; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=A+zTVYtrqMU3tGEdAWgJ6NWcI6UmlZR3d2orcQu2W/A=; b=OyKDkdjA6r7wEIdxWgDfOBqi6vwvOBtoiIksaBJjzb38Js/uveY2s+xiaNdx3Z3qK1 TcD/1V3GiUgcBmLDthYwYQFKIMd+SLxTxAGmT7IlpOawEzgW/hiRMFmXdr9V894ZAUL8 5n5kegogtEwfBzGIDEEUoVbff/tzOGHq0K53kpLMrKEuih+fRpSFUtIMi2Cld0mY9GMv 3Qud7l2CGrIFui2oeG2WxXs/yvJBD8e6X86gt38vMl+T1krgfYLaoiuUaVO5CMLH07kO dW5+Wxle1JCi50WUX62crl6Nwy/sV8Di1IK6R4Fdy24aO+ZKNu8qej8ZlwsTD250t0Lv cv+w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=A+zTVYtrqMU3tGEdAWgJ6NWcI6UmlZR3d2orcQu2W/A=; b=RjX8127iuPe7PJNXr9eglUzfG9Wyzmp85T0l/NIROvLRvDuqlF6EB1P4rZGC3SlaQ+ 56dd8LT+e243/CIbimkeV5sul5gWGOzmMkiEXmN9fBDsCrQU7a8DAJ3C+Ix/k2b78xMO e6pnrFYmmgO79ycefgSm/86T9hh/4Cc7QV12/dvux9vVnOdF609I1J9ZrSg9z6OtOwvp xUx3pxW62XecNEDFEp2mfdPVpvL32r3ZAS/uBtTJfqPgOUksQA9BWKBaTOOE7tyWpt5j Rw/JgaWjfklxDTbQI7MqhPZhYwLUKSsVrNos0e2F7jXHmZfvlJ7JHrivdM/273SqNzqn 5xAg== X-Gm-Message-State: AOAM533GvjLcxZRrYRq5UjJ+0vOh+nb2om63JZoV7Vy5w6hZuNXWA2UZ QewLDtFInUqcUkoy9bBaEb+Vor1aW4aFs0li X-Google-Smtp-Source: ABdhPJwiF6vuQ71cO3ckqjtD2yVWQ7a3rg8OgpA4mP6HDh6iX6vWOoEaiNHS+uDegEISxp07ySKnXg== X-Received: by 2002:a2e:958c:: with SMTP id w12mr3183044ljh.117.1617221809583; Wed, 31 Mar 2021 13:16:49 -0700 (PDT) Received: from localhost ([109.108.76.111]) by smtp.gmail.com with ESMTPSA id q26sm359301ljg.90.2021.03.31.13.16.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 31 Mar 2021 13:16:49 -0700 (PDT) From: Igor Opaniuk X-Google-Original-From: Igor Opaniuk To: u-boot@lists.denx.de Cc: jorge@foundries.io, patrick.delaunay@foss.st.com, daiane.angolini@foundries.io, vanessa.maegima@foundries.io, ricardo@foundries.io, xypron.glpk@gmx.de, mike@foundries.io, tim.anderson@foundries.io, Igor Opaniuk , Bin Meng , Priyanka Jain , Simon Glass Subject: [PATCH v3 3/4] sysreset: provide type of reset in do_reset cmd Date: Wed, 31 Mar 2021 23:16:40 +0300 Message-Id: <20210331201641.1422171-4-igor.opaniuk@gmail.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20210331201641.1422171-1-igor.opaniuk@gmail.com> References: <20210331201641.1422171-1-igor.opaniuk@gmail.com> MIME-Version: 1.0 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.4 at phobos.denx.de X-Virus-Status: Clean From: Igor Opaniuk Add additional param for reset cmd, which provides type of reset. Signed-off-by: Igor Opaniuk --- cmd/boot.c | 2 +- drivers/sysreset/sysreset-uclass.c | 11 ++++++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/cmd/boot.c b/cmd/boot.c index 36aba22b30..b84c0ed89e 100644 --- a/cmd/boot.c +++ b/cmd/boot.c @@ -56,7 +56,7 @@ U_BOOT_CMD( #endif U_BOOT_CMD( - reset, 1, 0, do_reset, + reset, 2, 0, do_reset, "Perform RESET of the CPU", "" ); diff --git a/drivers/sysreset/sysreset-uclass.c b/drivers/sysreset/sysreset-uclass.c index 6c9dc7a384..0412c4a29b 100644 --- a/drivers/sysreset/sysreset-uclass.c +++ b/drivers/sysreset/sysreset-uclass.c @@ -122,10 +122,19 @@ void reset_cpu(ulong addr) #if IS_ENABLED(CONFIG_SYSRESET_CMD_RESET) int do_reset(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]) { + enum sysreset_t reset_type = SYSRESET_COLD; + + if (argc > 2) + return CMD_RET_USAGE; + + if (argc == 2 && argv[1][0] == '-' && argv[1][1] == 'w') { + reset_type = SYSRESET_WARM; + } + printf("resetting ...\n"); mdelay(100); - sysreset_walk_halt(SYSRESET_COLD); + sysreset_walk_halt(reset_type); return 0; }