From bf49c4ee1f76ce4543e189a06ccb178007d96823 Mon Sep 17 00:00:00 2001
From: Hannes Weisbach <hannes_weisbach@gmx.net>
Date: Thu, 2 May 2013 11:07:30 +0000
Subject: [PATCH] avr.c: Fix avr_tpi_poll_nvmbsy() polling returned data
 instead return code

git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@1155 81a1dc3b-b13d-400b-aceb-764788c761c2
---
 ChangeLog | 1 +
 avr.c     | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/ChangeLog b/ChangeLog
index be89a640..710287e3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -2,6 +2,7 @@
 
 	* avrftdi_private.h: Add libusb-1.0 include to fix include order in windows.
 	* NEWS: Add notice avrftdi supporting TPI
+	* avr.c: Fix avr_tpi_poll_nvmbsy() - poll read data instead of return code
 
 2013-04-30  Hannes Weisbach <hannes_weisbach@gmx.net>
 
diff --git a/avr.c b/avr.c
index 3a81b03e..e79de0ef 100644
--- a/avr.c
+++ b/avr.c
@@ -51,7 +51,7 @@ int avr_tpi_poll_nvmbsy(PROGRAMMER *pgm)
 
   cmd = TPI_CMD_SIN | TPI_SIO_ADDR(TPI_IOREG_NVMCSR);
   rc = pgm->cmd_tpi(pgm, &cmd, 1, &res, 1);
-  return (rc & TPI_IOREG_NVMCSR_NVMBSY);
+  return (res & TPI_IOREG_NVMCSR_NVMBSY);
 }
 
 /* TPI: setup NVMCMD register and pointer register (PR) for read/write/erase */