summaryrefslogtreecommitdiff
path: root/board/starfive/visionfive2/spl.c
diff options
context:
space:
mode:
Diffstat (limited to 'board/starfive/visionfive2/spl.c')
-rw-r--r--board/starfive/visionfive2/spl.c21
1 files changed, 19 insertions, 2 deletions
diff --git a/board/starfive/visionfive2/spl.c b/board/starfive/visionfive2/spl.c
index 9a3081ef06f..353313b9e88 100644
--- a/board/starfive/visionfive2/spl.c
+++ b/board/starfive/visionfive2/spl.c
@@ -140,9 +140,26 @@ int board_fit_config_name_match(const char *name)
} else if (!strncmp(product_id, "MARS", 4) &&
!strcmp(name, "jh7110-milkv-mars")) {
return 0;
- } else if (!strncmp(product_id, "STAR64", 6) &&
- !strcmp(name, "jh7110-pine64-star64")) {
+ } else if (!strcmp(name, "starfive/jh7110-milkv-mars") &&
+ !strncmp(get_product_id_from_eeprom(), "MARS", 4)) {
return 0;
+ } else if ((!strcmp(name, "starfive/jh7110-pine64-star64")) &&
+ !strncmp(get_product_id_from_eeprom(), "STAR64", 6)) {
+ return 0;
+ } else if ((!strcmp(name, "starfive/jh7110-starfive-visionfive-2-v1.2a")) &&
+ !strncmp(get_product_id_from_eeprom(), "VF7110", 6)) {
+ switch (get_pcb_revision_from_eeprom()) {
+ case 'a':
+ case 'A':
+ return 0;
+ }
+ } else if ((!strcmp(name, "starfive/jh7110-starfive-visionfive-2-v1.2b")) &&
+ !strncmp(get_product_id_from_eeprom(), "VF7110", 6)) {
+ switch (get_pcb_revision_from_eeprom()) {
+ case 'b':
+ case 'B':
+ return 0;
+ }
}
return -EINVAL;