From 5e6a662e8a0f995870d1cbee53f15b574bd96544 Mon Sep 17 00:00:00 2001 From: Joerg Wunsch Date: Sun, 14 Nov 2021 13:17:44 +0000 Subject: [PATCH] Submitted by David Mosberger-Tang: patch #9320: fix TPI RESET in bitbang.c * bitbang.c (bitbang_initialize): wait for 128 ms after deasserting /RESET (per datasheet), and keep /RESET low during MOSI/MISO link check git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@1472 81a1dc3b-b13d-400b-aceb-764788c761c2 --- ChangeLog | 7 +++++++ NEWS | 1 + bitbang.c | 5 ++++- 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index e55724f9..129c3079 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2021-11-14 Joerg Wunsch + + Submitted by David Mosberger-Tang: + patch #9320: fix TPI RESET in bitbang.c + * bitbang.c (bitbang_initialize): wait for 128 ms after deasserting + /RESET (per datasheet), and keep /RESET low during MOSI/MISO link check + 2021-11-12 Joerg Wunsch Submitted by Jon Thacker: diff --git a/NEWS b/NEWS index e6c91cd5..0628ff63 100644 --- a/NEWS +++ b/NEWS @@ -106,6 +106,7 @@ Current: patch #8957: Allow reading prodsig memory from stk500v2 on xmega devices patch #9110: Let reserved fuse bits to be read as *don't care* patch #9253: Fix for giving terminal_mode commands more than 20 arguments + patch #9320: fix TPI RESET in bitbang.c * Internals: - New avrdude.conf keyword "family_id", used to verify SIB attributes diff --git a/bitbang.c b/bitbang.c index 6c6c9912..fe06c425 100644 --- a/bitbang.c +++ b/bitbang.c @@ -542,7 +542,10 @@ int bitbang_initialize(PROGRAMMER * pgm, AVRPART * p) /* bring RESET high first */ pgm->setpin(pgm, PIN_AVR_RESET, 1); - usleep(1000); + usleep(128000); /* wait t_TOUT (32-128ms) */ + + /* RESET must be LOW in case the existing code is driving the TPI pins: */ + pgm->setpin(pgm, PIN_AVR_RESET, 0); avrdude_message(MSG_NOTICE2, "doing MOSI-MISO link check\n");