[coreboot-gerrit] Patch set updated for coreboot: 736e592 t132: ryu: Correct how board id is retrieved

Patrick Georgi (pgeorgi@google.com) gerrit at coreboot.org
Wed Mar 25 23:17:22 CET 2015


Patrick Georgi (pgeorgi at google.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/8920

-gerrit

commit 736e592120921204e311b117a134faa47daaea95
Author: Jimmy Zhang <jimmzhang at nvidia.com>
Date:   Fri Aug 8 18:11:10 2014 -0700

    t132: ryu: Correct how board id is retrieved
    
    Two changes: 1. A44 ID straps use different gpio pins than nyan.
    2. A44 uses tristate values instead two state values.
    
    BUG=none
    BRANCH=none
    TEST=Built and tested on A44 board.
    
    Change-Id: I6a36f6da0c9f6168780606ba76595c7a0af8e8bf
    Signed-off-by: Patrick Georgi <pgeorgi at chromium.org>
    Original-Commit-Id: 2eb0cae0e3396da1eaeaa72411c4b74300138a7b
    Original-Change-Id: Ia2a4309d3b63b0a94d79465dd727b01fae01e1b9
    Original-Signed-off-by: Jimmy Zhang <jimmzhang at nvidia.com>
    Original-Reviewed-on: https://chromium-review.googlesource.com/211753
    Original-Reviewed-by: Aaron Durbin <adurbin at chromium.org>
---
 src/mainboard/google/rush_ryu/Kconfig   |  1 +
 src/mainboard/google/rush_ryu/boardid.c | 12 ++++++------
 2 files changed, 7 insertions(+), 6 deletions(-)

diff --git a/src/mainboard/google/rush_ryu/Kconfig b/src/mainboard/google/rush_ryu/Kconfig
index 192b9fa..ec6eadb 100644
--- a/src/mainboard/google/rush_ryu/Kconfig
+++ b/src/mainboard/google/rush_ryu/Kconfig
@@ -31,6 +31,7 @@ config BOARD_SPECIFIC_OPTIONS # dummy
 	select MAINBOARD_HAS_BOOTBLOCK_INIT
 	select BOARD_ROMSIZE_KB_4096
 	select VIRTUAL_DEV_SWITCH
+	select TERTIARY_BOARD_ID
 
 config MAINBOARD_DIR
 	string
diff --git a/src/mainboard/google/rush_ryu/boardid.c b/src/mainboard/google/rush_ryu/boardid.c
index 67e55ba..42a51bd 100644
--- a/src/mainboard/google/rush_ryu/boardid.c
+++ b/src/mainboard/google/rush_ryu/boardid.c
@@ -19,6 +19,7 @@
 
 #include <console/console.h>
 #include <soc/nvidia/tegra132/gpio.h>
+#include <stdlib.h>
 
 #include <boardid.h>
 
@@ -27,12 +28,11 @@ uint8_t board_id(void)
 	static int id = -1;
 
 	if (id < 0) {
-		id = gpio_get_in_value(GPIO(Q3)) << 0 |
-		     gpio_get_in_value(GPIO(T1)) << 1 |
-		     gpio_get_in_value(GPIO(X1)) << 2 |
-		     gpio_get_in_value(GPIO(X4)) << 3;
-		printk(BIOS_SPEW, "Board ID: %#x.\n", id);
-	}
+		gpio_t gpio[] = {GPIO(Q3), GPIO(Q4)};
+
+		id = gpio_get_in_tristate_values(gpio, ARRAY_SIZE(gpio), 0);
 
+		printk(BIOS_SPEW, "Board TRISTATE ID: %#x.\n", id);
+	}
 	return id;
 }



More information about the coreboot-gerrit mailing list