All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tommaso Merciai <tomm.merciai@gmail.com>
Cc: tomm.merciai@gmail.com, linuxfancy@googlegroups.com,
	Breno Lima <breno.lima@nxp.com>,
	Francesco Montefoschi <francesco.montefoschi@udoo.org>,
	Fabio Estevam <festevam@gmail.com>,
	u-boot@lists.denx.de
Subject: [PATCH v2] udoo_neo: fix udoo neo UNDEFINED
Date: Mon,  3 Jan 2022 00:54:35 +0100	[thread overview]
Message-ID: <20220102235435.40001-1-tomm.merciai@gmail.com> (raw)

get_board_value function fails to get the right board configuration on
second time that is call. This patch move get_board_value function at
spl level, once is call, store the right configuration into gd static
variable gd->board_type and fix the previous error.
get_board_value is now call only one time.

Signed-off-by: Tommaso Merciai <tomm.merciai@gmail.com>
---
Changes since v1
 - get_board_value declared as void
 - fix gd->board_type, re-initialized after spl

 board/udoo/neo/neo.c       | 12 ++++++------
 configs/udoo_neo_defconfig |  1 +
 2 files changed, 7 insertions(+), 6 deletions(-)

diff --git a/board/udoo/neo/neo.c b/board/udoo/neo/neo.c
index 62f81fff68..808b727fb0 100644
--- a/board/udoo/neo/neo.c
+++ b/board/udoo/neo/neo.c
@@ -308,7 +308,7 @@ int board_init(void)
 	return 0;
 }
 
-static int get_board_value(void)
+static void get_board_value(void)
 {
 	int r184, r185;
 
@@ -333,12 +333,13 @@ static int get_board_value(void)
 	 * Extended           1        1
 	 */
 
-	return (r184 << 1) + r185;
+	gd->board_type = (r184 << 1) + r185;
 }
 
 int board_early_init_f(void)
 {
 	setup_iomux_uart();
+	get_board_value();
 
 	return 0;
 }
@@ -370,7 +371,7 @@ int board_mmc_init(struct bd_info *bis)
 
 static char *board_string(void)
 {
-	switch (get_board_value()) {
+	switch (gd->board_type) {
 	case UDOO_NEO_TYPE_BASIC:
 		return "BASIC";
 	case UDOO_NEO_TYPE_BASIC_KS:
@@ -498,8 +499,6 @@ static void ccgr_init(void)
 
 static void spl_dram_init(void)
 {
-	int board = get_board_value();
-
 	struct mx6_ddr_sysinfo sysinfo = {
 		.dsize = 1, /* width of data bus: 1 = 32 bits */
 		.cs_density = 24,
@@ -516,7 +515,8 @@ static void spl_dram_init(void)
 	};
 
 	mx6sx_dram_iocfg(32, &mx6_ddr_ioregs, &mx6_grp_ioregs);
-	if (board == UDOO_NEO_TYPE_BASIC || board == UDOO_NEO_TYPE_BASIC_KS)
+	if (gd->board_type == UDOO_NEO_TYPE_BASIC ||
+		gd->board_type == UDOO_NEO_TYPE_BASIC_KS)
 		mx6_dram_cfg(&sysinfo, &neo_basic_mmcd_calib,
 			     &neo_basic_mem_ddr);
 	else
diff --git a/configs/udoo_neo_defconfig b/configs/udoo_neo_defconfig
index ca08de1bd4..eff33909d7 100644
--- a/configs/udoo_neo_defconfig
+++ b/configs/udoo_neo_defconfig
@@ -62,3 +62,4 @@ CONFIG_DM_USB=y
 CONFIG_USB_STORAGE=y
 CONFIG_MXC_UART=y
 CONFIG_IMX_THERMAL=y
+CONFIG_BOARD_TYPES=y
\ No newline at end of file
-- 
2.25.1


             reply	other threads:[~2022-01-02 23:54 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-01-02 23:54 Tommaso Merciai [this message]
2022-01-03  0:58 ` [PATCH v2] udoo_neo: fix udoo neo UNDEFINED Fabio Estevam

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220102235435.40001-1-tomm.merciai@gmail.com \
    --to=tomm.merciai@gmail.com \
    --cc=breno.lima@nxp.com \
    --cc=festevam@gmail.com \
    --cc=francesco.montefoschi@udoo.org \
    --cc=linuxfancy@googlegroups.com \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.