From: Bruno Banelli <bbanelli@gmail.com>
To: Huan Zhou <pericycle.cc@gmail.com>, Guodong Xu <guodong.xu@riscstar.com>
Cc: Tom Rini <trini@konsulko.com>,
u-boot-spacemit@groups.io, u-boot@lists.u-boot-project.org,
Bruno Banelli <bbanelli@gmail.com>
Subject: [PATCH] board: spacemit: k1: accept the "m1-x_" TLV product name prefix
Date: Tue, 25 Aug 2026 08:52:57 +0200 [thread overview]
Message-ID: <20260825065257.69536-1-bbanelli@gmail.com> (raw)
board_fit_config_name_match() derives the device tree name from the TLV
product name held in the board EEPROM, and only recognises boards whose
product name starts with "k1-x_".
Boards fitted with the higher-binned M1 part report an "m1-x_" prefix
instead. On those, fdt_name is left empty and the function silently
falls back to "k1-musepi-pro", so an M1 board selects the wrong device
tree with no error or warning.
A Milk-V Jupiter fitted with an M1 reads, from the 24c04 at i2c2 0x50:
00: 54 6c 76 49 6e 66 6f 00 01 00 1a 21 12 6d 31 2d TlvInfo....!.m1-
10: 78 5f 6d 69 6c 6b 76 2d 6a 75 70 69 74 65 72 fe x_milkv-jupiter.
i.e. TLV code 0x21 (product name), length 0x12, "m1-x_milkv-jupiter".
The device trees are named for the K1 in both cases, so accept either
prefix and keep deriving a "k1-" name.
Signed-off-by: Bruno Banelli <bbanelli@gmail.com>
---
board/spacemit/k1/spl.c | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/board/spacemit/k1/spl.c b/board/spacemit/k1/spl.c
index d749e21a..e82fad23 100644
--- a/board/spacemit/k1/spl.c
+++ b/board/spacemit/k1/spl.c
@@ -367,7 +367,14 @@ int board_fit_config_name_match(const char *name)
int i;
memset(fdt_name, 0, I2C_BUF_SIZE);
- if (!strncmp(product_name, "k1-x_", 5)) {
+ /*
+ * The TLV product name is prefixed with the SoC variant fitted to
+ * the board: "k1-x_" for a K1, "m1-x_" for the higher-binned M1.
+ * Device trees are named for the K1 in both cases, so accept
+ * either prefix and always derive a "k1-" name from it.
+ */
+ if (!strncmp(product_name, "k1-x_", 5) ||
+ !strncmp(product_name, "m1-x_", 5)) {
snprintf(fdt_name, I2C_BUF_SIZE, "%s-%s", "k1",
&product_name[5]);
}
base-commit: 964ad5b5c91b7be56e443e899d7f873e6aa8c9fc
--
2.43.0
next reply other threads:[~2026-08-25 12:42 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-25 6:52 Bruno Banelli [this message]
2026-08-25 22:44 ` [PATCH] board: spacemit: k1: accept the "m1-x_" TLV product name prefix Yixun Lan
2026-08-25 22:50 ` Yixun Lan
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=20260825065257.69536-1-bbanelli@gmail.com \
--to=bbanelli@gmail.com \
--cc=guodong.xu@riscstar.com \
--cc=pericycle.cc@gmail.com \
--cc=trini@konsulko.com \
--cc=u-boot-spacemit@groups.io \
--cc=u-boot@lists.u-boot-project.org \
/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.