[coreboot-gerrit] Patch set updated for coreboot: accc398 veyron*: use gpio_base2_value() in board_id()

Patrick Georgi (pgeorgi@google.com) gerrit at coreboot.org
Fri Apr 10 17:26:31 CEST 2015


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

-gerrit

commit accc398c76526743db1c5e5ed71d2a5c884cdb75
Author: David Hendricks <dhendrix at chromium.org>
Date:   Fri Nov 7 13:48:49 2014 -0800

    veyron*: use gpio_base2_value() in board_id()
    
    This makes board_id() use the generic gpio_base2_value() function
    to obtain the value of the board ID straps.
    
    BUG=none
    BRANCH=none
    TEST=tested on pinky
    
    Change-Id: I15c1310889b989c34638fd342011aef5fe7bcec1
    Signed-off-by: Patrick Georgi <pgeorgi at chromium.org>
    Original-Commit-Id: fcbb8a6998a66531326afe16b232395d49fee64d
    Original-Signed-off-by: David Hendricks <dhendrix at chromium.org>
    Original-Change-Id: I5847bf1c5b26bcaf7d36103f31bb255b31ff8185
    Original-Reviewed-on: https://chromium-review.googlesource.com/228370
    Original-Reviewed-by: Julius Werner <jwerner at chromium.org>
---
 src/mainboard/google/veyron_jerry/boardid.c | 10 ++--------
 src/mainboard/google/veyron_pinky/boardid.c | 10 ++--------
 2 files changed, 4 insertions(+), 16 deletions(-)

diff --git a/src/mainboard/google/veyron_jerry/boardid.c b/src/mainboard/google/veyron_jerry/boardid.c
index 8d3e183..66de276 100644
--- a/src/mainboard/google/veyron_jerry/boardid.c
+++ b/src/mainboard/google/veyron_jerry/boardid.c
@@ -25,17 +25,11 @@
 uint8_t board_id(void)
 {
 	static int id = -1;
-	static const gpio_t pins[] = {[3] = GPIO(2, A, 7), [2] = GPIO(2, A, 2),
+	static gpio_t pins[] = {[3] = GPIO(2, A, 7), [2] = GPIO(2, A, 2),
 		[1] = GPIO(2, A, 1), [0] = GPIO(2, A, 0)}; /* GPIO2_A0 is LSB */
 
 	if (id < 0) {
-		int i;
-
-		id = 0;
-		for (i = 0; i < ARRAY_SIZE(pins); i++) {
-			gpio_input(pins[i]);
-			id |= gpio_get(pins[i]) << i;
-		}
+		id = gpio_base2_value(pins, ARRAY_SIZE(pins));
 		printk(BIOS_SPEW, "Board ID: %d.\n", id);
 	}
 
diff --git a/src/mainboard/google/veyron_pinky/boardid.c b/src/mainboard/google/veyron_pinky/boardid.c
index 8d3e183..66de276 100644
--- a/src/mainboard/google/veyron_pinky/boardid.c
+++ b/src/mainboard/google/veyron_pinky/boardid.c
@@ -25,17 +25,11 @@
 uint8_t board_id(void)
 {
 	static int id = -1;
-	static const gpio_t pins[] = {[3] = GPIO(2, A, 7), [2] = GPIO(2, A, 2),
+	static gpio_t pins[] = {[3] = GPIO(2, A, 7), [2] = GPIO(2, A, 2),
 		[1] = GPIO(2, A, 1), [0] = GPIO(2, A, 0)}; /* GPIO2_A0 is LSB */
 
 	if (id < 0) {
-		int i;
-
-		id = 0;
-		for (i = 0; i < ARRAY_SIZE(pins); i++) {
-			gpio_input(pins[i]);
-			id |= gpio_get(pins[i]) << i;
-		}
+		id = gpio_base2_value(pins, ARRAY_SIZE(pins));
 		printk(BIOS_SPEW, "Board ID: %d.\n", id);
 	}
 



More information about the coreboot-gerrit mailing list