summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVadim Bendebury <vbendeb@chromium.org>2014-09-09 20:41:33 -0700
committerPatrick Georgi <pgeorgi@google.com>2015-03-28 08:48:34 +0100
commitf32ef133dd0a905ebffb994da2797cf9bf6633f2 (patch)
tree70040b0d5c7b3a4ececff260216f4ccd1a73a01e
parentc7bbc04544f60d5be44ea4c61899169406066a33 (diff)
storm: fix SW_RESET signal polarity
The actual level required to take the ethernet switch out of reset is low, not high. BUG=chrome-os-partner:31780 TEST=with this patch applied, when proto0.2 boots, the ethernet switch's LED blink once, as was the case with proto0. Change-Id: If4004ac5c2dc837270d4cb840d96ce92021d231e Signed-off-by: Patrick Georgi <pgeorgi@chromium.org> Original-Commit-Id: 9fa69d22de901cd0843948de0f95a66a2aa99353 Original-Change-Id: I81eeb73b85cf113709b6d4ac3aa7639a40fa6719 Original-Signed-off-by: Vadim Bendebury <vbendeb@chromium.org> Original-Reviewed-on: https://chromium-review.googlesource.com/217416 Original-Reviewed-by: David Hendricks <dhendrix@chromium.org> Reviewed-on: http://review.coreboot.org/9121 Tested-by: build bot (Jenkins) Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
-rw-r--r--src/mainboard/google/storm/mainboard.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/mainboard/google/storm/mainboard.c b/src/mainboard/google/storm/mainboard.c
index ebe284911d..3da6f905b2 100644
--- a/src/mainboard/google/storm/mainboard.c
+++ b/src/mainboard/google/storm/mainboard.c
@@ -97,11 +97,16 @@ static void deassert_sw_reset(void)
if (board_id() == 0)
return;
- /* only proto0.2 and later care about this. */
+ /*
+ * only proto0.2 and later care about this. This signal is eventually
+ * driving the ehernet switch reset input, which is active low. But
+ * since this signal gets inverted along the way, the GPIO needs to be
+ * driven low to take the switch out of reset.
+ */
gpio_tlmm_config_set(SW_RESET_GPIO, FUNC_SEL_GPIO,
GPIO_PULL_UP, GPIO_4MA, GPIO_ENABLE);
- gpio_set_out_value(SW_RESET_GPIO, 1);
+ gpio_set_out_value(SW_RESET_GPIO, 0);
}
static void mainboard_init(device_t dev)