public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Phil Sutter <phil@nwl.cc>
To: Tom Rini <trini@konsulko.com>
Cc: u-boot@lists.denx.de,
	Marek Vasut <marek.vasut+renesas@mailbox.org>,
	Beleswar Padhi <b-padhi@ti.com>,
	"NXP i.MX U-Boot Team" <uboot-imx@nxp.com>,
	Adam Ford <aford173@gmail.com>,
	Andre Przywara <andre.przywara@arm.com>,
	Aspeed BMC SW team <BMC-SW@aspeedtech.com>,
	Chia-Wei Wang <chiawei_wang@aspeedtech.com>,
	Eugen Hristev <eugen.hristev@linaro.org>,
	Fabio Estevam <festevam@gmail.com>,
	Ilias Apalodimas <ilias.apalodimas@linaro.org>,
	Jagan Teki <jagan@amarulasolutions.com>,
	Joel Stanley <joel@jms.id.au>,
	Kever Yang <kever.yang@rock-chips.com>,
	Michal Simek <michal.simek@amd.com>,
	Philipp Tomsich <philipp.tomsich@vrull.eu>,
	Richard Henderson <richard.henderson@linaro.org>,
	Ryan Chen <ryan_chen@aspeedtech.com>,
	Stefano Babic <sbabic@nabladev.com>
Subject: Re: [PATCH 02/10] arm: Update linker scripts to ensure appended device tree is aligned
Date: Wed, 4 Feb 2026 22:16:12 +0100	[thread overview]
Message-ID: <aYO3HOmFFVAkjfKD@orbyte.nwl.cc> (raw)
In-Reply-To: <20260115222828.3931345-3-trini@konsulko.com>

Hi,

On Thu, Jan 15, 2026 at 04:19:32PM -0600, Tom Rini wrote:
> With commit 0535e46d55d7 ("scripts/dtc: Update to upstream version
> v1.7.2-35-g52f07dcca47c") it is now a fatal error to U-Boot if our
> device tree is not 8-byte aligned. In commit f613a6e15ef7 ("ARM: OMAP2+:
> Pad SPL binary to 8-byte alignment before DTB") Beleswar Padhi explains
> that we must have ALIGN(x) statements inside of a section to ensure that
> padding is included and not simply that the linker address counter is
> incremented. To that end, this patch:
> - Expands some linker sections to be more readable when adding a second
>   statement to the section.
> - Aligns the final section before _end (for U-Boot) or
>   _image_binary_end or __bss_end (for xPL phases) by 8-bytes by adding
>   '. = ALIGN(8);' to the final section before the symbol.
> - Ensure that we do have alignment by adding an ASSERT so that when not
>   aligned we fail to link (and explain why).
> - Remove now-spurious  '. = ALIGN(x);' statements that were intended to
>   provide the above alignments.
> 
> Signed-off-by: Tom Rini <trini@konsulko.com>

For unclear reasons, this seems to break boot via xmodem protocol on my
Synology DS414. I found this commit via 'git bisect'. The symptom is:

| kwboot version 2026.04-rc1-00098-g6ad0cf8f83db
| Detected kwbimage v1 with SPI boot signature
| Patching image boot signature to UART
| Aligning image header to Xmodem block size
| Sending boot message. Please reboot the target...\
| Sending boot image header (67584 bytes)...
|   0 % [......................................................................]
|  13 % [......................................................................]
|  26 % [......................................................................]
|  39 % [......................................................................]
|  53 % [......................................................................]
|  66 % [......................................................................]
|  79 % [......................................................................]
|  92 % [......................................                                ]
| Done
| Missing DTB
| spl_init() failed: -2
| ### ERROR ### Please RESET the board ###
| 
| 
| xmodem: Connection timed out

Debug printf()s in fdtdec_prepare_fdt() show that fdt_check_header()
returns -FDT_ERR_BADMAGIC.

With HEAD at a8d982e1f1726 ("x86: cpu: Fix crash on FTRACE enabled
builds"), reverting arch/arm/cpu/u-boot-spl.lds like so:

| @@ -41,14 +41,21 @@ SECTIONS
|                 __binman_sym_start = .;
|                 KEEP(*(SORT(.binman_sym*)));
|                 __binman_sym_end = .;
| -               . = ALIGN(8);
|         }
|  
| +       . = ALIGN(4); /* critical! */
|         __image_copy_end = .;
| +       .rel.dyn : {
| +               __rel_dyn_start = .;
| +               *(.rel*)
| +               __rel_dyn_end = .;
| +       }
| +
| +       . = ALIGN(8);
|         _image_binary_end = .;
|         _end = .;
|  
| -       .bss : {
| +       .bss __rel_dyn_start (OVERLAY) : {
|                 __bss_start = .;
|                 *(.bss*)
|                  . = ALIGN(8);

The SPL image starts up again and continues loading the real uboot
image. Note that I have no idea what these changes actually do, so I
need instructions if I should dig further.

Thanks, Phil

  parent reply	other threads:[~2026-02-04 21:16 UTC|newest]

Thread overview: 56+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-01-15 22:19 [PATCH 00/10] Update linker scripts to ensure appended device tree is correctly aligned Tom Rini
2026-01-15 22:19 ` [PATCH 01/10] Makefile: Have binary_size_check report only first match of _image_binary_end Tom Rini
2026-01-22  9:07   ` Marek Vasut
2026-01-22 14:21     ` Tom Rini
2026-01-15 22:19 ` [PATCH 02/10] arm: Update linker scripts to ensure appended device tree is aligned Tom Rini
2026-01-16  9:59   ` Ilias Apalodimas
2026-01-16 14:40     ` Tom Rini
2026-01-20  8:38       ` Ilias Apalodimas
2026-01-20 14:27         ` Tom Rini
2026-01-16 10:00   ` Michal Simek
2026-01-22  3:08   ` Fabio Estevam
2026-01-22  3:33     ` Fabio Estevam
2026-01-22 11:22       ` Marek Vasut
2026-01-22 14:23         ` Tom Rini
2026-01-22 18:47           ` Fabio Estevam
2026-01-22 19:10             ` Tom Rini
2026-01-22 19:19               ` Fabio Estevam
2026-01-22 19:28                 ` Tom Rini
2026-01-22 19:32                   ` Fabio Estevam
2026-01-22 19:42                 ` Tom Rini
2026-01-22 22:56                   ` Fabio Estevam
2026-01-22 23:24                     ` Tom Rini
2026-01-23  0:25                       ` Fabio Estevam
2026-01-23  0:52                         ` Fabio Estevam
2026-01-23 14:27                           ` Tom Rini
2026-01-23 15:45                             ` Fabio Estevam
2026-01-23 15:50                               ` Tom Rini
2026-01-22 14:25     ` Tom Rini
2026-02-04 21:16   ` Phil Sutter [this message]
2026-02-04 21:20     ` Tom Rini
2026-02-04 21:27       ` Phil Sutter
2026-02-04 21:31         ` Tom Rini
2026-02-04 21:40           ` Phil Sutter
2026-02-04 21:50             ` Tom Rini
2026-02-04 23:00               ` Phil Sutter
2026-02-04 23:04                 ` Tom Rini
2026-02-04 23:29                   ` Phil Sutter
2026-02-04 23:35                     ` Tom Rini
2026-02-04 23:48                       ` Phil Sutter
2026-02-05 18:01                         ` Tom Rini
2026-01-15 22:19 ` [PATCH 03/10] m68k: " Tom Rini
2026-01-15 22:19 ` [PATCH 04/10] microblaze: " Tom Rini
2026-01-16  9:59   ` Michal Simek
2026-01-16 10:00   ` Ilias Apalodimas
2026-01-15 22:19 ` [PATCH 05/10] mips: " Tom Rini
2026-01-20 13:57   ` Daniel Schwierzeck
2026-01-15 22:19 ` [PATCH 06/10] nios2: " Tom Rini
2026-01-16 10:00   ` Ilias Apalodimas
2026-01-15 22:19 ` [PATCH 07/10] powerpc: " Tom Rini
2026-02-06  7:18   ` Christophe Leroy (CS GROUP)
2026-01-15 22:19 ` [PATCH 08/10] riscv: " Tom Rini
2026-01-16  1:27   ` Leo Liang
2026-01-16  9:49   ` Ilias Apalodimas
2026-01-15 22:19 ` [PATCH 09/10] sandbox: " Tom Rini
2026-01-15 22:19 ` [PATCH 10/10] x86: " Tom Rini
2026-01-20 18:08 ` [PATCH 00/10] Update linker scripts to ensure appended device tree is correctly aligned Tom Rini

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=aYO3HOmFFVAkjfKD@orbyte.nwl.cc \
    --to=phil@nwl.cc \
    --cc=BMC-SW@aspeedtech.com \
    --cc=aford173@gmail.com \
    --cc=andre.przywara@arm.com \
    --cc=b-padhi@ti.com \
    --cc=chiawei_wang@aspeedtech.com \
    --cc=eugen.hristev@linaro.org \
    --cc=festevam@gmail.com \
    --cc=ilias.apalodimas@linaro.org \
    --cc=jagan@amarulasolutions.com \
    --cc=joel@jms.id.au \
    --cc=kever.yang@rock-chips.com \
    --cc=marek.vasut+renesas@mailbox.org \
    --cc=michal.simek@amd.com \
    --cc=philipp.tomsich@vrull.eu \
    --cc=richard.henderson@linaro.org \
    --cc=ryan_chen@aspeedtech.com \
    --cc=sbabic@nabladev.com \
    --cc=trini@konsulko.com \
    --cc=u-boot@lists.denx.de \
    --cc=uboot-imx@nxp.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