Received: by 2002:a25:4158:0:0:0:0:0 with SMTP id o85csp355566yba; Fri, 3 May 2019 03:14:01 -0700 (PDT) X-Google-Smtp-Source: APXvYqz8r33b6F44d58XFBkUXupr++ezAxrqFRwQqyAmRmBO0P34jvL47w1TbK7pPRB1SieyaXPr X-Received: by 2002:a62:b612:: with SMTP id j18mr9824753pff.124.1556878441133; Fri, 03 May 2019 03:14:01 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1556878441; cv=none; d=google.com; s=arc-20160816; b=jIjguKaZxWoMj0HLe/EsVts4Y96LF+QMcPvqy9aclFFSFVBGXV+tEK64DFViHEQvhd CeECqcTeEILPS95qBsKHXqcMpUHnh3KfyKF1CBs/LJJsQxfgnVfwrolVaPKOp9YbHv/s //4qMQ1igqvpgCvf6qNVFPXVYGAOXR6PCKJNSAfKUBV/FwjW1DN1BhkHMdInUxb6kRpR CUByc9/h2caHQn7QmwBsE95EK7j9OAymCMu7Ba2wkwO5lYW2HYdS3ID0FUWGWI6bzZgk 0PB2XO3rmdX9VQNKTixAwhc1wur0yzTLExsrTsvTnxFBBCsyYe2swOI1gH2arOxKvyCx G1dQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=H4MP2EuBBV8F+L87gAV+VVeC6FuZ7A9Ie58x77Jd4DA=; b=HO+ZH8zv/NExHJqQsN3yBrcQGpDIf5EH6rv1GIKO5hp4o7ObVUlHBSBbgAI8de3IQs l+ETK+L6aS+T5srgFthrAHy+GJCoNZ1Yn1c6LZjYxLP1Z5vPGG2xQov+hFImu+BjmLli QTfvklsz9xJ10ffQrZT5s/xW0+8c01R2F42MvY/6KwqZmd1PgGgNRhCG/ymCqAnjw2ky ciXXEMbTTIrM1l45NAzyRPdQUrRpJhAYgeMcTp1pGOfcWWQRq9bNNVEBDfrOwvriWTpA nVh2G1sMlGGNBojdOHh1k2V0k+ZnqduSe6mU/wz7efZzeXa/xghHSPDsUD16LyNNqhwK rzhQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=fBegs+cz; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id a6si1773187pls.407.2019.05.03.03.13.45; Fri, 03 May 2019 03:14:01 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=fBegs+cz; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726476AbfECJPe (ORCPT + 99 others); Fri, 3 May 2019 05:15:34 -0400 Received: from mail-wm1-f68.google.com ([209.85.128.68]:35514 "EHLO mail-wm1-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725777AbfECJPd (ORCPT ); Fri, 3 May 2019 05:15:33 -0400 Received: by mail-wm1-f68.google.com with SMTP id y197so5839614wmd.0 for ; Fri, 03 May 2019 02:15:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=H4MP2EuBBV8F+L87gAV+VVeC6FuZ7A9Ie58x77Jd4DA=; b=fBegs+czbUd4cenk25abmkj/0agBb3A83K482HJH/V539eZouzfSyBycDHcXG4dfu0 P/5c2oTcJixd570WZfnszYWUsYnJKTyZ8XtuP/ADUHh557rpY0x6CteczGxL/DvIQLZB 9N97pJ5rwot575rN64NnzcJJndxpDpkDolnmtmQC9WSKsKlpjbXBSZKWRTEeYQ5JynJr XGV6qA6W29e48iQ3QNeQHeY/IHOi0wbIkptlir4ym0Hg9MsD/DXk6bODFuquvHIhrmv3 xucbWDEm1HJpQnLolIlb8fH+MJSF7K2P/cd/sbC6u3QXlmVh98SBRtU7yF6BVLSPW2cT Mabw== 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:mime-version :content-transfer-encoding; bh=H4MP2EuBBV8F+L87gAV+VVeC6FuZ7A9Ie58x77Jd4DA=; b=SvM146aMiXMD2lDczzs7QMtQdBNttiFUfbs8OPwS8RC2/XhIErfE2F88K7c5pSavu3 HtXr2fLQLc2cY/yTiQtINK6dCdnZD1rxTa+xx2gFkiP9FANG5aj0Ox6HP9nitlKSbhnt vmPeGgUZuNN7eP9c33mbYbQd0ww0ZANv1AJcRULLvrVlCSqd6NQ6lv26an70NA3NRN9N Xjc49DF+V14bl9RG3yiinmb5/HmxY35R4Qx1uU3FiwUcAFQkGCWyR3jqpgHz/5jX+QoS +zm8ZTRKBxT9/XZArD/I7ILLUCPulGnAxvjJAyuCv1BLiCStF9EfRQRAvMFVI6KzsQBh l1YQ== X-Gm-Message-State: APjAAAVf9qKaOgj76ImhPEW0srP6BKR+QW3Z81ThtbckcM9XvLuBVNOk ZIdERX2n5yUmlHYKF+xZ6bc= X-Received: by 2002:a1c:1903:: with SMTP id 3mr5385920wmz.103.1556874932134; Fri, 03 May 2019 02:15:32 -0700 (PDT) Received: from SiBook.guest.pepperl-fuchs.local ([80.150.243.190]) by smtp.gmail.com with ESMTPSA id v184sm2346870wma.6.2019.05.03.02.15.31 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 03 May 2019 02:15:31 -0700 (PDT) From: Simon Goldschmidt To: Dinh Nguyen Cc: Marek Vasut , Dalon Westergreen , Simon Goldschmidt , linux-arm-kernel@lists.infradead.org, Russell King , linux-kernel@vger.kernel.org Subject: [PATCH] arm: socfpga: execute cold reboot by default Date: Fri, 3 May 2019 11:15:07 +0200 Message-Id: <20190503091507.6159-1-simon.k.r.goldschmidt@gmail.com> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This changes system reboot for socfpga to issue a cold reboot by default instead of a warm reboot. Warm reboot can still be used by setting reboot_mode to REBOOT_WARM (e.g. via kernel command line 'reboot='), but this patch ensures cold reboot is issued for both REBOOT_COLD and REBOOT_HARD. Also, cold reboot is more fail safe than warm reboot has some issues at least fo CSEL=0 and BSEL=qspi, where the boot rom does not set the qspi clock to a valid range. Signed-off-by: Simon Goldschmidt --- See discussion in this thread on the u-boot ML: https://lists.denx.de/pipermail/u-boot/2019-April/367463.html --- arch/arm/mach-socfpga/socfpga.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/arch/arm/mach-socfpga/socfpga.c b/arch/arm/mach-socfpga/socfpga.c index 816da0eb6..6abfbf140 100644 --- a/arch/arm/mach-socfpga/socfpga.c +++ b/arch/arm/mach-socfpga/socfpga.c @@ -85,10 +85,10 @@ static void socfpga_cyclone5_restart(enum reboot_mode mode, const char *cmd) temp = readl(rst_manager_base_addr + SOCFPGA_RSTMGR_CTRL); - if (mode == REBOOT_HARD) - temp |= RSTMGR_CTRL_SWCOLDRSTREQ; - else + if (mode == REBOOT_WARM) temp |= RSTMGR_CTRL_SWWARMRSTREQ; + else + temp |= RSTMGR_CTRL_SWCOLDRSTREQ; writel(temp, rst_manager_base_addr + SOCFPGA_RSTMGR_CTRL); } @@ -98,10 +98,10 @@ static void socfpga_arria10_restart(enum reboot_mode mode, const char *cmd) temp = readl(rst_manager_base_addr + SOCFPGA_A10_RSTMGR_CTRL); - if (mode == REBOOT_HARD) - temp |= RSTMGR_CTRL_SWCOLDRSTREQ; - else + if (mode == REBOOT_WARM) temp |= RSTMGR_CTRL_SWWARMRSTREQ; + else + temp |= RSTMGR_CTRL_SWCOLDRSTREQ; writel(temp, rst_manager_base_addr + SOCFPGA_A10_RSTMGR_CTRL); } -- 2.20.1