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