diff mbox series

[1/4] board: freescale: t208xrdb: detect the board revision letter

Message ID 0dd271b486334c9c4c330261d34cbd19438aeae6.1623327658.git.camelia.groza@nxp.com
State Accepted
Commit c91b1305547ee72c0b0e5995c3b47d2b56ad698f
Delegated to: Tom Rini
Headers show
Series board: freescale: add T2080RDB rev D support | expand

Commit Message

Camelia Groza June 10, 2021, 12:39 p.m. UTC
From: Camelia Groza <camelia.groza@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@nxp.com>
---
 board/freescale/t208xrdb/t208xrdb.c | 19 +++++++++++++++++--
 1 file changed, 17 insertions(+), 2 deletions(-)
diff mbox series

Patch

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");