From patchwork Tue Jul 14 09:32:25 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jagan Teki X-Patchwork-Id: 11662163 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id EFD42913 for ; Tue, 14 Jul 2020 09:34:36 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id A659D212CC for ; Tue, 14 Jul 2020 09:34:36 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="fexQM/j7"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=amarulasolutions.com header.i=@amarulasolutions.com header.b="Fq+qKjjz" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org A659D212CC Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=amarulasolutions.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-rockchip-bounces+patchwork-linux-rockchip=patchwork.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To:Message-Id:Date: Subject:To:From:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=eV1uYqwTssfvqCBnC9mzxxBxwyRU6zJ48cXEB+9QM/k=; b=fexQM/j7htySw/uVUwK52j7uv L180RruGXf309J/jGJkuryHHW9HZuHDIIw2euzLc3nRtXdcdjFXInatyd8tr3wyDjy711XjP6q8Qo pkaf+9AwfjPN8piopdbHU3yXN5METJ/74DCn6RPc96ZGUq0u6IXuvkg1JEmTOTnncDYSh6GJcqdET yi/S5zfL2LVfLpkWvs0pslN2Mw6LIBZ8IWTI+7JUm3KbYU06SRsPf8ovOEmj92Xtz9yDpcPqO2Uch dOSGdxk7T9uMdmA+x2wG+/SZ4cOhJcFEBkl6ayiUFJ5ikyGzMScQ1msv2zPSPiRyssD3sar68zML1 pjShznAtA==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1jvHKY-0003xO-7N; Tue, 14 Jul 2020 09:34:30 +0000 Received: from mail-pg1-x543.google.com ([2607:f8b0:4864:20::543]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1jvHJO-0003Mj-2u for linux-rockchip@lists.infradead.org; Tue, 14 Jul 2020 09:33:22 +0000 Received: by mail-pg1-x543.google.com with SMTP id l63so7342477pge.12 for ; Tue, 14 Jul 2020 02:33:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=kwTRhpuTxc9sDdo38EGgjW1TMyLLnsJC2wQxEispCl0=; b=Fq+qKjjzwJVXejxYlqf0buDds8/FOIw3e59ZpZokwirMbr/XNMiv7cnfBJWuNXNmJr jtG/YHd0OG1k6GClsLwqNTnEU3417I/+giw9oZdwPF8kY6Vo60ksbETvyltkbOxXO6e9 V4Ljc477TqT5eKjZNpJbEG06vLvjbGZUKCZ40= 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=kwTRhpuTxc9sDdo38EGgjW1TMyLLnsJC2wQxEispCl0=; b=c+HyS25+Ke0cv/FKczTZ+Dsa/vdQflljB0eRI1Z3agCziOZ7SbwGz2/rxJBxJU9p34 dvGlKmyI/SI706+ZTorQ6jnuqGWZJT+msj0qKO1My6EJcSU7W5xxbooVIMcaPnHaB8qj ATbMIFQns2kjVphdaFZ9t11ol1vCBrCDU9gX6yXHEPRADD9zKzpTQ8YqZ3whPS9rXdiS J4C1RixdypA6oteW7jCRTLYbMa71XN/AONkLwdZxc1IS4N/gstLN/okmfDXfFv3IAv8r tv3M0/C9AEm8YCEGrghxCBoa0zgNiaQFr/wDTmTfFlS45xbiToKcb4P/pBecTNck3By6 h2PQ== X-Gm-Message-State: AOAM531qZsBO9wFezvthuQjERzMwAK5PXghz6YLoY79IUfcviebs1nb4 tNOiBstouKI1vSPd3wCtPExu1Q== X-Google-Smtp-Source: ABdhPJzSM7Il32CNVmalz1VmQVw09+tdcG2774qgoDHmOKIBGVMy+UysZa6pcmHXuUIlayamDd31AA== X-Received: by 2002:a63:4e51:: with SMTP id o17mr2848616pgl.315.1594719195308; Tue, 14 Jul 2020 02:33:15 -0700 (PDT) Received: from localhost.localdomain ([2405:201:c809:c7d5:659e:b3d0:e662:3980]) by smtp.gmail.com with ESMTPSA id g6sm16924771pfr.129.2020.07.14.02.33.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 14 Jul 2020 02:33:14 -0700 (PDT) From: Jagan Teki To: Kever Yang , Philipp Tomsich , Simon Glass Subject: [PATCH v5 1/5] roc-rk3399-pc: Move leds setup in SPL Date: Tue, 14 Jul 2020 15:02:25 +0530 Message-Id: <20200714093229.28763-2-jagan@amarulasolutions.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20200714093229.28763-1-jagan@amarulasolutions.com> References: <20200714093229.28763-1-jagan@amarulasolutions.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200714_053318_826247_0410DD31 X-CRM114-Status: GOOD ( 15.41 ) X-Spam-Score: -0.2 (/) X-Spam-Report: SpamAssassin version 3.4.4 on merlin.infradead.org summary: Content analysis details: (-0.2 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no trust [2607:f8b0:4864:20:0:0:0:543 listed in] [list.dnswl.org] -0.0 SPF_PASS SPF: sender matches SPF record 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain X-BeenThere: linux-rockchip@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Upstream kernel work for Rockchip platforms List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: U-Boot-Denx , linux-rockchip@lists.infradead.org, linux-amarula , Jagan Teki , Suniel Mahesh Sender: "Linux-rockchip" Errors-To: linux-rockchip-bounces+patchwork-linux-rockchip=patchwork.kernel.org@lists.infradead.org roc-rk3399-pc has some specific requirements to support LEDS, environment. board detection and etc prior to U-Boot proper. So as of now SPL would be a better stage for these custom board requirements to support unlike TPL. Adding few of these custom requirements like LEDS in TPL would require extra code pulling and also the size of TPL can grow. So, this patch moves the leds code from TPL into SPL after relocation. Signed-off-by: Jagan Teki Reviewed-by: Kever Yang --- Changes for v5 - drop tpl.c file - update the code in board file arch/arm/mach-rockchip/tpl.c | 7 ---- board/firefly/roc-pc-rk3399/roc-pc-rk3399.c | 36 +++++++++++---------- configs/roc-pc-mezzanine-rk3399_defconfig | 2 +- configs/roc-pc-rk3399_defconfig | 2 +- 4 files changed, 21 insertions(+), 26 deletions(-) diff --git a/arch/arm/mach-rockchip/tpl.c b/arch/arm/mach-rockchip/tpl.c index 88f80b05a9..cc908e1b0e 100644 --- a/arch/arm/mach-rockchip/tpl.c +++ b/arch/arm/mach-rockchip/tpl.c @@ -43,18 +43,11 @@ __weak void rockchip_stimer_init(void) TIMER_CONTROL_REG); } -__weak int board_early_init_f(void) -{ - return 0; -} - void board_init_f(ulong dummy) { struct udevice *dev; int ret; - board_early_init_f(); - #if defined(CONFIG_DEBUG_UART) && defined(CONFIG_TPL_SERIAL_SUPPORT) /* * Debug UART can be used from here if required: diff --git a/board/firefly/roc-pc-rk3399/roc-pc-rk3399.c b/board/firefly/roc-pc-rk3399/roc-pc-rk3399.c index 7c3a803654..4db3dd739c 100644 --- a/board/firefly/roc-pc-rk3399/roc-pc-rk3399.c +++ b/board/firefly/roc-pc-rk3399/roc-pc-rk3399.c @@ -6,14 +6,24 @@ #include #include #include -#include -#include #include -#include +#include + #include -#ifndef CONFIG_SPL_BUILD -int board_early_init_f(void) +#define GPIO0_BASE 0xff720000 + +static int led_setup(void) +{ + struct rockchip_gpio_regs * const gpio0 = (void *)GPIO0_BASE; + + /* Turn on red LED, indicating full power mode */ + spl_gpio_output(gpio0, GPIO(BANK_B, 5), 1); + + return 0; +} + +static int roc_pc_early_init_f(void) { struct udevice *regulator; int ret; @@ -30,19 +40,11 @@ int board_early_init_f(void) out: return 0; } -#endif - -#if defined(CONFIG_TPL_BUILD) - -#define GPIO0_BASE 0xff720000 int board_early_init_f(void) { - struct rockchip_gpio_regs * const gpio0 = (void *)GPIO0_BASE; - - /* Turn on red LED, indicating full power mode */ - spl_gpio_output(gpio0, GPIO(BANK_B, 5), 1); - - return 0; + if (IS_ENABLED(CONFIG_SPL_BUILD)) + return led_setup(); + else + return roc_pc_early_init_f(); } -#endif diff --git a/configs/roc-pc-mezzanine-rk3399_defconfig b/configs/roc-pc-mezzanine-rk3399_defconfig index c87a8568fc..15d511741f 100644 --- a/configs/roc-pc-mezzanine-rk3399_defconfig +++ b/configs/roc-pc-mezzanine-rk3399_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_ARCH_ROCKCHIP=y CONFIG_SYS_TEXT_BASE=0x00200000 +CONFIG_SPL_GPIO_SUPPORT=y CONFIG_ENV_SIZE=0x8000 CONFIG_ENV_OFFSET=0x3F8000 CONFIG_ENV_SECT_SIZE=0x1000 @@ -21,7 +22,6 @@ CONFIG_SPL_STACK_R=y CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000 CONFIG_SPL_SPI_LOAD=y CONFIG_TPL=y -CONFIG_TPL_GPIO_SUPPORT=y CONFIG_CMD_BOOTZ=y CONFIG_CMD_GPT=y CONFIG_CMD_MMC=y diff --git a/configs/roc-pc-rk3399_defconfig b/configs/roc-pc-rk3399_defconfig index 601f5c6ae1..2a6d0d22c8 100644 --- a/configs/roc-pc-rk3399_defconfig +++ b/configs/roc-pc-rk3399_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_ARCH_ROCKCHIP=y CONFIG_SYS_TEXT_BASE=0x00200000 +CONFIG_SPL_GPIO_SUPPORT=y CONFIG_ENV_SIZE=0x8000 CONFIG_ENV_OFFSET=0x3F8000 CONFIG_ENV_SECT_SIZE=0x1000 @@ -21,7 +22,6 @@ CONFIG_SPL_STACK_R=y CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000 CONFIG_SPL_SPI_LOAD=y CONFIG_TPL=y -CONFIG_TPL_GPIO_SUPPORT=y CONFIG_CMD_BOOTZ=y CONFIG_CMD_GPT=y CONFIG_CMD_MMC=y From patchwork Tue Jul 14 09:32:26 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jagan Teki X-Patchwork-Id: 11662165 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 8256E913 for ; Tue, 14 Jul 2020 09:34:48 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 21AE2212CC for ; Tue, 14 Jul 2020 09:34:48 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="YPMwLPzO"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=amarulasolutions.com header.i=@amarulasolutions.com header.b="OjhN1Yx+" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 21AE2212CC Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=amarulasolutions.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-rockchip-bounces+patchwork-linux-rockchip=patchwork.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To:Message-Id:Date: Subject:To:From:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=jf5Rnv7q7BV3HBctwTMvQOXsAGftAn1bFDxAk4zpDNs=; b=YPMwLPzOCwNy5B3bycVaAdgvX 4WYt1a1Ehwfq7qTkHQCDxiftp/uffsADhQ0kNFplRcDe57gZgSMux97A6i85MLP9ZatFCZqKozBNB wVpi8Hf3Kn2aZIa6r8fEEQSg2MLoZWjGcoRAY6/cMJP9WaQMn0HtXL/CCq6x8hisUn4ScuqyHgS4K ebXevYIj0wEMAbEF9TUIat9swizCHpOmbphe0mv31D0WDeXRB8VNsxDv5rxzi23h8mAMVxxt7zl9j uD1wtVzfaNcV8yulWqdhjNEojmNqqFs08MYnVXnbz4Kz7AluhzeMiuhRf3BU7LCNZPYH4GQqgv8Mi yuDJJYkVw==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1jvHKi-00041z-Op; Tue, 14 Jul 2020 09:34:40 +0000 Received: from mail-pl1-x643.google.com ([2607:f8b0:4864:20::643]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1jvHJb-0003TD-Pm for linux-rockchip@lists.infradead.org; Tue, 14 Jul 2020 09:33:34 +0000 Received: by mail-pl1-x643.google.com with SMTP id k5so6777427plk.13 for ; Tue, 14 Jul 2020 02:33:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=Kbsd57x0jxMnHOGcZlWuIFI1qJSopginWYnBL/irn1Q=; b=OjhN1Yx+b/jlxmahBPK/DaW8GBKt431iGv05xv/LDD5UkeCXFfSOnflybZVJAwyxLm zkka0C1tokMy+tN98v1BJ8rid/vpk7+bu3ZwiE7uvnK3JoUYFJqQdjTm1571aoWPQ7bS +dMDyvgoKmCFxt0vfsWw33BUALRr3LnwoTIF4= 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=Kbsd57x0jxMnHOGcZlWuIFI1qJSopginWYnBL/irn1Q=; b=uahBYa7BhkekAtCXjYMTLWnSOJCzMQu82gx5TcAgTxaub5nvglu/sbUG5EurBJtaPc 4KhE5dkSKJJg1a7uLNgmsADXBfgx4mFfhQle8ruo+U3bum/MpKYd2kRhaTapJvJLD0Om s7sDt/tJ6DJjvsTI5WiqhWVXuE2+Q5/3dWBa/cKE5lptjmfS2wWqGoLhmIuYM4Ffk22Y rwRY9Kkui4Gl9dH1oreG9MJ2K28/SkOTEoX8CoGk0nAO12OwQTJpqLhAHAYAtA2HR+W/ GE4CLu53m1pasStR3HVxwl3msuYrkvIvUnAEF0jf7qrwmqOVspUHIQBt/LmXI+Vrprsw u6Xw== X-Gm-Message-State: AOAM530/N1zgmocBH8PT8NtdP9QWJJGAZUDK2ONxKifOh+6TtplCol7U z9ovXc+B4w3pkYC0yJ1Y2Ra2FQ== X-Google-Smtp-Source: ABdhPJz0edsrU32Jy9MIuV/ZdKjwSeYjvQ2tNQg9txZjwJPAofAdNwyPItlGcU65Fdw/KQBaEiuUJg== X-Received: by 2002:a17:902:c181:: with SMTP id d1mr3131662pld.176.1594719208551; Tue, 14 Jul 2020 02:33:28 -0700 (PDT) Received: from localhost.localdomain ([2405:201:c809:c7d5:659e:b3d0:e662:3980]) by smtp.gmail.com with ESMTPSA id g6sm16924771pfr.129.2020.07.14.02.33.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 14 Jul 2020 02:33:27 -0700 (PDT) From: Jagan Teki To: Kever Yang , Philipp Tomsich , Simon Glass Subject: [PATCH v5 2/5] rockchip: Don't clear the reset status reg Date: Tue, 14 Jul 2020 15:02:26 +0530 Message-Id: <20200714093229.28763-3-jagan@amarulasolutions.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20200714093229.28763-1-jagan@amarulasolutions.com> References: <20200714093229.28763-1-jagan@amarulasolutions.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200714_053332_139552_688DF77B X-CRM114-Status: UNSURE ( 9.56 ) X-CRM114-Notice: Please train this message. X-Spam-Score: -0.2 (/) X-Spam-Report: SpamAssassin version 3.4.4 on merlin.infradead.org summary: Content analysis details: (-0.2 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no trust [2607:f8b0:4864:20:0:0:0:643 listed in] [list.dnswl.org] -0.0 SPF_PASS SPF: sender matches SPF record 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain X-BeenThere: linux-rockchip@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Upstream kernel work for Rockchip platforms List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: U-Boot-Denx , linux-rockchip@lists.infradead.org, linux-amarula , Jagan Teki , Suniel Mahesh Sender: "Linux-rockchip" Errors-To: linux-rockchip-bounces+patchwork-linux-rockchip=patchwork.kernel.org@lists.infradead.org reset reason can be used several stages of U-Boot bootloader like SPL, U-Boot proper based on the requirements. Clearing the status register end of get_reset_cause will end up showing the wrong reset cause when it read the second time. For example, if board resets, SPL reads the reset status as RST whereas U-Boot proper reads the status as POR. However, based on the latest testing clearing reset status won't be required for determine the last reset cause or following resets. Signed-off-by: Jagan Teki Reviewed-by: Kever Yang --- Changes for v5: - new patch arch/arm/include/asm/arch-rockchip/cru.h | 1 - arch/arm/mach-rockchip/cpu-info.c | 6 ------ 2 files changed, 7 deletions(-) diff --git a/arch/arm/include/asm/arch-rockchip/cru.h b/arch/arm/include/asm/arch-rockchip/cru.h index 5eb17f9d55..d2057cb738 100644 --- a/arch/arm/include/asm/arch-rockchip/cru.h +++ b/arch/arm/include/asm/arch-rockchip/cru.h @@ -26,7 +26,6 @@ enum { SND_GLB_TSADC_RST_ST = BIT(3), FST_GLB_WDT_RST_ST = BIT(4), SND_GLB_WDT_RST_ST = BIT(5), - GLB_RST_ST_MASK = GENMASK(5, 0), }; #define MHz 1000000 diff --git a/arch/arm/mach-rockchip/cpu-info.c b/arch/arm/mach-rockchip/cpu-info.c index 21ca9dedce..bb5a198039 100644 --- a/arch/arm/mach-rockchip/cpu-info.c +++ b/arch/arm/mach-rockchip/cpu-info.c @@ -47,12 +47,6 @@ static char *get_reset_cause(void) */ env_set("reset_reason", cause); - /* - * Clear glb_rst_st, so we can determine the last reset cause - * for following resets. - */ - rk_clrreg(&cru->glb_rst_st, GLB_RST_ST_MASK); - return cause; } From patchwork Tue Jul 14 09:32:27 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Jagan Teki X-Patchwork-Id: 11662169 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 39FD613B1 for ; Tue, 14 Jul 2020 09:34:55 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id E3304212CC for ; Tue, 14 Jul 2020 09:34:54 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="07MeNO4A"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=amarulasolutions.com header.i=@amarulasolutions.com header.b="G3Ld5S7h" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org E3304212CC Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=amarulasolutions.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-rockchip-bounces+patchwork-linux-rockchip=patchwork.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To:Message-Id:Date: Subject:To:From:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=00287DY0Kt5jAfld0zwnsOZjt0AHawlpHeoSYAEC9Ic=; b=07MeNO4Afda6unBG0WvNfdA+S +tOeITrzsIb52C0OL0gJhe7EFZBcSmYOC9/aMsDx8TTAluKG5nI0TlXehKk3m4qQ3yyVWkpzgJOpG POP0FCNz6qm1BMWBQeovZTkIECbNm2c8MOndTAKUfPMOs9c8jU0ZxAeWpIGbFjL7VHmNgifhIdCq/ /hEDiIj0OXCkkNK69a6oZbwt0QWtSkZTM5e3zTSjiBPCnsKJVmAuvEEszopCiEqNEBaS18SHXSIgO Sgu+kmMNUPSy4ljSCxSNiZCHHa1WBclJJ8Cme1Bp8okgbm9G/t8ULr6IhS9a16S5Qtxo4ph1RLw+W 6oE88/DYw==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1jvHKo-00045Z-6w; Tue, 14 Jul 2020 09:34:46 +0000 Received: from mail-pf1-x442.google.com ([2607:f8b0:4864:20::442]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1jvHJq-0003ao-D0 for linux-rockchip@lists.infradead.org; Tue, 14 Jul 2020 09:33:49 +0000 Received: by mail-pf1-x442.google.com with SMTP id s26so7348765pfm.4 for ; Tue, 14 Jul 2020 02:33:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=90v5epVkOEwYIjeAeEBw6zdLOS6I1eoIWmoYhdfWQFc=; b=G3Ld5S7hT9N/7VIzE7ly2ZbqSjoKa74L9Pdg/lF6/kzNT0newtI975MvSvtWJ9za5p PL8D46bzCS7I8ER8PMh9KiHRHqfqpd9SZDvpY0jLkbsPHxMhqn5dIDXrj4u05QVfa7Cw yR30JSJPwId31XwgyWgzZzrxLokLmumeLw6lA= 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=90v5epVkOEwYIjeAeEBw6zdLOS6I1eoIWmoYhdfWQFc=; b=LjFyRyXhA2WlSa8iv7YUSRppBqM7LBJf0SSHpY1MaA1rzOHZQ4AAFn+t7yh3yKP8hN Oi343HzdXc5v9lCUF3PbBT1uI6ZzqrxFHOrUa7939DNw4iZlksRClyzXzdaKh/zjDKOx tHb7UAcfQ1AInZqbi54OAJolPMQGKU8lyGoZKNjjcK+BJLbju2zWQK8n/T2AGjhfSJPA 5dC1xmTtp5fKsVoA+cAQNfNSv80bLfpRtTx25XBbcUuXh/slQFwowhTLSc/9jMI7kkfo vk7DwwmUJqorABZJFp+lirqrjlp95+ABlgv7bjdbC/NEFwiloaOgxMidFqVRy+Pkc0ON DX+g== X-Gm-Message-State: AOAM5324M1FhlNsNvhfRej0jk0fwLEnYk9NKJw1jPH0mA+Aw2/jhlp+p 4hP7E5z8N5rasSgYvwB4lA/LjA== X-Google-Smtp-Source: ABdhPJxpuM5CZw1/Cqpi+8BORKX56WmeswG/GVZLKPTnWUrNnQMXhddruRBtvSnRzV+2FsO7IgMwvg== X-Received: by 2002:a63:8c4f:: with SMTP id q15mr2727143pgn.373.1594719223913; Tue, 14 Jul 2020 02:33:43 -0700 (PDT) Received: from localhost.localdomain ([2405:201:c809:c7d5:659e:b3d0:e662:3980]) by smtp.gmail.com with ESMTPSA id g6sm16924771pfr.129.2020.07.14.02.33.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 14 Jul 2020 02:33:43 -0700 (PDT) From: Jagan Teki To: Kever Yang , Philipp Tomsich , Simon Glass Subject: [PATCH v5 3/5] rockchip: Separate the reset cause from display cpuinfo Date: Tue, 14 Jul 2020 15:02:27 +0530 Message-Id: <20200714093229.28763-4-jagan@amarulasolutions.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20200714093229.28763-1-jagan@amarulasolutions.com> References: <20200714093229.28763-1-jagan@amarulasolutions.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200714_053346_523304_C2C7A765 X-CRM114-Status: GOOD ( 14.96 ) X-Spam-Score: -0.2 (/) X-Spam-Report: SpamAssassin version 3.4.4 on merlin.infradead.org summary: Content analysis details: (-0.2 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no trust [2607:f8b0:4864:20:0:0:0:442 listed in] [list.dnswl.org] -0.0 SPF_PASS SPF: sender matches SPF record 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain X-BeenThere: linux-rockchip@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Upstream kernel work for Rockchip platforms List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: U-Boot-Denx , linux-rockchip@lists.infradead.org, linux-amarula , Jagan Teki , Suniel Mahesh Sender: "Linux-rockchip" Errors-To: linux-rockchip-bounces+patchwork-linux-rockchip=patchwork.kernel.org@lists.infradead.org reset cause is a generic functionality based on the soc cru registers in rockchip. This can be used for printing the cause of reset in cpuinfo or some other place where reset cause is needed.  Other than cpuinfo, reset cause can also be using during bootcount for checking the specific reset cause and glow the led based on the reset cause. So, let's separate the reset cause code from cpuinfo, and add a check to build it for rk3399, rk3288 since these two soc are supporting reset cause as of now. Tested-by: Suniel Mahesh Signed-off-by: Jagan Teki Reviewed-by: Kever Yang --- Changes for v5: - update Makefile arch/arm/include/asm/arch-rockchip/cru.h | 2 ++ arch/arm/mach-rockchip/Makefile | 5 ++++- arch/arm/mach-rockchip/cpu-info.c | 20 ++++++++++++-------- 3 files changed, 18 insertions(+), 9 deletions(-) diff --git a/arch/arm/include/asm/arch-rockchip/cru.h b/arch/arm/include/asm/arch-rockchip/cru.h index d2057cb738..13ea4aba8e 100644 --- a/arch/arm/include/asm/arch-rockchip/cru.h +++ b/arch/arm/include/asm/arch-rockchip/cru.h @@ -30,4 +30,6 @@ enum { #define MHz 1000000 +char *get_reset_cause(void); + #endif /* _ROCKCHIP_CLOCK_H */ diff --git a/arch/arm/mach-rockchip/Makefile b/arch/arm/mach-rockchip/Makefile index 5b38526fe0..121f23a563 100644 --- a/arch/arm/mach-rockchip/Makefile +++ b/arch/arm/mach-rockchip/Makefile @@ -22,11 +22,14 @@ ifeq ($(CONFIG_SPL_BUILD)$(CONFIG_TPL_BUILD),) # we can have the preprocessor correctly recognise both 0x0 and 0 # meaning "turn it off". obj-y += boot_mode.o -obj-$(CONFIG_DISPLAY_CPUINFO) += cpu-info.o obj-$(CONFIG_ROCKCHIP_COMMON_BOARD) += board.o obj-$(CONFIG_MISC_INIT_R) += misc.o endif +ifeq ($(CONFIG_TPL_BUILD),) +obj-$(CONFIG_DISPLAY_CPUINFO) += cpu-info.o +endif + obj-$(CONFIG_$(SPL_TPL_)RAM) += sdram.o obj-$(CONFIG_ROCKCHIP_PX30) += px30/ diff --git a/arch/arm/mach-rockchip/cpu-info.c b/arch/arm/mach-rockchip/cpu-info.c index bb5a198039..d0f030109f 100644 --- a/arch/arm/mach-rockchip/cpu-info.c +++ b/arch/arm/mach-rockchip/cpu-info.c @@ -13,7 +13,7 @@ #include #include -static char *get_reset_cause(void) +char *get_reset_cause(void) { struct rockchip_cru *cru = rockchip_get_cru(); char *cause = NULL; @@ -41,21 +41,25 @@ static char *get_reset_cause(void) cause = "unknown reset"; } - /** - * reset_reason env is used by rk3288, due to special use case - * to figure it the boot behavior. so keep this as it is. - */ - env_set("reset_reason", cause); - return cause; } +#if CONFIG_IS_ENABLED(DISPLAY_CPUINFO) int print_cpuinfo(void) { + char *cause = get_reset_cause(); + printf("SoC: Rockchip %s\n", CONFIG_SYS_SOC); - printf("Reset cause: %s\n", get_reset_cause()); + printf("Reset cause: %s\n", cause); + + /** + * reset_reason env is used by rk3288, due to special use case + * to figure it the boot behavior. so keep this as it is. + */ + env_set("reset_reason", cause); /* TODO print operating temparature and clock */ return 0; } +#endif From patchwork Tue Jul 14 09:32:28 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jagan Teki X-Patchwork-Id: 11662171 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 5F9FF14DD for ; Tue, 14 Jul 2020 09:35:29 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 310B8217A0 for ; Tue, 14 Jul 2020 09:35:29 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="nlX6PwYE"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=amarulasolutions.com header.i=@amarulasolutions.com header.b="K7EffqyN" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 310B8217A0 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=amarulasolutions.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-rockchip-bounces+patchwork-linux-rockchip=patchwork.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To:Message-Id:Date: Subject:To:From:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=em0hSRE7QMoydtJKOowJ8/fhlsBr2k4e8BYxFEFPs9s=; b=nlX6PwYEgkCPghnkMGAgHbcHi l91CqMJVxMRy5L3BK4Xia0vwYuxB6oBIUATAXltAVZpM0ZTCmdjEdW5lnMUBUaCam5CkIcYoiisS9 tPGXoOZoboMCWJATPBKW4jzd1PDeIoOYiSJOGvuZEjx95FzUnSMVSmzrZVlDiG3GRn8qeUaUz81Ox ZngoBqYazUOqB3xvHvgQAJB49QE533TZ+XfTgU10CEbHvT4sheZOMt08ZKKjqQjrevJaep+/tKP/g NYyiDaqljNzU4wQYcGKkisWEwJh/ILT7gx6Ki1JOdgM/rasyTjUM7Yvjuro/mx6hQx7fq3PnN+Arh fnPoE5qWA==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1jvHLO-0004MH-VB; Tue, 14 Jul 2020 09:35:23 +0000 Received: from mail-pj1-x1041.google.com ([2607:f8b0:4864:20::1041]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1jvHK3-0003gz-PO for linux-rockchip@lists.infradead.org; Tue, 14 Jul 2020 09:34:09 +0000 Received: by mail-pj1-x1041.google.com with SMTP id ch3so1301801pjb.5 for ; Tue, 14 Jul 2020 02:33:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=gI8p0P7GBhpZRpRW9dMCtIUfvWoAmDO5toDakeAqdnQ=; b=K7EffqyNLoywQJHa+3+9A2q5FcA120MPzw6xzV+sPfJ66j1EWY7P1N7ErG6E7kNLk8 xvnRehK86jSCyDDx6n8tVVG/zE40u/Sn4XLfajpKIEaUGT9XDISF6fV8z2vZNi4dyhD5 xxQmRC+wr2jeVuDYzqudeTt21D68NgXwT3g5A= 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=gI8p0P7GBhpZRpRW9dMCtIUfvWoAmDO5toDakeAqdnQ=; b=eN+H4F9aQI164VtehCxayzyahRgcKxAd2MwvWONPuXbMf+RuxzicRmy31O6LAQjqVh vUWSWq3VGNIqZ3AqMfcE5kdmWxpOzdr72oLnsTdm3mwJKRzHAJiaA2yiNaUumoVuG2l7 VhQLdF6Z4q1PEyDXod/IZHdS+yjzKm2SMcZahBfB2KN3uNN39gGnoehbJ1ZpRx6VzzYk D8BDSNf0qb2k4U8HGY0JppzSoPm5YXx0UK6XpyV/bGUpjPHqKWCpyEx+Gm2VRGE8w0wM KycmdeSLyOysqm9UZw1lKGH4IitqevIwDG9tl5AF5ChfBPyGK1M9PWzVOfysqYWxjcYQ nCnA== X-Gm-Message-State: AOAM531d6wsWyfkT8qpRsA9gSXa1YZwgUCjd8+HcMhtM8biqNudincrp KGoc7uUrZ+mMeRM2TZj7r1IlAQ== X-Google-Smtp-Source: ABdhPJwoDA40CV3dV8UqvKjphq00Zc9zvvCgPxAWmBMy2BYZ8x7/VkBoChSsFnVB2NsBdHXEw7xSjQ== X-Received: by 2002:a17:902:262:: with SMTP id 89mr2922913plc.31.1594719237320; Tue, 14 Jul 2020 02:33:57 -0700 (PDT) Received: from localhost.localdomain ([2405:201:c809:c7d5:659e:b3d0:e662:3980]) by smtp.gmail.com with ESMTPSA id g6sm16924771pfr.129.2020.07.14.02.33.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 14 Jul 2020 02:33:56 -0700 (PDT) From: Jagan Teki To: Kever Yang , Philipp Tomsich , Simon Glass Subject: [PATCH v5 4/5] rockchip: spl: Move board_early_init_f after cpu timer Date: Tue, 14 Jul 2020 15:02:28 +0530 Message-Id: <20200714093229.28763-5-jagan@amarulasolutions.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20200714093229.28763-1-jagan@amarulasolutions.com> References: <20200714093229.28763-1-jagan@amarulasolutions.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200714_053359_873053_C3BE5611 X-CRM114-Status: GOOD ( 10.56 ) X-Spam-Score: -0.2 (/) X-Spam-Report: SpamAssassin version 3.4.4 on merlin.infradead.org summary: Content analysis details: (-0.2 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no trust [2607:f8b0:4864:20:0:0:0:1041 listed in] [list.dnswl.org] -0.0 SPF_PASS SPF: sender matches SPF record 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain X-BeenThere: linux-rockchip@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Upstream kernel work for Rockchip platforms List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: U-Boot-Denx , linux-rockchip@lists.infradead.org, linux-amarula , Jagan Teki , Suniel Mahesh Sender: "Linux-rockchip" Errors-To: linux-rockchip-bounces+patchwork-linux-rockchip=patchwork.kernel.org@lists.infradead.org Custom board_early_init_f not only deal with simple gpio configuration but also have a possibility to access clocks to process any clock related operations like checking reset cause state and etc. So, call it once the rockchip timer initialization done instead of calling first place of board_init_f which doesn't have any rockchip init code before. This specific concern was tested with checking reset reason via board_early_init_f, which indeed require a clk probe. Signed-off-by: Jagan Teki --- Changes for v5: - new patch arch/arm/mach-rockchip/spl.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/arch/arm/mach-rockchip/spl.c b/arch/arm/mach-rockchip/spl.c index cddf4fd3d5..082828de66 100644 --- a/arch/arm/mach-rockchip/spl.c +++ b/arch/arm/mach-rockchip/spl.c @@ -122,8 +122,6 @@ void board_init_f(ulong dummy) debug("\nspl:debug uart enabled in %s\n", __func__); #endif - board_early_init_f(); - ret = spl_early_init(); if (ret) { printf("spl_early_init() failed: %d\n", ret); @@ -137,6 +135,9 @@ void board_init_f(ulong dummy) /* Init ARM arch timer in arch/arm/cpu/armv7/arch_timer.c */ timer_init(); #endif + + board_early_init_f(); + #if !defined(CONFIG_TPL) || defined(CONFIG_SPL_RAM) debug("\nspl:init dram\n"); ret = dram_init(); From patchwork Tue Jul 14 09:32:29 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jagan Teki X-Patchwork-Id: 11662301 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 9892D138C for ; Tue, 14 Jul 2020 10:45:46 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id E70E622203 for ; Tue, 14 Jul 2020 10:45:45 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="x6vYoZWJ"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=amarulasolutions.com header.i=@amarulasolutions.com header.b="nZ/GvKrG" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org E70E622203 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=amarulasolutions.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-rockchip-bounces+patchwork-linux-rockchip=patchwork.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To:Message-Id:Date: Subject:To:From:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=32OwFPCvAya94Ty8N+v+XSnvppVaUjcvw6IYG+8r6BI=; b=x6vYoZWJgryEmCiQx5C66xbxe k5awfLhWp5Fjp2Ve4zxG4GseOK5cFISj0KwQJmajll4mH2cVWYLxw0W6gKslGY91W4eFjOZi4aBX/ lDSF/I0J1dMWmeIYTvzNtVkbGvFzgxA6wi0UnUU8nbNNxOnsWdXuuZIO/nuY6df2x0TGybX7+gBKS wsyxXMcNjWALZGdXWVgG0CR1CfkyYfmK2xD7MbV5oiAJsOAijKPM6FLv44YrqCVxluY2JgPV6k/LI y//P0vnVNHVDWskK6iNcsUQ86YBrNpbNEXWl1mu3TYpIYanu5YnUB/t2J2nja4ZZbQ3a5CxNCUkPL R7v3UlT9g==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1jvIRI-0008TX-8g; Tue, 14 Jul 2020 10:45:32 +0000 Received: from mail-pj1-x1044.google.com ([2607:f8b0:4864:20::1044]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1jvHKB-0003lr-RY for linux-rockchip@lists.infradead.org; Tue, 14 Jul 2020 09:34:17 +0000 Received: by mail-pj1-x1044.google.com with SMTP id k5so1248393pjg.3 for ; Tue, 14 Jul 2020 02:34:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=jxBllyBu+U09fwodn0t5E06hiFKfFyqFdeMw6XgdTfw=; b=nZ/GvKrGSWeJnI+hsZ1zfy4/35ZV4679dcceJz1TFM1VOQ7wSXnoS0K28CQECTh+In /t23Vz7gmVZt7cmMFkeTB7tfIVg7lgG/IklcXk1l2UPMRdFHV5UIPabqr9Za2wY4wlda SiK7O4b49zzSuy9ndGPm/wNPbL8S9s2zjwiRk= 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=jxBllyBu+U09fwodn0t5E06hiFKfFyqFdeMw6XgdTfw=; b=GR2DiFB1ssVXCzZRl1bbRCQozpzOHxdcnTmd/wymp5RPwGSDC+xzDIWxdNbqgLpJpJ 8TuAXmvfwxm4V3dzFngexfv/Y0z2oGNn40tW9TaGm8KgM5oS5kIN5n5sbC7Rz6eUQEm9 1knXWLkHOgLt/ELTV1C5bd0NmNy+0pajsH+I9z6K5R8WybLINI1jDd+tzEhXM/3rz1Z8 I0XlhkXvW6C/iSQX0q1s/gDckkzyaoLk02VcJJa7dzJnQhY0G6S4q6XTp14qX1RCk8Po HKYfvnz74gfa5EJon6KI1+rWmZ1EVanSIoaH/IKmVKpjDa6wI0BCukSIfo58PHsXJY+1 MYDA== X-Gm-Message-State: AOAM533W0/IN/J+T2I9CSR1PDxPRcTTJ9rs2JDa7pwEkSq0FY3gezBhY Kr8xnwgJooKMcFti1h4vIrhUgQ== X-Google-Smtp-Source: ABdhPJw4uPX2k8bpGLPg5hhR/opGPoYqao/D3mBNMp5ohL/h8kA2+BoAMoFE4AXmyrvVgxzUMhTCCw== X-Received: by 2002:a17:902:7:: with SMTP id 7mr2888992pla.209.1594719244983; Tue, 14 Jul 2020 02:34:04 -0700 (PDT) Received: from localhost.localdomain ([2405:201:c809:c7d5:659e:b3d0:e662:3980]) by smtp.gmail.com with ESMTPSA id g6sm16924771pfr.129.2020.07.14.02.33.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 14 Jul 2020 02:34:04 -0700 (PDT) From: Jagan Teki To: Kever Yang , Philipp Tomsich , Simon Glass Subject: [PATCH v5 5/5] roc-rk3399-pc: Set LED only during POR and pwr_key=y Date: Tue, 14 Jul 2020 15:02:29 +0530 Message-Id: <20200714093229.28763-6-jagan@amarulasolutions.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20200714093229.28763-1-jagan@amarulasolutions.com> References: <20200714093229.28763-1-jagan@amarulasolutions.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200714_053408_253402_3CBBC15D X-CRM114-Status: GOOD ( 15.57 ) X-Spam-Score: -0.2 (/) X-Spam-Report: SpamAssassin version 3.4.4 on merlin.infradead.org summary: Content analysis details: (-0.2 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no trust [2607:f8b0:4864:20:0:0:0:1044 listed in] [list.dnswl.org] -0.0 SPF_PASS SPF: sender matches SPF record 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain X-BeenThere: linux-rockchip@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Upstream kernel work for Rockchip platforms List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: U-Boot-Denx , linux-rockchip@lists.infradead.org, linux-amarula , Jagan Teki , Suniel Mahesh Sender: "Linux-rockchip" Errors-To: linux-rockchip-bounces+patchwork-linux-rockchip=patchwork.kernel.org@lists.infradead.org ROC-RK3399-PC has specific set of configurations for on-board led setup. Due to easiness for user to know the state of the board roc-rk339-pc board code will setup the low power led on/off, and waiting for user to press power key and then glow full power led. All this needs to happen only during power-on-reset not for soft reset or WDT. Also, it is not a proper usage to ask the user to press the Power key if the board connected remotely, so add the environment variable 'pwr_key' to check as well. So, user need to press Power key only - during POR - pwr_key=y Tested-by: Suniel Mahesh Signed-off-by: Jagan Teki --- Changes for v5: - add changes on board file board/firefly/roc-pc-rk3399/roc-pc-rk3399.c | 35 ++++++++++++++++++++- configs/roc-pc-mezzanine-rk3399_defconfig | 3 ++ configs/roc-pc-rk3399_defconfig | 3 ++ 3 files changed, 40 insertions(+), 1 deletion(-) diff --git a/board/firefly/roc-pc-rk3399/roc-pc-rk3399.c b/board/firefly/roc-pc-rk3399/roc-pc-rk3399.c index 4db3dd739c..ff2dc028a1 100644 --- a/board/firefly/roc-pc-rk3399/roc-pc-rk3399.c +++ b/board/firefly/roc-pc-rk3399/roc-pc-rk3399.c @@ -5,19 +5,52 @@ #include #include +#include #include #include +#include #include +#include #include +#include +#define PMUGRF_BASE 0xff320000 #define GPIO0_BASE 0xff720000 +/** + * LED setup for roc-rk3399-pc + * + * 1. Set the low power leds (only during POR, pwr_key env is 'y') + * glow yellow LED, termed as low power + * poll for on board power key press + * once powe key pressed, turn off yellow + * 2. Turn on red LED, indicating full power mode + */ static int led_setup(void) { struct rockchip_gpio_regs * const gpio0 = (void *)GPIO0_BASE; + struct rk3399_pmugrf_regs * const pmugrf = (void *)PMUGRF_BASE; + bool press_pwr_key = false; + + if (IS_ENABLED(CONFIG_SPL_ENV_SUPPORT)) { + env_init(); + env_load(); + if (env_get_yesno("pwr_key") == 1) + press_pwr_key = true; + } + + if (press_pwr_key && !strcmp(get_reset_cause(), "POR")) { + spl_gpio_output(gpio0, GPIO(BANK_A, 2), 1); + + spl_gpio_set_pull(&pmugrf->gpio0_p, GPIO(BANK_A, 5), + GPIO_PULL_NORMAL); + while (readl(&gpio0->ext_port) & 0x20) + ; + + spl_gpio_output(gpio0, GPIO(BANK_A, 2), 0); + } - /* Turn on red LED, indicating full power mode */ spl_gpio_output(gpio0, GPIO(BANK_B, 5), 1); return 0; diff --git a/configs/roc-pc-mezzanine-rk3399_defconfig b/configs/roc-pc-mezzanine-rk3399_defconfig index 15d511741f..14cda5850e 100644 --- a/configs/roc-pc-mezzanine-rk3399_defconfig +++ b/configs/roc-pc-mezzanine-rk3399_defconfig @@ -8,6 +8,7 @@ CONFIG_ENV_SECT_SIZE=0x1000 CONFIG_SPL_DM_SPI=y CONFIG_ROCKCHIP_RK3399=y CONFIG_TARGET_ROC_PC_RK3399=y +CONFIG_SPL_SYS_MALLOC_F_LEN=0x20000 CONFIG_NR_DRAM_BANKS=1 CONFIG_DEBUG_UART_BASE=0xFF1A0000 CONFIG_DEBUG_UART_CLOCK=24000000 @@ -20,6 +21,7 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set CONFIG_SPL_STACK_R=y CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000 +CONFIG_SPL_ENV_SUPPORT=y CONFIG_SPL_SPI_LOAD=y CONFIG_TPL=y CONFIG_CMD_BOOTZ=y @@ -34,6 +36,7 @@ CONFIG_DEFAULT_DEVICE_TREE="rk3399-roc-pc-mezzanine" CONFIG_OF_SPL_REMOVE_PROPS="pinctrl-0 pinctrl-names clock-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-parents" CONFIG_ENV_IS_IN_SPI_FLASH=y CONFIG_SYS_RELOC_GD_ENV_ADDR=y +CONFIG_SPL_DM_SEQ_ALIAS=y CONFIG_ROCKCHIP_GPIO=y CONFIG_SYS_I2C_ROCKCHIP=y CONFIG_MISC=y diff --git a/configs/roc-pc-rk3399_defconfig b/configs/roc-pc-rk3399_defconfig index 2a6d0d22c8..85f5c8f86b 100644 --- a/configs/roc-pc-rk3399_defconfig +++ b/configs/roc-pc-rk3399_defconfig @@ -8,6 +8,7 @@ CONFIG_ENV_SECT_SIZE=0x1000 CONFIG_SPL_DM_SPI=y CONFIG_ROCKCHIP_RK3399=y CONFIG_TARGET_ROC_PC_RK3399=y +CONFIG_SPL_SYS_MALLOC_F_LEN=0x20000 CONFIG_NR_DRAM_BANKS=1 CONFIG_DEBUG_UART_BASE=0xFF1A0000 CONFIG_DEBUG_UART_CLOCK=24000000 @@ -20,6 +21,7 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set CONFIG_SPL_STACK_R=y CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x10000 +CONFIG_SPL_ENV_SUPPORT=y CONFIG_SPL_SPI_LOAD=y CONFIG_TPL=y CONFIG_CMD_BOOTZ=y @@ -33,6 +35,7 @@ CONFIG_DEFAULT_DEVICE_TREE="rk3399-roc-pc" CONFIG_OF_SPL_REMOVE_PROPS="pinctrl-0 pinctrl-names clock-names interrupt-parent assigned-clocks assigned-clock-rates assigned-clock-parents" CONFIG_ENV_IS_IN_SPI_FLASH=y CONFIG_SYS_RELOC_GD_ENV_ADDR=y +CONFIG_SPL_DM_SEQ_ALIAS=y CONFIG_ROCKCHIP_GPIO=y CONFIG_SYS_I2C_ROCKCHIP=y CONFIG_MISC=y