summaryrefslogtreecommitdiff
path: root/src/mainboard
diff options
context:
space:
mode:
authorAaron Durbin <adurbin@chromium.org>2014-11-05 14:01:29 -0600
committerPatrick Georgi <pgeorgi@google.com>2015-04-10 11:58:04 +0200
commit33b31152b0e7310d872449f548cd8e3da211f7ea (patch)
tree087691a0a5ec8aead277d3ac73308b134ff020a0 /src/mainboard
parent1fd91a19664a96022cc036fcb3f6d53fe7ff8868 (diff)
downloadcoreboot-33b31152b0e7310d872449f548cd8e3da211f7ea.tar.xz
ryu: remove board id normalization
The gpio_get_tristates() function prints out the values observed while processing the GPIOs. Additionally, the values for the normalization were completely consecutive. Therefore, this indirection can be removed. BUG=chrome-os-partner:33578 BRANCH=None TEST=Built and booted. Change-Id: I088a2f1c7601c014a7f8a9eb228efa9bb80f1e01 Signed-off-by: Patrick Georgi <pgeorgi@chromium.org> Original-Commit-Id: 02e52554b9cbf85034feb9aedc50f09b70893e32 Original-Change-Id: I17d85891087e3128790329a5f05cbdab4cbc950e Original-Signed-off-by: Aaron Durbin <adurbin@chromium.org> Original-Reviewed-on: https://chromium-review.googlesource.com/227680 Original-Reviewed-by: Furquan Shaikh <furquan@chromium.org> Reviewed-on: http://review.coreboot.org/9406 Tested-by: build bot (Jenkins) Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Diffstat (limited to 'src/mainboard')
-rw-r--r--src/mainboard/google/rush_ryu/boardid.c36
1 files changed, 2 insertions, 34 deletions
diff --git a/src/mainboard/google/rush_ryu/boardid.c b/src/mainboard/google/rush_ryu/boardid.c
index 5b4c1cd73f..37f6292156 100644
--- a/src/mainboard/google/rush_ryu/boardid.c
+++ b/src/mainboard/google/rush_ryu/boardid.c
@@ -17,53 +17,21 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
-#include <base3.h>
#include <boardid.h>
#include <console/console.h>
#include <stdlib.h>
#include "gpio.h"
-struct id_to_str {
- const char *str;
- int tri_state_value;
- int normalized_id;
-};
-
-static const struct id_to_str bdid_map[] = {
- { "PROTO 0", BASE3(0, 0), BOARD_ID_PROTO_0 },
- { "PROTO 1", BASE3(0, 1), BOARD_ID_PROTO_1 },
- { "EVT", BASE3(0, Z), BOARD_ID_EVT },
- { "DVT", BASE3(1, 0), BOARD_ID_DVT },
- { "PVT", BASE3(1, 1), BOARD_ID_PVT },
- { "MP", BASE3(1, Z), BOARD_ID_MP },
- { "Z0", BASE3(Z, 0), -1 },
- { "Z1", BASE3(Z, 1), -1 },
- { "ZZ", BASE3(Z, Z), -1 },
-};
-
uint8_t board_id(void)
{
static int id = -1;
if (id < 0) {
- const char *idstr = "Unknown";
- int i;
- int tristate_id;
gpio_t gpio[] = {[1] = BD_ID1, [0] = BD_ID0}; /* ID0 is LSB */
- tristate_id = gpio_get_tristates(gpio, ARRAY_SIZE(gpio));
-
- for (i = 0; i < ARRAY_SIZE(bdid_map); i++) {
- if (tristate_id != bdid_map[i].tri_state_value)
- continue;
- idstr = bdid_map[i].str;
- id = bdid_map[i].normalized_id;
- break;
- }
-
- printk(BIOS_SPEW, "Board ID: '%s' %d (%#x)\n", idstr, id,
- tristate_id);
+ id = gpio_get_tristates(gpio, ARRAY_SIZE(gpio));
}
+
return id;
}