mirror of
https://github.com/avrdudes/avrdude.git
synced 2026-09-29 12:28:41 +03:00
Another attempt at adding programmer extra features flags
This commit is contained in:
@@ -64,6 +64,7 @@ extern char * yytext;
|
||||
Component_t avr_comp[] = {
|
||||
// PROGRAMMER
|
||||
pgm_comp_desc(prog_modes, COMP_INT),
|
||||
pgm_comp_desc(extra_features, COMP_INT),
|
||||
|
||||
// AVRPART
|
||||
part_comp_desc(prog_modes, COMP_INT),
|
||||
@@ -282,6 +283,9 @@ TOKEN *new_constant(const char *con) {
|
||||
!strcmp("PM_XMEGAJTAG", con)? PM_XMEGAJTAG:
|
||||
!strcmp("PM_AVR32JTAG", con)? PM_AVR32JTAG:
|
||||
!strcmp("PM_aWire", con)? PM_aWire:
|
||||
!strcmp("HAS_SUFFER", con)? HAS_SUFFER:
|
||||
!strcmp("HAS_VTARG_SWITCH", con)? HAS_VTARG_SWITCH:
|
||||
!strcmp("HAS_VTARG_ADJ", con)? HAS_VTARG_ADJ:
|
||||
(assigned = 0);
|
||||
|
||||
if(!assigned) {
|
||||
|
||||
@@ -94,7 +94,6 @@ static int pin_name;
|
||||
%token K_AVR910_DEVCODE
|
||||
%token K_EEPROM
|
||||
%token K_ERRLED
|
||||
%token K_EXTRA_FEATURES
|
||||
%token K_FLASH
|
||||
%token K_ID
|
||||
%token K_IO
|
||||
@@ -355,11 +354,6 @@ prog_decl :
|
||||
current_prog->lineno = cfg_lineno;
|
||||
free_token($3);
|
||||
}
|
||||
K_EXTRA_FEATURES TKN_EQUAL numexpr
|
||||
{
|
||||
current_prog->extra_features = $3->value.number;
|
||||
free_token($3);
|
||||
} |
|
||||
;
|
||||
|
||||
|
||||
|
||||
10
src/lexer.l
10
src/lexer.l
@@ -135,12 +135,9 @@ SIGN [+-]
|
||||
return TKN_COMPONENT;
|
||||
}
|
||||
|
||||
PM_(SPM|TPI|ISP|PDI|UPDI|HVSP|HVPP|debugWIRE|JTAG|JTAGmkI|XMEGAJTAG|AVR32JTAG|aWire) { /* Constants */
|
||||
yylval = new_constant(yytext);
|
||||
return TKN_NUMBER;
|
||||
}
|
||||
|
||||
HAS_(SUFFER|VTARG_SWITCH|VTARG_ADJ) { /* Constants */
|
||||
(?x: PM_(SPM|TPI|ISP|PDI|UPDI|HVSP|HVPP|debugWIRE|JTAG|JTAGmkI|XMEGAJTAG|AVR32JTAG|aWire) |
|
||||
HAS_(SUFFER|VTARG_SWITCH|VTARG_ADJ)
|
||||
) { /* Constants */
|
||||
yylval = new_constant(yytext);
|
||||
return TKN_NUMBER;
|
||||
}
|
||||
@@ -175,7 +172,6 @@ eeprom { yylval=NULL; return K_EEPROM; }
|
||||
eeprom_instr { yylval=NULL; ccap(); return K_EEPROM_INSTR; }
|
||||
enablepageprogramming { yylval=NULL; ccap(); return K_ENABLEPAGEPROGRAMMING; }
|
||||
errled { yylval=NULL; ccap(); return K_ERRLED; }
|
||||
extra_features { yylval=NULL; ccap(); return K_EXTRA_FEATURES; }
|
||||
family_id { yylval=NULL; ccap(); return K_FAMILY_ID; }
|
||||
flash { yylval=NULL; return K_FLASH; }
|
||||
flash_instr { yylval=NULL; ccap(); return K_FLASH_INSTR; }
|
||||
|
||||
Reference in New Issue
Block a user