[PATCH 1/4] board: freescale: t208xrdb: detect the board revision letter
Camelia Groza
camelia.groza at oss.nxp.com
Thu Jun 10 14:39:36 CEST 2021
From: Camelia Groza <camelia.groza at nxp.com>
Detect and print the board revision letter based on the CPLD registers.
Account for the upcoming D and E revisions.
Signed-off-by: Camelia Groza <camelia.groza at nxp.com>
---
board/freescale/t208xrdb/t208xrdb.c | 19 +++++++++++++++++--
1 file changed, 17 insertions(+), 2 deletions(-)
diff --git a/board/freescale/t208xrdb/t208xrdb.c b/board/freescale/t208xrdb/t208xrdb.c
index 7ccb205c6473..47e20d15a7fe 100644
--- a/board/freescale/t208xrdb/t208xrdb.c
+++ b/board/freescale/t208xrdb/t208xrdb.c
@@ -27,14 +27,29 @@
DECLARE_GLOBAL_DATA_PTR;
+u8 get_hw_revision(void)
+{
+ u8 ver = CPLD_READ(hw_ver);
+
+ switch (ver) {
+ default:
+ case 0x1:
+ return 'C';
+ case 0x0:
+ return 'D';
+ case 0x2:
+ return 'E';
+ }
+}
+
int checkboard(void)
{
struct cpu_type *cpu = gd->arch.cpu;
static const char *freq[3] = {"100.00MHZ", "125.00MHz", "156.25MHZ"};
printf("Board: %sRDB, ", cpu->name);
- printf("Board rev: 0x%02x CPLD ver: 0x%02x, boot from ",
- CPLD_READ(hw_ver), CPLD_READ(sw_ver));
+ printf("Board rev: %c CPLD ver: 0x%02x, boot from ",
+ get_hw_revision(), CPLD_READ(sw_ver));
#ifdef CONFIG_SDCARD
puts("SD/MMC\n");
--
2.17.1
More information about the U-Boot
mailing list