Hello community,
here is the log from the commit of package avrdude for openSUSE:Factory
checked in at Fri Aug 27 16:30:48 CEST 2010.
--------
--- avrdude/avrdude.changes 2008-09-30 16:07:51.000000000 +0200
+++ /mounts/work_src_done/STABLE/avrdude/avrdude.changes 2010-05-15 17:49:51.000000000 +0200
@@ -1,0 +2,94 @@
+Sat May 15 15:44:09 UTC 2010 - jw@novell.com
+
+- fixed mkbutterfly target, to test the bootloader response in the loop,
+ instead of once afterwards.
+
+-------------------------------------------------------------------
+Thu Feb 11 18:18:06 CET 2010 - max@suse.de
+
+- Remove unused source and patch files.
+- Remove special cases for distributions we don't build for.
+- Move from /opt/cross to /usr, as this is not a cross compile
+ tool for which there is a "native" counterpart.
+- Use the pre-built pdf from upstream to avoid the latex dependency.
+- Add proper info file handling.
+- Add udev rules for USB programmers and USB serial adapters, so
+ that they can be accessed by all users. This is considered safe
+ as this is a very specialized package that will probably only get
+ installed on development machines with no untrusted local or
+ remote users.
+
+-------------------------------------------------------------------
+Fri Jan 22 16:59:10 CET 2010 - jw@suse.de
+
+- update to avrdude-5.10
+ 2010-01-19 Joerg Wunsch
+ * configure.ac: Released version 5.10.
+ 2010-01-19 Joerg Wunsch
+ bug #28677: Cygwin's GCC no longer supports -mno-cygwin option
+ * configure.ac: For Win32 environments, add a check whether the
+ compiler understands the -mno-cygwin option. If not, don't use
+ it but suggest using a different compiler.
+ 2010-01-18 David Hoerl
+ bug #28660: Problem with loading intel hex rom files that exceed
+ 0x10000 bytes
+ * fileio.c: Fix two byte shifts.
+ 2010-01-15 Joerg Wunsch
+ Submitted by Michael biebl:
+ * configure.ac: Fix FreeBSD default serial port name.
+ * doc/avrdude.texi: (Dito.)
+ 2010-01-15 Joerg Wunsch
+ * jtagmkII.c: If entering JTAG mode fails with a bad JTAG ID
+ message, retry with external reset applied (in case the target
+ is in sleep mode or has asserted the JTD bit).
+ 2010-01-15 Joerg Wunsch
+ Submitted by Aurelien Jarno:
+ * configure.ac: Fix build for GNU/kFreeBSD.
+ * ppi.c: (Dito.)
+ * par.c: (Dito.)
+
+-------------------------------------------------------------------
+Fri Jan 22 16:33:23 CET 2010 - jw@suse.de
+
+- added /usr/bin/avrdude symlink,
+ so that /opt/cross/bin is no longer needed in PATH
+
+-------------------------------------------------------------------
+Tue Jan 5 21:46:20 UTC 2010 - jw@novell.com
+
+- added avrdude_butterfly_mk.patch
+ mikrokopter.de uses a modified version of butterfly.
+ This patch creates an avrdude providing bot the unchanged butterfly and
+ a new mkbutterfly. env BUTTERFLY_MK=1 avrdude -c butterfly is also provided.
+ Sent upstream as https://savannah.nongnu.org/patch/?7056
+
+-------------------------------------------------------------------
+Mon Dec 28 19:38:45 CET 2009 - bernhard@bwalle.de
+
+- Add "texinfo-dvi" to BuildRequires for Fedora/RHEL/CentOS
+ to fix finally the build because of a missing "texi2dvi".
+
+-------------------------------------------------------------------
+Mon Dec 28 14:12:45 CET 2009 - bernhard@bwalle.de
+
+- Give /etc/modprobe.d/avrdude_parport the 'conf' extension to make
+ new versions of module-init-tools happy.
+- Add "texinfo" to BuildRequires for Fedora/RHEL/CentOS.
+
+-------------------------------------------------------------------
+Thu Dec 17 00:24:00 UTC 2009 - jw@novell.com
+
+- readded other half of half-upstreamed avrdude-5.5.usbtiny.64bit.patch
+- convertUniToAscii bug, HVPP of EEPROM bug, serious memory corruption
+ ATmega163 fix, tcsetattr() on Solaris bug, Crash in stk500v2_open,
+ xmega problems with JTAGICEmkII, New devices: ATXMEGA64A1, ATXMEGA192A1,
+ ATXMEGA256A1, ATXMEGA64A3, ATXMEGA128A3, ATXMEGA192A3, ATXMEGA256A3,
+ ATXMEGA256A3B, ATXMEGA16A4, ATXMEGA32A4, ATXMEGA64A4, ATXMEGA128A4
+- bnc#564303
+
+-------------------------------------------------------------------
+Tue Dec 15 11:42:04 UTC 2009 - jw@novell.com
+
+- avrdude 5.8 first test
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
Old:
----
avrdude-5.5.tar.bz2
avrdude-use-serial-device-for-serbb
udev-parport.rules
New:
----
avrdude-5.10.tar.bz2
avrdude_butterfly_mk.patch
avrdude-doc-5.10.pdf
avrdude-doc-5.10.tar.gz
avrdude-udev.rules
avrdude-use-serial-device-for-serbb.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ avrdude.spec ++++++
--- /var/tmp/diff_new_pack.9uiGYp/_old 2010-08-27 16:29:16.000000000 +0200
+++ /var/tmp/diff_new_pack.9uiGYp/_new 2010-08-27 16:29:16.000000000 +0200
@@ -1,7 +1,7 @@
#
-# spec file for package avrdude (Version 5.5)
+# spec file for package avrdude (Version 5.10)
#
-# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -19,83 +19,55 @@
Name: avrdude
-%if %{?suse_version:1}0
-BuildRequires: bison flex libpng readline-devel
-%if %suse_version > 1020
-BuildRequires: texlive texlive-latex
-BuildRequires: libusb-devel
-%else
-BuildRequires: libusb te_ams te_latex
-%endif
-%else
-BuildRequires: libpng mesa-libGL te_latex texi2html
-%endif
-Version: 5.5
-Release: 111
+BuildRequires: bison flex libusb-devel readline-devel
+Version: 5.10
+Release: 1
Url: http://savannah.nongnu.org/projects/avrdude
Group: Development/Tools/Other
-License: GPL v2 or later
+License: GPLv2+
Summary: Upload tool for AVR microcontrollers
-Source: %name-%version.tar.bz2
-Source2: modprobe.avrdude_parport
-Source3: udev-parport.rules
-Patch0: avrdude-use-serial-device-for-serbb
+Source0: http://savannah.nongnu.org/download/%name/%name-%version.tar.bz2
+Source1: http://savannah.nongnu.org/download/%name/%name-doc-%version.tar.gz
+Source2: http://savannah.nongnu.org/download/%name/%name-doc-%version.pdf
+Source3: modprobe.avrdude_parport
+Source4: avrdude-udev.rules
+Patch0: avrdude-use-serial-device-for-serbb.patch
Patch1: avrdude-5.5.usbtiny.64bit.patch
+Patch2: avrdude_butterfly_mk.patch
AutoReqProv: on
Provides: avr-programmer
BuildRoot: %{_tmppath}/%{name}-%{version}-build
PreReq: /bin/cat /sbin/modprobe
+PreReq: %install_info_prereq
%description
avrdude is a tool for avr microcontrollers and drives many hardware
in-system programmers. avrdude allows you to program your
microcontroller through the parallel port of your computer.
-
-
-Authors:
---------
- Brian S. Dean
- Joerg Wunsch
- Eric Weddington
- Jan-Hinnerk Reichert
- Alex Shepherd
- Martin Thomas
- Theodore A. Roth
- Michael Holzt
- Colin O'Flynn
-
%prep
-%setup
+%setup -q -a 1
+cp -a %{S:2} %name.pdf
+mv %name-html html
%patch0 -p1
%patch1 -p1
+%patch2 -p1
touch lexer.l
%build
-export CFLAGS="$RPM_OPT_FLAGS"
-./configure --prefix=/opt/cross \
- --mandir=/usr/share/man \
-%if %{?suse_version:1}0
- --enable-doc
-%else
- --enable-doc
-%endif
+%configure
make
%install
make DESTDIR=$RPM_BUILD_ROOT install
-if [ -d $RPM_BUILD_ROOT/opt/cross/share/doc/%name-%version ]; then
- mv doc doc.orig
- mv $RPM_BUILD_ROOT/opt/cross/share/doc/%name-%version doc
- rmdir $RPM_BUILD_ROOT/opt/cross/share/doc
- rmdir $RPM_BUILD_ROOT/opt/cross/share
-fi
-install -D -m 644 %{SOURCE2} $RPM_BUILD_ROOT/etc/modprobe.d/avrdude_parport
-install -D -m 644 %{SOURCE3} $RPM_BUILD_ROOT/etc/udev/rules.d/98-parport.rules
+make DESTDIR=$RPM_BUILD_ROOT -C doc install-info
+install -D -m 644 %{S:3} $RPM_BUILD_ROOT/etc/modprobe.d/avrdude_parport.conf
+install -D -m 644 %{S:4} $RPM_BUILD_ROOT/etc/udev/rules.d/98-avrdude.rules
+install -d $RPM_BUILD_ROOT/usr/bin
%post
%if %{?suse_version:1}0
-%if %suse_version >= 1000
+%install_info --info-dir=%{_infodir} %{_infodir}/%{name}.info.gz
if [ "$1" -eq 1 ]; then
# $1==0 is binary uninstall.
# $1==1 is binary install.
@@ -106,16 +78,19 @@
fi
fi
%endif
-%endif
+
+%postun
+%install_info --info-dir=%{_infodir} %{_infodir}/%{name}.info.gz
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr (-, root, root)
-%doc AUTHORS COPYING NEWS README doc
-%doc /usr/share/man/man?/*.*
-/opt/*
+%doc AUTHORS COPYING NEWS README html %name.pdf
+%doc %_mandir/*/*
+%doc %_infodir/%{name}.info.gz
+%_bindir/*
%config /etc/*
%changelog
++++++ avrdude-5.5.tar.bz2 -> avrdude-5.10.tar.bz2 ++++++
++++ 40477 lines of diff (skipped)
++++++ avrdude-5.5.usbtiny.64bit.patch ++++++
--- /var/tmp/diff_new_pack.9uiGYp/_old 2010-08-27 16:29:16.000000000 +0200
+++ /var/tmp/diff_new_pack.9uiGYp/_new 2010-08-27 16:29:16.000000000 +0200
@@ -1,6 +1,8 @@
---- avrdude-5.5/usbtiny.c 2007-10-29 09:40:04.000000000 -0600
-+++ avrdude-5.5.patched/usbtiny.c 2008-01-06 07:13:41.000000000 -0700
-@@ -138,7 +138,7 @@
+Index: avrdude-5.10/usbtiny.c
+===================================================================
+--- avrdude-5.10.orig/usbtiny.c
++++ avrdude-5.10/usbtiny.c
+@@ -182,7 +182,7 @@ static int usbtiny_avr_op (PROGRAMMER *
fprintf( stderr, "Operation %d not defined for this chip!\n", op );
return -1;
}
@@ -9,27 +11,3 @@
avr_set_bits(p->op[op], cmd);
return pgm->cmd(pgm, cmd, res);
-@@ -286,19 +286,19 @@
- int nbytes;
-
- // Make sure its empty so we don't read previous calls if it fails
-- memset(res, '\0', sizeof(res) );
-+ memset(res, '\0', 4 );
-
- nbytes = usb_in( USBTINY_SPI,
- (cmd[1] << 8) | cmd[0], // convert to 16-bit words
- (cmd[3] << 8) | cmd[2], // "
-- res, sizeof(res), 8 * sck_period );
-+ res, 4, 8 * sck_period );
- if (verbose > 1) {
- // print out the data we sent and received
-- printf( "CMD: [%02x %02x %02x %02x] [%02x %02x %02x %02x]\n",
-+ printf( "CMD: [%02x %02x %02x %02x] [%02x %02x %02x %02x] \n",
- cmd[0], cmd[1], cmd[2], cmd[3],
- res[0], res[1], res[2], res[3] );
- }
-- return ((nbytes == sizeof(res)) && // should have read 4 bytes
-+ return ((nbytes == 4) && // should have read 4 bytes
- res[2] == cmd[1]); // AVR's do a delayed-echo thing
- }
-
++++++ avrdude_butterfly_mk.patch ++++++
--- avrdude-5.10/avrdude.conf.in.orig 2010-01-19 11:39:11.000000000 +0100
+++ avrdude-5.10/avrdude.conf.in 2010-05-15 17:38:44.000000000 +0200
@@ -443,6 +443,19 @@ programmer
desc = "Atmel AppNote AVR911 AVROSP";
type = butterfly;
;
+
+# suggested in http://forum.mikrokopter.de/topic-post48317.html
+programmer
+ id = "mkbutterfly";
+ desc = "Mikrokopter.de Butterfly";
+ type = butterfly_mk;
+;
+
+programmer
+ id = "butterfly_mk";
+ desc = "Mikrokopter.de Butterfly";
+ type = butterfly_mk;
+;
programmer
id = "jtagmkI";
--- avrdude-5.10/butterfly.c.orig 2010-01-19 11:39:11.000000000 +0100
+++ avrdude-5.10/butterfly.c 2010-05-15 17:43:05.000000000 +0200
@@ -43,6 +43,7 @@
#include
#include
#include
+#include
#include "avrdude.h"
#include "avr.h"
@@ -205,6 +206,7 @@ static void butterfly_powerdown(PROGRAMM
return;
}
+#define IS_BUTTERFLY_MK 0x0001
/*
* initialize the AVR device and prepare it to accept commands
@@ -223,26 +225,60 @@ static int butterfly_initialize(PROGRAMM
* for plain avr109 bootloaders but does not harm there either.
*/
fprintf(stderr, "Connecting to programmer: ");
- do {
- putc('.', stderr);
- butterfly_send(pgm, "\033", 1);
- butterfly_drain(pgm, 0);
- butterfly_send(pgm, "S", 1);
- butterfly_recv(pgm, &c, 1);
- if (c != '?') {
- putc('\n', stderr);
- /*
- * Got a useful response, continue getting the programmer
- * identifier. Programmer returns exactly 7 chars _without_
- * the null.
- */
- id[0] = c;
- butterfly_recv(pgm, &id[1], sizeof(id)-2);
- id[sizeof(id)-1] = '\0';
+ if (pgm->flag & IS_BUTTERFLY_MK || getenv("BUTTERFLY_MK"))
+ {
+ char mk_reset_cmd[6] = {"#aR@S\r"};
+ unsigned char mk_timeout = 0;
+
+ putc('.', stderr);
+ butterfly_send(pgm, mk_reset_cmd, sizeof(mk_reset_cmd));
+ usleep(20000);
+
+ do
+ {
+ c = 27;
+ butterfly_send(pgm, &c, 1);
+ usleep(20000);
+ c = 0xaa;
+ butterfly_send(pgm, &c, 1);
+ if (mk_timeout % 10 == 0) putc('.', stderr);
+ butterfly_recv(pgm, &c, 1);
+ } while (c != 'M' && mk_timeout++ < 30);
+
+ if ( c != 'M' && c != '?')
+ {
+ fprintf(stderr, "\nConnection FAILED.\n");
+ exit(1);
+ }
+ else
+ {
+ id[0] = 'M'; id[1] = 'K'; id[2] = '2'; id[3] = 0;
+ }
+ }
+ else
+ {
+ do {
+ putc('.', stderr);
+ butterfly_send(pgm, "\033", 1);
+ butterfly_drain(pgm, 0);
+ butterfly_send(pgm, "S", 1);
+ butterfly_recv(pgm, &c, 1);
+ if (c != '?') {
+ putc('\n', stderr);
+ /*
+ * Got a useful response, continue getting the programmer
+ * identifier. Programmer returns exactly 7 chars _without_
+ * the null.
+ */
+ id[0] = c;
+ butterfly_recv(pgm, &id[1], sizeof(id)-2);
+ id[sizeof(id)-1] = '\0';
+ }
+ } while (c == '?');
}
- } while (c == '?');
/* Get the HW and SW versions to see if the programmer is present. */
+ butterfly_drain(pgm, 0);
butterfly_send(pgm, "V", 1);
butterfly_recv(pgm, sw, sizeof(sw));
@@ -327,6 +363,7 @@ static int butterfly_initialize(PROGRAMM
progname, (unsigned)buf[1]);
butterfly_enter_prog_mode(pgm);
+ butterfly_drain(pgm, 0);
return 0;
}
@@ -663,7 +700,7 @@ static int butterfly_read_sig_bytes(PROG
void butterfly_initpgm(PROGRAMMER * pgm)
{
- strcpy(pgm->type, "avr910");
+ strcpy(pgm->type, "butterfly");
/*
* mandatory functions
@@ -696,4 +733,12 @@ void butterfly_initpgm(PROGRAMMER * pgm)
pgm->setup = butterfly_setup;
pgm->teardown = butterfly_teardown;
+ pgm->flag = 0;
+}
+
+void butterfly_mk_initpgm(PROGRAMMER * pgm)
+{
+ butterfly_initpgm(pgm);
+ strcpy(pgm->type, "butterfly_mk");
+ pgm->flag = IS_BUTTERFLY_MK;
}
--- avrdude-5.10/config_gram.y.orig 2010-01-19 11:39:11.000000000 +0100
+++ avrdude-5.10/config_gram.y 2010-05-15 17:38:44.000000000 +0200
@@ -151,6 +151,7 @@ static int parse_cmdbits(OPCODE * op);
%token K_USBASP
%token K_USBTINY
%token K_BUTTERFLY
+%token K_BUTTERFLY_MK
%token K_TYPE
%token K_VCC
%token K_VFYLED
@@ -480,6 +481,12 @@ prog_parm :
}
} |
+ K_TYPE TKN_EQUAL K_BUTTERFLY_MK {
+ {
+ butterfly_mk_initpgm(current_prog);
+ }
+ } |
+
K_TYPE TKN_EQUAL K_JTAG_MKI {
{
jtagmkI_initpgm(current_prog);
--- avrdude-5.10/butterfly.h.orig 2010-01-19 11:39:11.000000000 +0100
+++ avrdude-5.10/butterfly.h 2010-05-15 17:38:44.000000000 +0200
@@ -27,6 +27,7 @@ extern "C" {
#endif
void butterfly_initpgm (PROGRAMMER * pgm);
+void butterfly_mk_initpgm (PROGRAMMER * pgm);
#ifdef __cplusplus
}
--- avrdude-5.10/lexer.l.orig 2010-01-19 11:39:11.000000000 +0100
+++ avrdude-5.10/lexer.l 2010-05-15 17:38:44.000000000 +0200
@@ -129,6 +129,7 @@ bs2 { yylval=NULL; return K
buff { yylval=NULL; return K_BUFF; }
buspirate { yylval=NULL; return K_BUSPIRATE; }
butterfly { yylval=NULL; return K_BUTTERFLY; }
+butterfly_mk { yylval=NULL; return K_BUTTERFLY_MK; }
chip_erase_delay { yylval=NULL; return K_CHIP_ERASE_DELAY; }
desc { yylval=NULL; return K_DESC; }
default_parallel { yylval=NULL; return K_DEFAULT_PARALLEL; }
++++++ avrdude-udev.rules ++++++
KERNEL=="parport*", MODE="0666"
SYSFS{idVendor}=="03eb", SYSFS{idProduct}=="2104", MODE="0666" # AVRISP mkII
SYSFS{idVendor}=="03eb", SYSFS{idProduct}=="2107", MODE="0666" # AVR-Dragon
SYSFS{idVendor}=="03eb", SYSFS{idProduct}=="2103", MODE="0666" # JTAG ICE mkII
SYSFS{idVendor}=="03eb", SYSFS{idProduct}=="2106", MODE="0666" # STK600
SYSFS{idVendor}=="16c0", SYSFS{idProduct}=="05dc", MODE="0666" # USBASP von www.fischl.de
SYSFS{idVendor}=="03eb", SYSFS{idProduct}=="2ffa", MODE="0666" # AT90USB
SYSFS{idVendor}=="10c4", SYSFS{idProduct}=="ea60", MODE="0666" # AVR910
SYSFS{idVendor}=="1781", SYSFS{idProduct}=="0c9f", MODE="0666" # USBtiny
SYSFS{idVendor}=="067b", SYSFS{idProduct}=="2303", MODE="0666" # PL2303 USB to serial adapter
++++++ avrdude-use-serial-device-for-serbb.patch ++++++
From: Bernhard Walle
Subject: [PATCH] Use default_serial for "serbb" programmers
This patch fixes the problem that "default_parport" device is used
even for "serbb" programmers like the "ponyser" device. That is wrong.
Signed-off-by: Bernhard Walle
---
main.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
Index: avrdude-5.10/main.c
===================================================================
--- avrdude-5.10.orig/main.c
+++ avrdude-5.10/main.c
@@ -683,7 +683,8 @@ int main(int argc, char * argv [])
(strcmp(pgm->type, "avr910") == 0) ||
(strcmp(pgm->type, "BusPirate") == 0) ||
(strcmp(pgm->type, "STK500V2") == 0) ||
- (strcmp(pgm->type, "JTAGMKII") == 0)) {
+ (strcmp(pgm->type, "JTAGMKII") == 0) ||
+ (strcmp(pgm->type, "SERBB") == 0)) {
if (port == default_parallel) {
port = default_serial;
}
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org