Re: [PATCH] toradex: select EVENT for TDX_CFG_BLOCK

Francesco Dolcini <[email protected]>
Newsgroups org.u-boot-project.lists.u-boot
Message-ID <20260812055021.GA7756@francesco-nb>
On Fri, Aug 07, 2026 at 01:25:45PM +0200, Mehmet Fide wrote:
> From: Mehmet Fide <[email protected]>
> 
> The Toradex config block is read by settings_r(), which is reachable
> only as an event spy:
> 
>   EVENT_SPY_SIMPLE(EVT_SETTINGS_R, settings_r);
> 
> board_r.c does call INITCALL_EVT(EVT_SETTINGS_R) unconditionally, but
> with CONFIG_EVENT disabled event_notify_null() is an empty inline, so
> the spy is never reached and settings_r() never runs. Nothing else
> selects EVENT for colibri_vf, and CONFIG_EVENT has no prompt, so a
> defconfig cannot turn it on by itself.
> 
> The effect is that serial#, ethaddr and eth1addr are never populated
> from the config block. serial# in turn is what fdt_root() copies into
> the device tree as "serial-number", so Linux loses
> /proc/device-tree/serial-number along with anything deriving a MAC
> address or a device identity from it. The failure is quiet: a module
> whose saved environment predates the conversion to the event framework
> keeps the old values and looks healthy until the environment is
> rewritten.
> 
> Verified on a Colibri VF50. Before the change "printenv serial#"
> reports "not defined" and no "MISSING TORADEX CONFIG BLOCK" is
> printed, which is the signature of the spy never running. After it the
> banner shows
> 
>   Model: Toradex 0013 Colibri VF50 128MB IT V1.2B
>   Serial#: 03135809
> 
> and Linux finds /proc/device-tree/serial-number again.
> 
> TDX_CFG_BLOCK cannot work without the spy, so select what it needs.
> 
> Signed-off-by: Mehmet Fide <[email protected]>

Acked-by: Francesco Dolcini <[email protected]>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.