summaryrefslogtreecommitdiffstats
path: root/buspirate_spi.c
diff options
context:
space:
mode:
authorMaxime Vincent <maxime.vince@gmail.com>2017-11-24 13:04:08 +0100
committerNico Huber <nico.h@gmx.de>2018-05-11 16:15:19 +0000
commit2099c648b929cd36c500202089ef4b7a8c14680f (patch)
treed934dc4be97cd3e0e97b948f66463142c598b8cd /buspirate_spi.c
parent256835787229205b6522a3c12322b22303bb4152 (diff)
downloadflashrom-2099c648b929cd36c500202089ef4b7a8c14680f.tar.gz
flashrom-2099c648b929cd36c500202089ef4b7a8c14680f.tar.bz2
flashrom-2099c648b929cd36c500202089ef4b7a8c14680f.zip
buspirate_spi: Tristate IOs when using using pullup=on
Avoid putting 3.3V on IO pins when pullup=on to avoid damage to 1.8V chips. Signed-off-by: David Hendricks <david.hendricks@gmail.com> Change-Id: I9ac4c6b7a0079bb1022f2d70030a6eb29996108f Reviewed-on: https://review.coreboot.org/23864 Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'buspirate_spi.c')
-rw-r--r--buspirate_spi.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/buspirate_spi.c b/buspirate_spi.c
index db8b310b5..fad309f96 100644
--- a/buspirate_spi.c
+++ b/buspirate_spi.c
@@ -543,6 +543,10 @@ int buspirate_spi_init(void)
/* Set SPI config: output type, idle, clock edge, sample */
bp_commbuf[0] = 0x80 | 0xa;
+ if (pullup == 1) {
+ bp_commbuf[0] &= ~(1 << 3);
+ msg_pdbg("Pull-ups enabled, so using HiZ pin output! (Open-Drain mode)\n");
+ }
ret = buspirate_sendrecv(bp_commbuf, 1, 1);
if (ret)
return 1;