Index: avr910.c =================================================================== RCS file: /home/hinni/scratch/cvsroot/avrdude/avr910.c,v retrieving revision 1.1.1.1 diff -u -w -r1.1.1.1 avr910.c --- avr910.c 10 Dec 2003 21:22:32 -0000 1.1.1.1 +++ avr910.c 10 Dec 2003 21:25:00 -0000 @@ -352,8 +352,12 @@ { no_show_func_info(); + if(pgm->baudrate == 0) { + pgm->baudrate = 19200; + } + strcpy(pgm->port, port); - pgm->fd = serial_open(port, 19200); + pgm->fd = serial_open(port, pgm->baudrate); /* * drain any extraneous input Index: pgm.c =================================================================== RCS file: /home/hinni/scratch/cvsroot/avrdude/pgm.c,v retrieving revision 1.1.1.1 diff -u -w -r1.1.1.1 pgm.c --- pgm.c 10 Dec 2003 21:22:32 -0000 1.1.1.1 +++ pgm.c 10 Dec 2003 21:25:01 -0000 @@ -57,6 +57,7 @@ pgm->type[0] = 0; pgm->config_file[0] = 0; pgm->lineno = 0; + pgm->baudrate = 0; for (i=0; ipinno[i] = 0; Index: pgm.h =================================================================== RCS file: /home/hinni/scratch/cvsroot/avrdude/pgm.h,v retrieving revision 1.1.1.1 diff -u -w -r1.1.1.1 pgm.h --- pgm.h 10 Dec 2003 21:22:32 -0000 1.1.1.1 +++ pgm.h 10 Dec 2003 21:25:01 -0000 @@ -42,6 +42,7 @@ char port[PGM_PORTLEN]; unsigned int pinno[N_PINS]; int ppidata; + int baudrate; int fd; int page_size; /* page size if the programmer supports paged write/load */ int (*rdy_led) (struct programmer_t * pgm, int value); Index: config_gram.y =================================================================== RCS file: /home/hinni/scratch/cvsroot/avrdude/config_gram.y,v retrieving revision 1.1.1.1 diff -u -w -r1.1.1.1 config_gram.y --- config_gram.y 10 Dec 2003 21:22:32 -0000 1.1.1.1 +++ config_gram.y 10 Dec 2003 21:25:01 -0000 @@ -65,6 +65,7 @@ %token K_PAGE_SIZE %token K_PAGED +%token K_BAUDRATE %token K_BS2 %token K_BUFF %token K_CHIP_ERASE_DELAY @@ -355,6 +356,12 @@ free_token(t); } + } + } | + + K_BAUDRATE TKN_EQUAL TKN_NUMBER { + { + current_prog->baudrate = $3->value.number; } } | Index: lexer.l =================================================================== RCS file: /home/hinni/scratch/cvsroot/avrdude/lexer.l,v retrieving revision 1.1.1.1 diff -u -w -r1.1.1.1 lexer.l --- lexer.l 10 Dec 2003 21:22:32 -0000 1.1.1.1 +++ lexer.l 10 Dec 2003 21:25:01 -0000 @@ -117,6 +117,7 @@ bank_size { yylval=NULL; return K_PAGE_SIZE; } banked { yylval=NULL; return K_PAGED; } +baudrate { yylval=NULL; return K_BAUDRATE; } bs2 { yylval=NULL; return K_BS2; } buff { yylval=NULL; return K_BUFF; } chip_erase_delay { yylval=NULL; return K_CHIP_ERASE_DELAY; }