U-Boot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Heiko Schocher <hs@denx.de>
To: U-Boot Mailing List <u-boot@lists.denx.de>
Cc: Enrico Leto <enrico.leto@siemens.com>,
	Walter Schweizer <walter.schweizer@siemens.com>,
	Alexander Sverdlin <alexander.sverdlin@siemens.com>,
	Heiko Schocher <hs@denx.de>, Anatolij Gustschin <agust@denx.de>,
	Tom Rini <trini@konsulko.com>
Subject: [PATCH v1 08/22] siemens: capricorn: use DCD_SKIP entry
Date: Fri,  8 Nov 2024 06:21:29 +0100	[thread overview]
Message-ID: <20241108052143.26874-9-hs@denx.de> (raw)
In-Reply-To: <20241108052143.26874-1-hs@denx.de>

Boards which use DCD data in SCFW can drop SPL.

We tried in our mainline rework to use this approach
too as other imx8qxp boards do in mainline. But we
failed ... it was a hard way to understand the
reason!

We cannot use DCD image in container as the SCFW
from siemens, does the RAM init on boot itself!

Siemens SCFW reads the RAM config from i2c eeprom and
dependent on this settings, initializes the RAM.

Adding DCD data to the bootcontainer will result in
hang of the SCFW, also DCD data in container image is
static which do not fit our needs.

So we must drop DCD data image, and this has the side
effect that we need SPL, as the task which loads the images
from the container only loads the images to addresses,
and if executed bit is set, starts them.

As now RAM is not initialized from it, and there is no
option to "wait until SCFW has setup RAM",  we can only
load SPL into internal RAM at this point, as than SPL
and SCFW boot parallel.

The SPL itself than uses the SCU API to communicate
with the SCFW and it seems that SCFW only responds to
this API requests when RAM setup is already done by the
SCFW, which has a side-effect of a "sync" for the RAM
setup is done by SCFW!

We checked if SPL is always save in accessing RAM for
loading images to it! For tests, we added in our RAM
init part in the SCFW long delays (10 seconds and more)
as we thought there is such a sync missing, and we can
break the board through delaying RAM setup... but we
did not managed to fail booting U-Boot from SPL!

Signed-off-by: Heiko Schocher <hs@denx.de>
---

 board/siemens/capricorn/imximage.cfg | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/board/siemens/capricorn/imximage.cfg b/board/siemens/capricorn/imximage.cfg
index 4350e2967cc..e45f2c9589e 100644
--- a/board/siemens/capricorn/imximage.cfg
+++ b/board/siemens/capricorn/imximage.cfg
@@ -9,6 +9,10 @@
 
 /* Boot from SD, sector size 0x400 */
 BOOT_FROM	sd
+
+/* skip DCD data, as firmware initializes the RAM */
+DCD_SKIP true
+
 /* SoC type IMX8QX */
 SOC_TYPE IMX8QX
 /* Append seco container image */
-- 
2.20.1


  parent reply	other threads:[~2024-11-08  5:23 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-11-08  5:21 [PATCH v1 00/22] imx8qxp: siemens board: updates / sync with mainline Heiko Schocher
2024-11-08  5:21 ` [PATCH v1 01/22] wdt: imx8qxp: add option to control external PMIC wdt via IMX8 SCU Heiko Schocher
2024-11-08  7:19   ` Stefan Roese
2024-11-08 11:47     ` Sverdlin, Alexander
2024-11-08  5:21 ` [PATCH v1 02/22] net: fec_mxc: fix probing for imx8qxp Heiko Schocher
2024-11-08  5:21 ` [PATCH v1 03/22] tools: imx8image: Improve error message Heiko Schocher
2024-11-11  8:03   ` Sverdlin, Alexander
2024-11-08  5:21 ` [PATCH v1 04/22] imx: imx_cntr_image.sh: prevent warning for missing spl Heiko Schocher
2024-11-08  5:21 ` [PATCH v1 05/22] imx8qxp: Fix build when using SPL Heiko Schocher
2024-11-08  5:21 ` [PATCH v1 06/22] siemens: capricorn: move to cxg3 reference project with deneb board Heiko Schocher
2024-11-08  5:21 ` [PATCH v1 07/22] siemens: imx8qxp-capricorn-u-boot.dtsi: fix boot Heiko Schocher
2024-11-11  8:34   ` Sverdlin, Alexander
2024-11-08  5:21 ` Heiko Schocher [this message]
2024-11-11  8:35   ` [PATCH v1 08/22] siemens: capricorn: use DCD_SKIP entry Schweizer, Walter
2024-11-11  8:49     ` Heiko Schocher
2024-11-08  5:21 ` [PATCH v1 09/22] siemens: imximage.cfg: correct comment Heiko Schocher
2024-11-11  8:41   ` Sverdlin, Alexander
2024-11-08  5:21 ` [PATCH v1 10/22] siemens: imximage.cfg: sync image names Heiko Schocher
2024-11-08  5:21 ` [PATCH v1 11/22] siemens: imx8-capricorn-u-boot.dtsi: add fec2 Heiko Schocher
2024-11-08  5:21 ` [PATCH v1 12/22] siemens: capricorn: add missing ARCH_MISC_INIT Heiko Schocher
2024-11-09 12:03   ` Fabio Estevam
2024-11-08  5:21 ` [PATCH v1 13/22] siemens: configs/capricorn_cxg3_defconfig: updates Heiko Schocher
2024-11-09 12:10   ` Fabio Estevam
2024-11-11 10:04   ` Sverdlin, Alexander
2024-11-08  5:21 ` [PATCH v1 14/22] siemens: capricorn: sync spl code with 8qxp-mek Heiko Schocher
2024-11-08  5:21 ` [PATCH v1 15/22] siemens: imx8-capricorn.dtsi: small adaptions Heiko Schocher
2024-11-09 12:03   ` Fabio Estevam
2024-11-11  5:52     ` Heiko Schocher
2024-11-11  8:25       ` Leto, Enrico
2024-11-11  8:47         ` Heiko Schocher
2024-11-11  9:24           ` Leto, Enrico
2024-11-11 12:08           ` Sverdlin, Alexander
2024-11-11 10:36       ` Sverdlin, Alexander
2024-11-08  5:21 ` [PATCH v1 16/22] siemens: capricorn: board.c fixes Heiko Schocher
2024-11-09 16:38   ` Fabio Estevam
2024-11-11  6:01     ` Heiko Schocher
2024-11-08  5:21 ` [PATCH v1 17/22] siemens: capricorn: add HW version information to boot log Heiko Schocher
2024-11-09 12:09   ` Fabio Estevam
2024-11-11  5:57     ` Heiko Schocher
2024-11-08  5:21 ` [PATCH v1 18/22] siemens: capricorn: get ram size from system controller Heiko Schocher
2024-11-08  5:21 ` [PATCH v1 19/22] siemens: capricorn: get module name from eeprom Heiko Schocher
2024-11-08  5:21 ` [PATCH v1 20/22] siemens: add ddr full memory test Heiko Schocher
2024-11-09 12:06   ` Fabio Estevam
2024-11-11  5:55     ` Heiko Schocher
2024-11-11  8:48       ` Leto, Enrico
2024-11-08  5:21 ` [PATCH v1 21/22] siemens: add ddr signal integrity test Heiko Schocher
2024-11-08  5:21 ` [PATCH v1 22/22] siemens: capricorn: update maintainers Heiko Schocher
2024-11-08 11:51   ` Sverdlin, Alexander

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=20241108052143.26874-9-hs@denx.de \
    --to=hs@denx.de \
    --cc=agust@denx.de \
    --cc=alexander.sverdlin@siemens.com \
    --cc=enrico.leto@siemens.com \
    --cc=trini@konsulko.com \
    --cc=u-boot@lists.denx.de \
    --cc=walter.schweizer@siemens.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox