--- avrdude-5.5.orig/debian/changelog +++ avrdude-5.5/debian/changelog @@ -0,0 +1,175 @@ +avrdude (5.5-7) unstable; urgency=low + + * debian/patches/04-usbtiny_64bit_fix.patch + - Fix chip programming failures using USBTiny adapters on 64bit systems. + The res[4] variable is passed to usbtiny_cmd() as char pointer and + sizeof(char*) evaluates to 8 on 64bit systems. So hardcode the number of + bytes we want to read instead of using sizeof. (Closes: #511751) + + -- Michael Biebl Wed, 14 Jan 2009 07:13:39 +0100 + +avrdude (5.5-6) unstable; urgency=low + + * debian/patches/03-spi_support.patch + - Add new commands to avrdude's terminal mode to support direct SPI + transfers. (Closes: #509130) + Thanks to Andrew O. Shadoura for the patch. + + -- Michael Biebl Thu, 18 Dec 2008 23:41:30 +0100 + +avrdude (5.5-5) unstable; urgency=low + + * Misc white space cleanups. + * debian/control + - Add Vcs-* fields. + + -- Michael Biebl Sat, 25 Oct 2008 01:42:20 +0200 + +avrdude (5.5-4) unstable; urgency=low + + * Switch patch system to quilt. + * debian/control + - Add Build-Depends on quilt. + - Bump Standards-Version to 3.8.0. Add debian/README.source as recommended + by the new policy. + * debian/rules + - Include patchsys-quilt.mk instead of simple-patchsys.mk. + * debian/patches/series + - Add all existing patches. + * Refresh all patches. + + -- Michael Biebl Sat, 19 Jul 2008 03:22:50 +0200 + +avrdude (5.5-3) unstable; urgency=low + + * debian/avrdude-doc.doc-base + - Update the Section: field to comply with the new doc-base Manual. + * debian/control + - Add ${misc:Depends}. + + -- Michael Biebl Tue, 04 Mar 2008 23:17:20 +0100 + +avrdude (5.5-2) unstable; urgency=low + + * debian/control + - Bump Standards-Version to 3.7.3. No further changes required. + * debian/avrdude-doc.doc-base + - Cleanup unnecessary white spaces. + + -- Michael Biebl Tue, 08 Jan 2008 07:39:04 +0100 + +avrdude (5.5-1) unstable; urgency=low + + * New upstream release. + * debian/avrdude.docs + - Install the ChangeLog-2004-2006 file. + + -- Michael Biebl Tue, 30 Oct 2007 21:02:48 +0100 + +avrdude (5.4-2) unstable; urgency=low + + * debian/control + - Use the new "Homepage:" field to specify the upstream URL. + + -- Michael Biebl Sun, 21 Oct 2007 18:43:24 +0200 + +avrdude (5.4-1) unstable; urgency=low + + * New upstream release. + * debian/control + - Replace Build-Depends: tetex-bin with texlive-latex-base. teTeX has been + obsoleted and superseded by texlive. + + -- Michael Biebl Fri, 18 May 2007 17:00:42 +0200 + +avrdude (5.3.1-1) unstable; urgency=low + + * New upstream release. + * Prepend a sequence number to the patches. + + -- Michael Biebl Mon, 25 Dec 2006 17:56:43 +0100 + +avrdude (5.2-2) unstable; urgency=low + + * Update maintainer email address to biebl@debian.org. + + -- Michael Biebl Wed, 18 Oct 2006 18:46:28 +0200 + +avrdude (5.2-1) unstable; urgency=low + + * New upstream release. + * debian/rules + + Remove obsolete clean rule, lexer.c is not shipped anymore in the + upstream tarball. + + -- Michael Biebl Tue, 10 Oct 2006 02:30:19 +0200 + +avrdude (5.1-3) unstable; urgency=low + + * Properly indent homepage URL in package description. + * Bumped debhelper compatibility to 5. + * Bumped Standards-Version to 3.7.2, no further changes required. + + -- Michael Biebl Wed, 17 May 2006 09:05:12 +0200 + +avrdude (5.1-2) unstable; urgency=low + + * Delete outdated lexer.c, enforces recreation with an up to date version + of flex (closes: #350092). + + -- Michael Biebl Fri, 27 Jan 2006 21:27:16 +0100 + +avrdude (5.1-1) unstable; urgency=low + + * New upstream release. + + -- Michael Biebl Tue, 24 Jan 2006 23:03:43 +0100 + +avrdude (5.0-1) unstable; urgency=low + + * New upstream release (closes: #330243). + + Removed patch html_doc_build_fix.diff, fixed upstream. + * Added patch kfreebsd.diff to make avrdude compile on GNU/kFreeBSD + (closes: #329448). Thanks to Aurelien Jarno. + * Added patch manpage_fix.diff to reflect Debian specific locations of + certain files. + * Updated watch file. + + -- Michael Biebl Tue, 4 Oct 2005 17:41:14 +0200 + +avrdude (4.4.0-5) unstable; urgency=low + + * Build against libreadline5. + + -- Michael Biebl Thu, 8 Sep 2005 01:13:51 +0200 + +avrdude (4.4.0-4) unstable; urgency=low + + * Switched build system to cdbs. + * Added watch file. + + -- Michael Biebl Wed, 10 Aug 2005 04:34:49 +0200 + +avrdude (4.4.0-3) unstable; urgency=low + + * Reverted changes to Makefile.in files made by automake. Changed + doc/Makefile.in by hand. + * Added Section: and Priority: to package descriptions in debian/control. + + -- Michael Biebl Wed, 10 Aug 2005 04:18:24 +0200 + +avrdude (4.4.0-2) unstable; urgency=low + + * The new version of texi2html caused avrdude to FTBFS. This update fixes + this (closes: #318729). + * Updated to standards version 3.6.2. + + -- Michael Biebl Tue, 19 Jul 2005 00:04:24 +0200 + +avrdude (4.4.0-1) unstable; urgency=low + + * Initial release (closes: #217453). + * Thanks to Anibal Monsalve Salazar for sponsoring this package. + + -- Michael Biebl Mon, 13 Jun 2005 10:58:32 +0200 + --- avrdude-5.5.orig/debian/avrdude-doc.doc-base +++ avrdude-5.5/debian/avrdude-doc.doc-base @@ -0,0 +1,18 @@ +Document: avrdude-doc +Title: AVRDUDE Manual +Author: Brian S. Dean +Abstract: AVRDUDE is an open source utility to + download/upload/manipulate the ROM and EEPROM + contents of AVR microcontrollers using the + in-system programming technique (ISP). +Section: Science/Electronics + +Format: pdf +Files: /usr/share/doc/avrdude-doc/avrdude.pdf.gz + +Format: postscript +Files: /usr/share/doc/avrdude-doc/avrdude.ps.gz + +Format: HTML +Index: /usr/share/doc/avrdude-doc/avrdude-html/avrdude.html +Files: /usr/share/doc/avrdude-doc/avrdude-html/*.html --- avrdude-5.5.orig/debian/avrdude-doc.docs +++ avrdude-5.5/debian/avrdude-doc.docs @@ -0,0 +1 @@ +debian/tmp/usr/share/doc/avrdude/* --- avrdude-5.5.orig/debian/avrdude-doc.info +++ avrdude-5.5/debian/avrdude-doc.info @@ -0,0 +1 @@ +debian/tmp/usr/share/info/avrdude.info --- avrdude-5.5.orig/debian/avrdude.manpages +++ avrdude-5.5/debian/avrdude.manpages @@ -0,0 +1 @@ +avrdude.1 --- avrdude-5.5.orig/debian/copyright +++ avrdude-5.5/debian/copyright @@ -0,0 +1,24 @@ +This package was debianized by Michael Biebl on +Mon, 6 Jun 2005 20:28:53 +0200. + +It was downloaded from http://savannah.nongnu.org/projects/avrdude/ + +AVRDUDE was written by: + Brian S. Dean . + +Contributors: + Joerg Wunsch + Eric Weddington + Jan-Hinnerk Reichert + Alex Shepherd + Martin Thomas + Theodore A. Roth + +Copyright: + 2000, 2001, 2002, 2003 Brian S. Dean + +License: + The program is distributed under the GPL Version 2. + See /usr/share/common-licenses/GPL or http://www.gnu.org/licenses/gpl.html + for details. + --- avrdude-5.5.orig/debian/watch +++ avrdude-5.5/debian/watch @@ -0,0 +1,2 @@ +version=3 +http://savannah.nongnu.org/download/avrdude/avrdude-([\d\.]*)\.tar\.gz --- avrdude-5.5.orig/debian/rules +++ avrdude-5.5/debian/rules @@ -0,0 +1,9 @@ +#!/usr/bin/make -f + +include /usr/share/cdbs/1/class/autotools.mk +include /usr/share/cdbs/1/rules/debhelper.mk +include /usr/share/cdbs/1/rules/patchsys-quilt.mk + +DEB_CONFIGURE_EXTRA_FLAGS := --enable-versioned-doc=no --enable-doc +DEB_INSTALL_DOCS_ALL := NEWS AUTHORS + --- avrdude-5.5.orig/debian/README.source +++ avrdude-5.5/debian/README.source @@ -0,0 +1,3 @@ +This package uses the quilt patch management system. + +Please refer to /usr/share/doc/quilt/README.source for further information. --- avrdude-5.5.orig/debian/compat +++ avrdude-5.5/debian/compat @@ -0,0 +1 @@ +5 --- avrdude-5.5.orig/debian/avrdude.install +++ avrdude-5.5/debian/avrdude.install @@ -0,0 +1,2 @@ +debian/tmp/usr/bin/avrdude +debian/tmp/etc/avrdude.conf --- avrdude-5.5.orig/debian/avrdude.docs +++ avrdude-5.5/debian/avrdude.docs @@ -0,0 +1,4 @@ +ChangeLog-2001 +ChangeLog-2002 +ChangeLog-2003 +ChangeLog-2004-2006 --- avrdude-5.5.orig/debian/control +++ avrdude-5.5/debian/control @@ -0,0 +1,34 @@ +Source: avrdude +Section: electronics +Priority: extra +Maintainer: Michael Biebl +Build-Depends: cdbs, debhelper (>= 5.0.0), autotools-dev, quilt, texi2html, texinfo, texlive-latex-base, flex, bison, libncurses5-dev, libreadline5-dev, libusb-dev +Standards-Version: 3.8.0 +Vcs-Git: git://git.debian.org/git/users/biebl/avrdude.git +Vcs-Browser: http://git.debian.org/?p=users/biebl/avrdude.git;a=summary +Homepage: http://savannah.nongnu.org/projects/avrdude/ + +Package: avrdude +Section: electronics +Priority: extra +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends} +Suggests: avrdude-doc +Description: software for programming Atmel AVR microcontrollers + AVRDUDE is an open source utility to download/upload/manipulate the + ROM and EEPROM contents of AVR microcontrollers using the in-system + programming technique (ISP). + +Package: avrdude-doc +Section: doc +Priority: extra +Architecture: all +Depends: ${misc:Depends} +Suggests: doc-base +Description: documentation for avrdude + AVRDUDE is an open source utility to download/upload/manipulate the + ROM and EEPROM contents of AVR microcontrollers using the in-system + programming technique (ISP). + . + This package contains documentation for configuring and running + AVRDUDE. --- avrdude-5.5.orig/debian/README.Debian +++ avrdude-5.5/debian/README.Debian @@ -0,0 +1,8 @@ +AVRDUDE for Debian +------------------ + +If you have a chip that is not directly supported by avrdude you can add it +to the configuration file /etc/avrdude.conf. For more information please take +a look at section 4 of the avrdude documentation. + + -- Michael Biebl , Mon, 6 Jun 2005 20:28:53 +0200 --- avrdude-5.5.orig/debian/patches/03-spi_support.patch +++ avrdude-5.5/debian/patches/03-spi_support.patch @@ -0,0 +1,203 @@ +diff -r -u avrdude-5.5.orig/bitbang.c avrdude-5.5/bitbang.c +--- avrdude-5.5.orig/bitbang.c 2007-01-24 23:07:54.000000000 +0200 ++++ avrdude-5.5/bitbang.c 2008-11-29 16:58:09.000000000 +0200 +@@ -225,6 +225,39 @@ + return 0; + } + ++/* ++ * transmit bytes via SPI and return the results; 'cmd' and ++ * 'res' must point to data buffers ++ */ ++int bitbang_spi(PROGRAMMER * pgm, unsigned char cmd[], ++ unsigned char res[], int count) ++{ ++ int i; ++ ++ pgm->setpin(pgm, pgm->pinno[PIN_LED_PGM], 0); ++ ++ for (i=0; isetpin(pgm, pgm->pinno[PIN_LED_PGM], 1); ++ ++ if(verbose >= 2) ++ { ++ fprintf(stderr, "bitbang_cmd(): [ "); ++ for(i = 0; i < count; i++) ++ fprintf(stderr, "%02X ", cmd[i]); ++ fprintf(stderr, "] [ "); ++ for(i = 0; i < count; i++) ++ { ++ fprintf(stderr, "%02X ", res[i]); ++ } ++ fprintf(stderr, "]\n"); ++ } ++ ++ return 0; ++} ++ + + /* + * issue the 'chip erase' command to the AVR device +diff -r -u avrdude-5.5.orig/bitbang.h avrdude-5.5/bitbang.h +--- avrdude-5.5.orig/bitbang.h 2007-01-25 00:43:46.000000000 +0200 ++++ avrdude-5.5/bitbang.h 2008-11-29 16:49:19.000000000 +0200 +@@ -39,6 +39,8 @@ + int bitbang_vfy_led (PROGRAMMER * pgm, int value); + int bitbang_cmd (PROGRAMMER * pgm, unsigned char cmd[4], + unsigned char res[4]); ++int bitbang_spi (PROGRAMMER * pgm, unsigned char cmd[], ++ unsigned char res[], int count); + int bitbang_chip_erase (PROGRAMMER * pgm, AVRPART * p); + int bitbang_program_enable (PROGRAMMER * pgm, AVRPART * p); + void bitbang_powerup (PROGRAMMER * pgm); +diff -r -u avrdude-5.5.orig/par.c avrdude-5.5/par.c +--- avrdude-5.5.orig/par.c 2007-01-30 15:41:53.000000000 +0200 ++++ avrdude-5.5/par.c 2008-11-29 17:04:28.000000000 +0200 +@@ -416,6 +416,7 @@ + pgm->program_enable = bitbang_program_enable; + pgm->chip_erase = bitbang_chip_erase; + pgm->cmd = bitbang_cmd; ++ pgm->spi = bitbang_spi; + pgm->open = par_open; + pgm->close = par_close; + pgm->setpin = par_setpin; +diff -r -u avrdude-5.5.orig/pgm.c avrdude-5.5/pgm.c +--- avrdude-5.5.orig/pgm.c 2007-01-30 15:41:53.000000000 +0200 ++++ avrdude-5.5/pgm.c 2008-11-29 16:59:38.000000000 +0200 +@@ -117,6 +117,7 @@ + * assigned before they are called + */ + pgm->cmd = NULL; ++ pgm->spi = NULL; + pgm->paged_write = NULL; + pgm->paged_load = NULL; + pgm->write_setup = NULL; +diff -r -u avrdude-5.5.orig/pgm.h avrdude-5.5/pgm.h +--- avrdude-5.5.orig/pgm.h 2007-01-30 15:41:53.000000000 +0200 ++++ avrdude-5.5/pgm.h 2008-11-29 16:59:06.000000000 +0200 +@@ -77,6 +77,8 @@ + int (*chip_erase) (struct programmer_t * pgm, AVRPART * p); + int (*cmd) (struct programmer_t * pgm, unsigned char cmd[4], + unsigned char res[4]); ++ int (*spi) (struct programmer_t * pgm, unsigned char cmd[], ++ unsigned char res[], int count); + int (*open) (struct programmer_t * pgm, char * port); + void (*close) (struct programmer_t * pgm); + int (*paged_write) (struct programmer_t * pgm, AVRPART * p, AVRMEM * m, +diff -r -u avrdude-5.5.orig/term.c avrdude-5.5/term.c +--- avrdude-5.5.orig/term.c 2007-01-25 00:43:46.000000000 +0200 ++++ avrdude-5.5/term.c 2008-11-29 18:21:30.000000000 +0200 +@@ -88,6 +88,11 @@ + static int cmd_sck (PROGRAMMER * pgm, struct avrpart * p, + int argc, char *argv[]); + ++static int cmd_spi (PROGRAMMER * pgm, struct avrpart * p, ++ int argc, char *argv[]); ++ ++static int cmd_pgm (PROGRAMMER * pgm, struct avrpart * p, ++ int argc, char *argv[]); + + struct command cmd[] = { + { "dump", cmd_dump, "dump memory : %s " }, +@@ -102,6 +107,8 @@ + { "varef", cmd_varef, "set (STK500 only)" }, + { "fosc", cmd_fosc, "set (STK500 only)" }, + { "sck", cmd_sck, "set (STK500 only)" }, ++ { "spi", cmd_spi, "enter direct SPI mode" }, ++ { "pgm", cmd_pgm, "return to programming mode" }, + { "help", cmd_help, "help" }, + { "?", cmd_help, "help" }, + { "quit", cmd_quit, "quit" } +@@ -111,7 +118,7 @@ + + + +- ++static int spi_mode = 0; + + static int nexttok(char * buf, char ** tok, char ** next) + { +@@ -445,8 +452,18 @@ + return -1; + } + +- if (argc != 5) { +- fprintf(stderr, "Usage: send \n"); ++ if (spi_mode && (pgm->spi == NULL)) { ++ fprintf(stderr, ++ "The %s programmer does not support direct SPI transfers.\n", ++ pgm->type); ++ return -1; ++ } ++ ++ ++ if ((argc > 5) || ((argc < 5) && (!spi_mode))) { ++ fprintf(stderr, spi_mode? ++ "Usage: send [ [ []]]\n": ++ "Usage: send \n"); + return -1; + } + +@@ -465,7 +482,10 @@ + + pgm->err_led(pgm, OFF); + +- pgm->cmd(pgm, cmd, res); ++ if (spi_mode) ++ pgm->spi(pgm, cmd, res, argc-1); ++ else ++ pgm->cmd(pgm, cmd, res); + + /* + * display results +@@ -707,6 +727,22 @@ + return 0; + } + ++static int cmd_spi(PROGRAMMER * pgm, struct avrpart * p, ++ int argc, char * argv[]) ++{ ++ pgm->setpin(pgm, pgm->pinno[PIN_AVR_RESET], 1); ++ spi_mode = 1; ++ return 0; ++} ++ ++static int cmd_pgm(PROGRAMMER * pgm, struct avrpart * p, ++ int argc, char * argv[]) ++{ ++ pgm->setpin(pgm, pgm->pinno[PIN_AVR_RESET], 0); ++ spi_mode = 0; ++ pgm->initialize(pgm, p); ++ return 0; ++} + + static int tokenize(char * s, char *** argv) + { +diff -r -u avrdude-5.5.orig/term.c avrdude-5.5/term.c +--- avrdude-5.5.orig/avrdude.1 2007-10-29 20:03:02.000000000 +0200 ++++ avrdude-5.5/avrdude.1 2008-11-29 18:40:07.000000000 +0200 +@@ -642,13 +642,19 @@ + .Nm , + this command allows you to use it, even though + .Nm +-does not implement the command. ++does not implement the command. When using direct SPI mode, up to 3 bytes ++can be omitted. + .It Ar sig + Display the device signature bytes. ++.It Ar spi ++Enter direct SPI mode. ++.Em Only supported on parallel bitbang programmers. + .It Ar part + Display the current part settings and parameters. Includes chip + specific information including all memory types supported by the + device, read/write timing, etc. ++.It Ar pgm ++Return to programming mode + .It Ar vtarg voltage + Set the target's supply voltage to + .Ar voltage + --- avrdude-5.5.orig/debian/patches/04-usbtiny_64bit_fix.patch +++ avrdude-5.5/debian/patches/04-usbtiny_64bit_fix.patch @@ -0,0 +1,35 @@ +--- 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 @@ + fprintf( stderr, "Operation %d not defined for this chip!\n", op ); + return -1; + } +- memset(cmd, 0, sizeof(cmd)); ++ memset(cmd, 0, 4); + 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-5.5.orig/debian/patches/series +++ avrdude-5.5/debian/patches/series @@ -0,0 +1,4 @@ +01-kfreebsd.patch +02-manpage_fix.patch +03-spi_support.patch +04-usbtiny_64bit_fix.patch --- avrdude-5.5.orig/debian/patches/01-kfreebsd.patch +++ avrdude-5.5/debian/patches/01-kfreebsd.patch @@ -0,0 +1,26 @@ +Index: avrdude/ppi.c +=================================================================== +--- avrdude.orig/ppi.c 2008-06-10 12:51:44.000000000 +0200 ++++ avrdude/ppi.c 2008-07-19 03:14:05.000000000 +0200 +@@ -33,7 +33,7 @@ + #include + #include + +-#if defined(__FreeBSD__) ++#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) + # include "freebsd_ppi.h" + #elif defined(__linux__) + # include "linux_ppdev.h" +Index: avrdude/par.c +=================================================================== +--- avrdude.orig/par.c 2008-06-10 12:51:44.000000000 +0200 ++++ avrdude/par.c 2008-07-19 03:14:05.000000000 +0200 +@@ -28,7 +28,7 @@ + #include + #include + +-#if defined(__FreeBSD__) ++#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) + # include "freebsd_ppi.h" + #elif defined(__linux__) + # include "linux_ppdev.h" --- avrdude-5.5.orig/debian/patches/02-manpage_fix.patch +++ avrdude-5.5/debian/patches/02-manpage_fix.patch @@ -0,0 +1,31 @@ +Index: avrdude/avrdude.1 +=================================================================== +--- avrdude.orig/avrdude.1 2008-06-10 12:51:43.000000000 +0200 ++++ avrdude/avrdude.1 2008-07-19 03:14:10.000000000 +0200 +@@ -271,7 +271,7 @@ + does not know about, you can add it to the config file (be sure and + submit a patch back to the author so that it can be incorporated for + the next version). See the config file, located at +-.Pa ${PREFIX}/etc/avrdude.conf , ++.Pa /etc/avrdude.conf , + which contains a description of the format. + .It Fl D + Disable auto erase for flash. When the +@@ -749,7 +749,7 @@ + .It Pa /dev/ppi0 + default device to be used for communication with the programming + hardware +-.It Pa ${PREFIX}/etc/avrdude.conf ++.It Pa /etc/avrdude.conf + programmer and parts configuration file + .It Pa ${HOME}/.avrduderc + programmer and parts configuration file (per-user overrides) +@@ -757,7 +757,7 @@ + Initialization file for the + .Xr readline 3 + library +-.It Pa ${PREFIX}/share/doc/avrdude/avrdude.pdf ++.It Pa /usr/share/doc/avrdude-doc/avrdude.pdf + Schematic of programming hardware + .El + .\" .Sh EXAMPLES