From: Camelia Groza <[email protected]>

Detect and print the board revision version based on the CPLD registers.

Signed-off-by: Camelia Groza <[email protected]>
---
Changes in v2:
- patch title and description rewording

 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 35f5dff46645..f7fa65d1a166 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

Reply via email to