From 53d98faad76f8a0afd0ea91e9d00b747c6f88d5a Mon Sep 17 00:00:00 2001 From: Frank Li Date: Tue, 28 Oct 2025 10:46:25 +0800 Subject: [PATCH] Add serial# for SPL SDP download After update this, uuu(>1.6) can use below command to filter out devices when multi boards connected. uuu -ms ... [sudo] uuu -lsusb can list known devices with serial# informaiton. Serial number is retrieved via get_board_serial() and passed to g_dnl_set_serialnumber(). This part is conditionally compiled for i.MX94 only now. Signed-off-by: Frank Li Signed-off-by: Alice Guo Reviewed-by: Ye Li --- arch/arm/mach-imx/spl.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/arch/arm/mach-imx/spl.c b/arch/arm/mach-imx/spl.c index 518d9cb1262..57ae81c7834 100644 --- a/arch/arm/mach-imx/spl.c +++ b/arch/arm/mach-imx/spl.c @@ -21,6 +21,8 @@ #include #include #include +#include +#include DECLARE_GLOBAL_DATA_PTR; @@ -184,6 +186,16 @@ u32 spl_boot_device(void) #ifdef CONFIG_SPL_USB_GADGET int g_dnl_bind_fixup(struct usb_device_descriptor *dev, const char *name) { +#ifdef CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG +#ifdef CONFIG_IMX94 + struct tag_serialnr serialnr; + char serial_string[0x21] = {0}; + + get_board_serial(&serialnr); + snprintf(serial_string, sizeof(serial_string), "%08x%08x", serialnr.high, serialnr.low); + g_dnl_set_serialnumber(serial_string); +#endif +#endif put_unaligned(CONFIG_USB_GADGET_PRODUCT_NUM + 0xfff, &dev->idProduct); return 0; -- 2.47.3