20b6fafa8e760697ebb7d4a4ab000ae3e88576f6
1 /* Parse the parameter spec */
2 %{
3 #define YYERROR_VERBOSE
4 extern char *yytext;
5 %}
6 %token LBRACE RBRACE SECTION EQU VALUE STRING BOOT_MODE PARAM_INDEX OPTIONS
7 %token MULTI_I2C_ID MY_I2C_ID CORE_FREQ_MHZ I2C_CLK_FREQ_KHZ
8 %token EXE_FILE PCI_PARMS NEXT_DEV_ADDR NEXT_DEV_ADDR_EXT ADDRESS_DELAY SWPLL
9 %%
11 promspec : bootParams
12 | promspec bootParams
13 ;
15 bootParams : SECTION LBRACE assigns RBRACE
16 { section (); }
17 | PCI_PARMS EQU STRING
18 { setPciParams (yytext); }
19 ;
22 assigns : assign
23 | assigns assign
24 ;
26 assign : keyword EQU VALUE
27 { assignKeyVal ($1, $3); }
28 | keyword EQU STRING
29 { assignKeyStr ($1, yytext); }
30 ;
32 keyword : BOOT_MODE { $$=$1; }
33 | PARAM_INDEX { $$=$1; }
34 | OPTIONS { $$=$1; }
35 | MULTI_I2C_ID { $$=$1; }
36 | MY_I2C_ID { $$=$1; }
37 | CORE_FREQ_MHZ { $$=$1; }
38 | I2C_CLK_FREQ_KHZ { $$=$1; }
39 | EXE_FILE { $$=$1; }
40 | NEXT_DEV_ADDR { $$=$1; }
41 | NEXT_DEV_ADDR_EXT { $$=$1; }
42 | ADDRESS_DELAY { $$=$1; }
43 | SWPLL { $$=$1; }
44 ;
46 %%