board/ti/am335x: add support for BeagleBone Green
authorrobertcnelson@gmail.com <robertcnelson@gmail.com>
Wed, 11 Nov 2015 15:10:52 +0000 (09:10 -0600)
committerTom Rini <trini@konsulko.com>
Wed, 18 Nov 2015 19:50:07 +0000 (14:50 -0500)
SeeedStudio BeagleBone Green (BBG) is clone of the BeagleBone Black (BBB) minus
the HDMI port and addition of two Grove connectors (i2c2 and usart2).

This board can be identified by the 1A value after A335BNLT (BBB) in the at24 eeprom:
1A: [aa 55 33 ee 41 33 33 35  42 4e 4c 54 1a 00 00 00 |.U3.A335BNLT....|]

http://beagleboard.org/green
http://www.seeedstudio.com/wiki/Beaglebone_green

In Mainline Kernel as of:
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=79a4e64c679d8a0b1037da174e4aea578c80c4e6

Patch tested on BeagleBone Black (rev C) and BeagleBone Green (production model)

Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
CC: Tom Rini <trini@konsulko.com>
CC: Jason Kridner <jkridner@gmail.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
board/ti/am335x/board.c
include/configs/am335x_evm.h

index f0cb1e2..f56d17e 100644 (file)
@@ -507,9 +507,15 @@ int board_late_init(void)
        safe_string[sizeof(header.name)] = 0;
        setenv("board_name", safe_string);
 
-       strncpy(safe_string, (char *)header.version, sizeof(header.version));
-       safe_string[sizeof(header.version)] = 0;
-       setenv("board_rev", safe_string);
+       /* BeagleBone Green eeprom, board_rev: 0x1a 0x00 0x00 0x00 */
+       if ( (header.version[0] == 0x1a) && (header.version[1] == 0x00) &&
+            (header.version[2] == 0x00) && (header.version[3] == 0x00) ) {
+               setenv("board_rev", "BBG1");
+       } else {
+               strncpy(safe_string, (char *)header.version, sizeof(header.version));
+               safe_string[sizeof(header.version)] = 0;
+               setenv("board_rev", safe_string);
+       }
 #endif
 
        return 0;
index d58816d..ed3fd34 100644 (file)
                "if test $board_name = A335BONE; then " \
                        "setenv fdtfile am335x-bone.dtb; fi; " \
                "if test $board_name = A335BNLT; then " \
-                       "setenv fdtfile am335x-boneblack.dtb; fi; " \
+                       "if test $board_rev = BBG1; then " \
+                               "setenv fdtfile am335x-bonegreen.dtb; " \
+                       "else " \
+                               "setenv fdtfile am335x-boneblack.dtb; " \
+                       "fi; " \
+               "fi; " \
                "if test $board_name = A33515BB; then " \
                        "setenv fdtfile am335x-evm.dtb; fi; " \
                "if test $board_name = A335X_SK; then " \