Parser does not need to know all programmer types now, new programmers

will update only the table in pgm_type.c.
  * config_gram.y, lexer.l: removed programmer type keywords,
    use now locate_programmer_type() function
  * pgm_type.[ch]: added new files for table of programmer types
  * main.c: allow list of programmer types by -c ?type
  * avrdude.conf.in: changed all type keywords to quoted strings
  * doc/avrdude.texi: changed description of type definition, list
    of valid types is now included from generated file
  * doc/Makefile.am: generate list of programmer types for doc
  * all programmers [hc]: add xxx_desc string for description of programmer


git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@1051 81a1dc3b-b13d-400b-aceb-764788c761c2
This commit is contained in:
rliebscher
2012-01-31 17:03:43 +00:00
parent a2a8927d8f
commit 751b96182c
45 changed files with 442 additions and 214 deletions

View File

@@ -20,4 +20,5 @@ mdate-sh
stamp-vti
texinfo.tex
version.texi
programmer_types.texi
parts.texi

View File

@@ -23,6 +23,7 @@
CLEANFILES = \
parts.texi \
programmer_types.texi \
version.texi \
stamp-vti
@@ -32,7 +33,7 @@ all-local: info html ps pdf
html: avrdude-html/avrdude.html
avrdude-html/avrdude.html: $(srcdir)/$(info_TEXINFOS) $(srcdir)/parts.texi
avrdude-html/avrdude.html: $(srcdir)/$(info_TEXINFOS) $(srcdir)/parts.texi $(srcdir)/programmer_types.texi
texi2html -split_node $(srcdir)/$(info_TEXINFOS)
if [ -e ./avrdude.html -o -e ./avrdude_1.html ]; then \
mkdir -p avrdude-html ; \
@@ -41,14 +42,21 @@ avrdude-html/avrdude.html: $(srcdir)/$(info_TEXINFOS) $(srcdir)/parts.texi
mv -f avrdude avrdude-html; \
fi;
avrdude.info: parts.texi
avrdude.dvi: parts.texi
avrdude.pdf: parts.texi
avrdude.info: parts.texi programmer_types.texi
avrdude.dvi: parts.texi programmer_types.texi
avrdude.pdf: parts.texi programmer_types.texi
# if it does not exist make this first
../avrdude$(EXEEXT):
$(MAKE) -C .. avrdude$(EXEEXT)
programmer_types.texi: ../avrdude$(EXEEXT) ../avrdude.conf Makefile
../avrdude$(EXEEXT) -C ../avrdude.conf -c \?type 2>&1 \
| $(AWK) '$$2 ~ /^=$$/ {printf("@item @code{%s} @tab %s\n",$$1,gensub("[^=]+=[ \t]*","",1))}' \
| sed "s#<\?\(http://[^ \t,>]*\)>\?#@url{\1}#g" \
>programmer_types.texi
parts.texi: ../avrdude$(EXEEXT) ../avrdude.conf parts_comments.txt Makefile
../avrdude$(EXEEXT) -C ../avrdude.conf -p \? 2>&1 \
| $(AWK) '$$2 ~ /^=$$/ {printf("@item @code{%s} @tab %s\n",$$1,$$3)}' \

View File

@@ -1435,7 +1435,7 @@ programmer
parent <id> # <id> is a quoted string
id = <id1> [, <id2> [, <id3>] ...] ; # <idN> are quoted strings
desc = <description> ; # quoted string
type = par | stk500 | ... ; # programmer type (see below for a list)
type = "par" | "stk500" | ... ; # programmer type (see below for a list)
baudrate = <num> ; # baudrate for serial ports
vcc = <num1> [, <num2> ... ] ; # pin number(s)
buff = <num1> [, <num2> ... ] ; # pin number(s)
@@ -1467,37 +1467,7 @@ To invert a bit in the pin definitions, use @code{= ~ <num>}.
Following programmer types are currently implemented:
@multitable @columnfractions .25 .6
@item @code{arduino} @tab Arduino
@item @code{avr910} @tab avr910
@item @code{avrftdi} @tab avrftdi
@item @code{buspirate} @tab BusPirate
@item @code{butterfly} @tab butterfly
@item @code{butterfly_mk} @tab butterfly_mk
@item @code{dragon_dw} @tab DRAGON_DW
@item @code{dragon_hvsp} @tab DRAGON_HVSP
@item @code{dragon_isp} @tab DRAGON_ISP
@item @code{dragon_jtag} @tab DRAGON_JTAG
@item @code{dragon_pdi} @tab DRAGON_PDI
@item @code{dragon_pp} @tab DRAGON_PP
@item @code{jtagmki} @tab JTAGMKI
@item @code{jtagmkii} @tab JTAGMKII
@item @code{jtagmkii_avr32} @tab JTAGMKII_AVR32
@item @code{jtagmkii_dw} @tab JTAGMKII_DW
@item @code{jtagmkii_isp} @tab JTAGMKII_ISP
@item @code{jtagmkii_pdi} @tab JTAGMKII_PDI
@item @code{par} @tab PPI
@item @code{serbb} @tab SERBB
@item @code{stk500} @tab STK500
@item @code{stk500generic} @tab STK500GENERIC
@item @code{stk500hvsp} @tab STK500HVSP
@item @code{stk500pp} @tab STK500PP
@item @code{stk500v2} @tab STK500V2
@item @code{stk600} @tab STK600
@item @code{stk600hvsp} @tab STK600HVSP
@item @code{stk600pp} @tab STK600PP
@item @code{usbasp} @tab usbasp
@item @code{usbtiny} @tab USBtiny
@item @code{wiring} @tab Wiring
@include programmer_types.texi
@end multitable
@c