sconfig: Add a new "SPI" device type
Update sconfig lex and yacc files to add support for a new "SPI" device type in the devicetree. SPI device takes only parameter i.e. chip select number for the device on the SPI bus. Re-generate the shipped files for sconfig using flex 2.6.0 and bison 3.0.4 (make CONFIG_SCONFIG_GENPARSER=1). Clean up local paths that leak into generated files. BUG=chrome-os-partner:59832 BRANCH=None TEST=Compiles successfully. Change-Id: If0831e25b3e4ed87827ad92356d7bf47b6387884 Signed-off-by: Furquan Shaikh <furquan@chromium.org> Reviewed-on: https://review.coreboot.org/18339 Tested-by: build bot (Jenkins) Reviewed-by: Duncan Laurie <dlaurie@chromium.org>
This commit is contained in:
parent
dc1b294bfb
commit
e67002968b
|
@ -208,7 +208,7 @@ struct yy_buffer_state
|
||||||
/* Number of characters read into yy_ch_buf, not including EOB
|
/* Number of characters read into yy_ch_buf, not including EOB
|
||||||
* characters.
|
* characters.
|
||||||
*/
|
*/
|
||||||
int yy_n_chars;
|
yy_size_t yy_n_chars;
|
||||||
|
|
||||||
/* Whether we "own" the buffer - i.e., we know we created it,
|
/* Whether we "own" the buffer - i.e., we know we created it,
|
||||||
* and can realloc() it to grow it, and should free() it to
|
* and can realloc() it to grow it, and should free() it to
|
||||||
|
@ -278,7 +278,7 @@ static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */
|
||||||
|
|
||||||
/* yy_hold_char holds the character lost when yytext is formed. */
|
/* yy_hold_char holds the character lost when yytext is formed. */
|
||||||
static char yy_hold_char;
|
static char yy_hold_char;
|
||||||
static int yy_n_chars; /* number of characters read into yy_ch_buf */
|
static yy_size_t yy_n_chars; /* number of characters read into yy_ch_buf */
|
||||||
yy_size_t yyleng;
|
yy_size_t yyleng;
|
||||||
|
|
||||||
/* Points to current character in buffer. */
|
/* Points to current character in buffer. */
|
||||||
|
@ -373,8 +373,8 @@ static void yy_fatal_error (yyconst char msg[] );
|
||||||
*yy_cp = '\0'; \
|
*yy_cp = '\0'; \
|
||||||
(yy_c_buf_p) = yy_cp;
|
(yy_c_buf_p) = yy_cp;
|
||||||
|
|
||||||
#define YY_NUM_RULES 33
|
#define YY_NUM_RULES 34
|
||||||
#define YY_END_OF_BUFFER 34
|
#define YY_END_OF_BUFFER 35
|
||||||
/* This struct is not used in this scanner,
|
/* This struct is not used in this scanner,
|
||||||
but its presence is necessary. */
|
but its presence is necessary. */
|
||||||
struct yy_trans_info
|
struct yy_trans_info
|
||||||
|
@ -382,22 +382,23 @@ struct yy_trans_info
|
||||||
flex_int32_t yy_verify;
|
flex_int32_t yy_verify;
|
||||||
flex_int32_t yy_nxt;
|
flex_int32_t yy_nxt;
|
||||||
};
|
};
|
||||||
static yyconst flex_int16_t yy_accept[130] =
|
static yyconst flex_int16_t yy_accept[132] =
|
||||||
{ 0,
|
{ 0,
|
||||||
0, 0, 34, 32, 1, 3, 32, 32, 32, 27,
|
0, 0, 35, 33, 1, 3, 33, 33, 33, 28,
|
||||||
27, 25, 28, 32, 28, 28, 28, 32, 32, 32,
|
28, 26, 29, 33, 29, 29, 29, 33, 33, 33,
|
||||||
32, 32, 32, 32, 32, 1, 3, 32, 0, 32,
|
33, 33, 33, 33, 33, 1, 3, 33, 0, 33,
|
||||||
32, 0, 2, 27, 28, 32, 32, 32, 32, 28,
|
33, 0, 2, 28, 29, 33, 33, 33, 33, 29,
|
||||||
32, 32, 32, 32, 32, 32, 20, 32, 32, 32,
|
33, 33, 33, 33, 33, 33, 21, 33, 33, 33,
|
||||||
7, 32, 32, 32, 32, 31, 31, 32, 0, 26,
|
7, 33, 33, 33, 33, 33, 32, 32, 33, 0,
|
||||||
32, 32, 15, 32, 32, 19, 24, 32, 12, 32,
|
27, 33, 33, 15, 33, 33, 20, 25, 33, 12,
|
||||||
32, 18, 32, 8, 9, 11, 32, 32, 32, 0,
|
33, 33, 19, 33, 8, 9, 11, 33, 18, 33,
|
||||||
29, 4, 32, 32, 32, 32, 32, 32, 32, 32,
|
33, 0, 30, 4, 33, 33, 33, 33, 33, 33,
|
||||||
32, 30, 30, 32, 32, 32, 32, 32, 32, 13,
|
33, 33, 33, 31, 31, 33, 33, 33, 33, 33,
|
||||||
|
|
||||||
32, 32, 32, 5, 16, 32, 32, 10, 32, 32,
|
33, 13, 33, 33, 33, 5, 16, 33, 33, 10,
|
||||||
32, 17, 22, 32, 32, 32, 32, 32, 6, 32,
|
33, 33, 33, 17, 23, 33, 33, 33, 33, 33,
|
||||||
32, 32, 32, 32, 21, 32, 14, 23, 0
|
6, 33, 33, 33, 33, 33, 22, 33, 14, 24,
|
||||||
|
0
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
static yyconst YY_CHAR yy_ec[256] =
|
static yyconst YY_CHAR yy_ec[256] =
|
||||||
|
@ -440,102 +441,104 @@ static yyconst YY_CHAR yy_meta[39] =
|
||||||
1, 1, 1, 1, 1, 1, 1, 1
|
1, 1, 1, 1, 1, 1, 1, 1
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
static yyconst flex_uint16_t yy_base[137] =
|
static yyconst flex_uint16_t yy_base[139] =
|
||||||
{ 0,
|
{ 0,
|
||||||
0, 0, 200, 0, 197, 201, 195, 37, 41, 38,
|
0, 0, 202, 0, 199, 203, 197, 37, 41, 38,
|
||||||
160, 0, 44, 182, 54, 78, 60, 174, 45, 177,
|
162, 0, 44, 184, 54, 78, 60, 176, 45, 179,
|
||||||
42, 47, 172, 157, 0, 189, 201, 77, 185, 87,
|
42, 47, 174, 41, 0, 192, 203, 77, 188, 87,
|
||||||
69, 186, 201, 0, 86, 104, 173, 162, 151, 93,
|
91, 189, 203, 0, 88, 104, 176, 165, 154, 93,
|
||||||
158, 153, 163, 154, 162, 156, 162, 147, 147, 154,
|
161, 156, 166, 157, 165, 159, 165, 150, 150, 157,
|
||||||
0, 150, 144, 150, 154, 0, 201, 101, 166, 0,
|
0, 153, 147, 153, 150, 156, 0, 203, 101, 168,
|
||||||
159, 139, 152, 142, 149, 0, 0, 144, 0, 143,
|
0, 161, 141, 154, 144, 151, 0, 0, 146, 0,
|
||||||
133, 0, 137, 0, 0, 0, 136, 127, 154, 153,
|
145, 135, 0, 139, 0, 0, 0, 138, 0, 129,
|
||||||
0, 0, 138, 137, 130, 122, 121, 127, 132, 117,
|
156, 155, 0, 0, 140, 139, 132, 124, 123, 129,
|
||||||
111, 0, 201, 122, 126, 118, 120, 119, 124, 0,
|
134, 119, 113, 0, 203, 124, 128, 120, 122, 121,
|
||||||
|
|
||||||
108, 95, 92, 0, 0, 101, 85, 102, 96, 80,
|
126, 0, 110, 110, 107, 0, 0, 109, 93, 104,
|
||||||
76, 0, 0, 83, 73, 77, 63, 64, 0, 64,
|
98, 84, 84, 0, 0, 89, 77, 87, 71, 66,
|
||||||
62, 50, 51, 33, 0, 28, 0, 0, 201, 40,
|
0, 64, 62, 50, 47, 33, 0, 28, 0, 0,
|
||||||
129, 131, 133, 135, 137, 139
|
203, 40, 129, 131, 133, 135, 137, 139
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
static yyconst flex_int16_t yy_def[137] =
|
static yyconst flex_int16_t yy_def[139] =
|
||||||
{ 0,
|
{ 0,
|
||||||
129, 1, 129, 130, 129, 129, 130, 131, 132, 130,
|
131, 1, 131, 132, 131, 131, 132, 133, 134, 132,
|
||||||
10, 130, 10, 130, 10, 10, 10, 130, 130, 130,
|
10, 132, 10, 132, 10, 10, 10, 132, 132, 132,
|
||||||
130, 130, 130, 130, 130, 129, 129, 131, 133, 134,
|
132, 132, 132, 132, 132, 131, 131, 133, 135, 136,
|
||||||
132, 135, 129, 10, 10, 10, 130, 130, 130, 10,
|
134, 137, 131, 10, 10, 10, 132, 132, 132, 10,
|
||||||
130, 130, 130, 130, 130, 130, 130, 130, 130, 130,
|
132, 132, 132, 132, 132, 132, 132, 132, 132, 132,
|
||||||
130, 130, 130, 130, 130, 130, 129, 134, 136, 36,
|
132, 132, 132, 132, 132, 132, 132, 131, 136, 138,
|
||||||
130, 130, 130, 130, 130, 130, 130, 130, 130, 130,
|
36, 132, 132, 132, 132, 132, 132, 132, 132, 132,
|
||||||
130, 130, 130, 130, 130, 130, 130, 130, 130, 129,
|
132, 132, 132, 132, 132, 132, 132, 132, 132, 132,
|
||||||
130, 130, 130, 130, 130, 130, 130, 130, 130, 130,
|
132, 131, 132, 132, 132, 132, 132, 132, 132, 132,
|
||||||
130, 130, 129, 130, 130, 130, 130, 130, 130, 130,
|
132, 132, 132, 132, 131, 132, 132, 132, 132, 132,
|
||||||
|
|
||||||
130, 130, 130, 130, 130, 130, 130, 130, 130, 130,
|
132, 132, 132, 132, 132, 132, 132, 132, 132, 132,
|
||||||
130, 130, 130, 130, 130, 130, 130, 130, 130, 130,
|
132, 132, 132, 132, 132, 132, 132, 132, 132, 132,
|
||||||
130, 130, 130, 130, 130, 130, 130, 130, 0, 129,
|
132, 132, 132, 132, 132, 132, 132, 132, 132, 132,
|
||||||
129, 129, 129, 129, 129, 129
|
0, 131, 131, 131, 131, 131, 131, 131
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
static yyconst flex_uint16_t yy_nxt[240] =
|
static yyconst flex_uint16_t yy_nxt[242] =
|
||||||
{ 0,
|
{ 0,
|
||||||
4, 5, 6, 7, 8, 9, 10, 11, 10, 12,
|
4, 5, 6, 7, 8, 9, 10, 11, 10, 12,
|
||||||
13, 13, 14, 4, 4, 4, 13, 13, 15, 16,
|
13, 13, 14, 4, 4, 4, 13, 13, 15, 16,
|
||||||
17, 13, 18, 4, 19, 20, 4, 4, 21, 22,
|
17, 13, 18, 4, 19, 20, 4, 4, 21, 22,
|
||||||
4, 23, 24, 4, 4, 4, 4, 4, 29, 29,
|
4, 23, 24, 4, 4, 4, 4, 4, 29, 29,
|
||||||
25, 30, 32, 33, 34, 34, 34, 128, 35, 35,
|
25, 30, 32, 33, 34, 34, 34, 130, 35, 35,
|
||||||
35, 35, 35, 45, 35, 35, 35, 35, 35, 35,
|
35, 35, 35, 45, 35, 35, 35, 35, 35, 35,
|
||||||
35, 35, 35, 50, 127, 52, 35, 35, 35, 51,
|
35, 35, 35, 50, 129, 52, 35, 35, 35, 51,
|
||||||
32, 33, 46, 47, 53, 126, 48, 38, 29, 29,
|
55, 128, 46, 47, 53, 56, 48, 38, 29, 29,
|
||||||
125, 56, 124, 39, 35, 35, 35, 43, 59, 59,
|
127, 57, 126, 39, 35, 35, 35, 43, 60, 60,
|
||||||
123, 25, 35, 35, 35, 122, 121, 120, 40, 35,
|
125, 25, 32, 33, 35, 35, 35, 124, 40, 35,
|
||||||
|
|
||||||
35, 35, 59, 59, 119, 79, 41, 118, 117, 42,
|
35, 35, 60, 60, 123, 81, 41, 122, 121, 42,
|
||||||
60, 60, 60, 116, 60, 60, 115, 114, 113, 112,
|
61, 61, 61, 120, 61, 61, 119, 118, 117, 116,
|
||||||
60, 60, 60, 60, 60, 60, 111, 110, 64, 28,
|
61, 61, 61, 61, 61, 61, 115, 114, 65, 28,
|
||||||
28, 31, 31, 29, 29, 58, 58, 32, 32, 59,
|
28, 31, 31, 29, 29, 59, 59, 32, 32, 60,
|
||||||
59, 109, 108, 107, 106, 105, 104, 103, 102, 101,
|
60, 113, 112, 111, 110, 109, 108, 107, 106, 105,
|
||||||
100, 99, 98, 97, 96, 95, 94, 93, 92, 91,
|
104, 103, 102, 101, 100, 99, 98, 97, 96, 95,
|
||||||
90, 89, 88, 87, 86, 85, 84, 83, 82, 81,
|
94, 93, 92, 91, 90, 89, 88, 87, 86, 85,
|
||||||
80, 78, 77, 76, 75, 74, 73, 72, 71, 70,
|
84, 83, 82, 80, 79, 78, 77, 76, 75, 74,
|
||||||
69, 68, 67, 66, 65, 63, 62, 61, 33, 57,
|
73, 72, 71, 70, 69, 68, 67, 66, 64, 63,
|
||||||
26, 55, 54, 49, 44, 37, 36, 27, 26, 129,
|
62, 33, 58, 26, 54, 49, 44, 37, 36, 27,
|
||||||
|
|
||||||
3, 129, 129, 129, 129, 129, 129, 129, 129, 129,
|
26, 131, 3, 131, 131, 131, 131, 131, 131, 131,
|
||||||
129, 129, 129, 129, 129, 129, 129, 129, 129, 129,
|
131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
|
||||||
129, 129, 129, 129, 129, 129, 129, 129, 129, 129,
|
131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
|
||||||
129, 129, 129, 129, 129, 129, 129, 129, 129
|
131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
|
||||||
|
131
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
static yyconst flex_int16_t yy_chk[240] =
|
static yyconst flex_int16_t yy_chk[242] =
|
||||||
{ 0,
|
{ 0,
|
||||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
1, 1, 1, 1, 1, 1, 1, 1, 8, 8,
|
1, 1, 1, 1, 1, 1, 1, 1, 8, 8,
|
||||||
130, 8, 9, 9, 10, 10, 10, 126, 10, 10,
|
132, 8, 9, 9, 10, 10, 10, 128, 10, 10,
|
||||||
13, 13, 13, 19, 10, 10, 10, 10, 10, 10,
|
13, 13, 13, 19, 10, 10, 10, 10, 10, 10,
|
||||||
15, 15, 15, 21, 124, 22, 17, 17, 17, 21,
|
15, 15, 15, 21, 126, 22, 17, 17, 17, 21,
|
||||||
31, 31, 19, 19, 22, 123, 19, 15, 28, 28,
|
24, 125, 19, 19, 22, 24, 19, 15, 28, 28,
|
||||||
122, 28, 121, 15, 16, 16, 16, 17, 30, 30,
|
124, 28, 123, 15, 16, 16, 16, 17, 30, 30,
|
||||||
120, 30, 35, 35, 35, 118, 117, 116, 16, 40,
|
122, 30, 31, 31, 35, 35, 35, 120, 16, 40,
|
||||||
|
|
||||||
40, 40, 58, 58, 115, 58, 16, 114, 111, 16,
|
40, 40, 59, 59, 119, 59, 16, 118, 117, 16,
|
||||||
36, 36, 36, 110, 36, 36, 109, 108, 107, 106,
|
36, 36, 36, 116, 36, 36, 113, 112, 111, 110,
|
||||||
36, 36, 36, 36, 36, 36, 103, 102, 40, 131,
|
36, 36, 36, 36, 36, 36, 109, 108, 40, 133,
|
||||||
131, 132, 132, 133, 133, 134, 134, 135, 135, 136,
|
133, 134, 134, 135, 135, 136, 136, 137, 137, 138,
|
||||||
136, 101, 99, 98, 97, 96, 95, 94, 91, 90,
|
138, 105, 104, 103, 101, 100, 99, 98, 97, 96,
|
||||||
89, 88, 87, 86, 85, 84, 83, 80, 79, 78,
|
93, 92, 91, 90, 89, 88, 87, 86, 85, 82,
|
||||||
77, 73, 71, 70, 68, 65, 64, 63, 62, 61,
|
81, 80, 78, 74, 72, 71, 69, 66, 65, 64,
|
||||||
59, 55, 54, 53, 52, 50, 49, 48, 47, 46,
|
63, 62, 60, 56, 55, 54, 53, 52, 50, 49,
|
||||||
45, 44, 43, 42, 41, 39, 38, 37, 32, 29,
|
48, 47, 46, 45, 44, 43, 42, 41, 39, 38,
|
||||||
26, 24, 23, 20, 18, 14, 11, 7, 5, 3,
|
37, 32, 29, 26, 23, 20, 18, 14, 11, 7,
|
||||||
|
|
||||||
129, 129, 129, 129, 129, 129, 129, 129, 129, 129,
|
5, 3, 131, 131, 131, 131, 131, 131, 131, 131,
|
||||||
129, 129, 129, 129, 129, 129, 129, 129, 129, 129,
|
131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
|
||||||
129, 129, 129, 129, 129, 129, 129, 129, 129, 129,
|
131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
|
||||||
129, 129, 129, 129, 129, 129, 129, 129, 129
|
131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
|
||||||
|
131
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
static yy_state_type yy_last_accepting_state;
|
static yy_state_type yy_last_accepting_state;
|
||||||
|
@ -630,7 +633,7 @@ extern int yywrap (void );
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef YY_NO_UNPUT
|
#ifndef YY_NO_UNPUT
|
||||||
|
|
||||||
static void yyunput (int c,char *buf_ptr );
|
static void yyunput (int c,char *buf_ptr );
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -814,13 +817,13 @@ yy_match:
|
||||||
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
|
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
|
||||||
{
|
{
|
||||||
yy_current_state = (int) yy_def[yy_current_state];
|
yy_current_state = (int) yy_def[yy_current_state];
|
||||||
if ( yy_current_state >= 130 )
|
if ( yy_current_state >= 132 )
|
||||||
yy_c = yy_meta[(unsigned int) yy_c];
|
yy_c = yy_meta[(unsigned int) yy_c];
|
||||||
}
|
}
|
||||||
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
|
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
|
||||||
++yy_cp;
|
++yy_cp;
|
||||||
}
|
}
|
||||||
while ( yy_base[yy_current_state] != 201 );
|
while ( yy_base[yy_current_state] != 203 );
|
||||||
|
|
||||||
yy_find_action:
|
yy_find_action:
|
||||||
yy_act = yy_accept[yy_current_state];
|
yy_act = yy_accept[yy_current_state];
|
||||||
|
@ -916,39 +919,39 @@ YY_RULE_SETUP
|
||||||
YY_BREAK
|
YY_BREAK
|
||||||
case 18:
|
case 18:
|
||||||
YY_RULE_SETUP
|
YY_RULE_SETUP
|
||||||
{yylval.number=IRQ; return(RESOURCE);}
|
{yylval.number=SPI; return(BUS);}
|
||||||
YY_BREAK
|
YY_BREAK
|
||||||
case 19:
|
case 19:
|
||||||
YY_RULE_SETUP
|
YY_RULE_SETUP
|
||||||
{yylval.number=DRQ; return(RESOURCE);}
|
{yylval.number=IRQ; return(RESOURCE);}
|
||||||
YY_BREAK
|
YY_BREAK
|
||||||
case 20:
|
case 20:
|
||||||
YY_RULE_SETUP
|
YY_RULE_SETUP
|
||||||
{yylval.number=IO; return(RESOURCE);}
|
{yylval.number=DRQ; return(RESOURCE);}
|
||||||
YY_BREAK
|
YY_BREAK
|
||||||
case 21:
|
case 21:
|
||||||
YY_RULE_SETUP
|
YY_RULE_SETUP
|
||||||
{return(IOAPIC_IRQ);}
|
{yylval.number=IO; return(RESOURCE);}
|
||||||
YY_BREAK
|
YY_BREAK
|
||||||
case 22:
|
case 22:
|
||||||
YY_RULE_SETUP
|
YY_RULE_SETUP
|
||||||
{return(INHERIT);}
|
{return(IOAPIC_IRQ);}
|
||||||
YY_BREAK
|
YY_BREAK
|
||||||
case 23:
|
case 23:
|
||||||
YY_RULE_SETUP
|
YY_RULE_SETUP
|
||||||
{return(SUBSYSTEMID);}
|
{return(INHERIT);}
|
||||||
YY_BREAK
|
YY_BREAK
|
||||||
case 24:
|
case 24:
|
||||||
YY_RULE_SETUP
|
YY_RULE_SETUP
|
||||||
{return(END);}
|
{return(SUBSYSTEMID);}
|
||||||
YY_BREAK
|
YY_BREAK
|
||||||
case 25:
|
case 25:
|
||||||
YY_RULE_SETUP
|
YY_RULE_SETUP
|
||||||
{return(EQUALS);}
|
{return(END);}
|
||||||
YY_BREAK
|
YY_BREAK
|
||||||
case 26:
|
case 26:
|
||||||
YY_RULE_SETUP
|
YY_RULE_SETUP
|
||||||
{yylval.string = malloc(yyleng+1); strncpy(yylval.string, yytext, yyleng); yylval.string[yyleng]='\0'; return(NUMBER);}
|
{return(EQUALS);}
|
||||||
YY_BREAK
|
YY_BREAK
|
||||||
case 27:
|
case 27:
|
||||||
YY_RULE_SETUP
|
YY_RULE_SETUP
|
||||||
|
@ -960,12 +963,11 @@ YY_RULE_SETUP
|
||||||
YY_BREAK
|
YY_BREAK
|
||||||
case 29:
|
case 29:
|
||||||
YY_RULE_SETUP
|
YY_RULE_SETUP
|
||||||
{yylval.string = malloc(yyleng+1); strncpy(yylval.string, yytext, yyleng); yylval.string[yyleng]='\0'; return(PCIINT);}
|
{yylval.string = malloc(yyleng+1); strncpy(yylval.string, yytext, yyleng); yylval.string[yyleng]='\0'; return(NUMBER);}
|
||||||
YY_BREAK
|
YY_BREAK
|
||||||
case 30:
|
case 30:
|
||||||
/* rule 30 can match eol */
|
|
||||||
YY_RULE_SETUP
|
YY_RULE_SETUP
|
||||||
{yylval.string = malloc(yyleng-1); strncpy(yylval.string, yytext+1, yyleng-2); yylval.string[yyleng-2]='\0'; return(STRING);}
|
{yylval.string = malloc(yyleng+1); strncpy(yylval.string, yytext, yyleng); yylval.string[yyleng]='\0'; return(PCIINT);}
|
||||||
YY_BREAK
|
YY_BREAK
|
||||||
case 31:
|
case 31:
|
||||||
/* rule 31 can match eol */
|
/* rule 31 can match eol */
|
||||||
|
@ -973,10 +975,15 @@ YY_RULE_SETUP
|
||||||
{yylval.string = malloc(yyleng-1); strncpy(yylval.string, yytext+1, yyleng-2); yylval.string[yyleng-2]='\0'; return(STRING);}
|
{yylval.string = malloc(yyleng-1); strncpy(yylval.string, yytext+1, yyleng-2); yylval.string[yyleng-2]='\0'; return(STRING);}
|
||||||
YY_BREAK
|
YY_BREAK
|
||||||
case 32:
|
case 32:
|
||||||
|
/* rule 32 can match eol */
|
||||||
|
YY_RULE_SETUP
|
||||||
|
{yylval.string = malloc(yyleng-1); strncpy(yylval.string, yytext+1, yyleng-2); yylval.string[yyleng-2]='\0'; return(STRING);}
|
||||||
|
YY_BREAK
|
||||||
|
case 33:
|
||||||
YY_RULE_SETUP
|
YY_RULE_SETUP
|
||||||
{yylval.string = malloc(yyleng+1); strncpy(yylval.string, yytext, yyleng); yylval.string[yyleng]='\0'; return(STRING);}
|
{yylval.string = malloc(yyleng+1); strncpy(yylval.string, yytext, yyleng); yylval.string[yyleng]='\0'; return(STRING);}
|
||||||
YY_BREAK
|
YY_BREAK
|
||||||
case 33:
|
case 34:
|
||||||
YY_RULE_SETUP
|
YY_RULE_SETUP
|
||||||
ECHO;
|
ECHO;
|
||||||
YY_BREAK
|
YY_BREAK
|
||||||
|
@ -1235,9 +1242,9 @@ static int yy_get_next_buffer (void)
|
||||||
else
|
else
|
||||||
ret_val = EOB_ACT_CONTINUE_SCAN;
|
ret_val = EOB_ACT_CONTINUE_SCAN;
|
||||||
|
|
||||||
if ((int) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
|
if ((yy_size_t) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
|
||||||
/* Extend the array by 50%, plus the number we really need. */
|
/* Extend the array by 50%, plus the number we really need. */
|
||||||
int new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1);
|
yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1);
|
||||||
YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size );
|
YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size );
|
||||||
if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
|
if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
|
||||||
YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" );
|
YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" );
|
||||||
|
@ -1272,7 +1279,7 @@ static int yy_get_next_buffer (void)
|
||||||
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
|
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
|
||||||
{
|
{
|
||||||
yy_current_state = (int) yy_def[yy_current_state];
|
yy_current_state = (int) yy_def[yy_current_state];
|
||||||
if ( yy_current_state >= 130 )
|
if ( yy_current_state >= 132 )
|
||||||
yy_c = yy_meta[(unsigned int) yy_c];
|
yy_c = yy_meta[(unsigned int) yy_c];
|
||||||
}
|
}
|
||||||
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
|
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
|
||||||
|
@ -1300,11 +1307,11 @@ static int yy_get_next_buffer (void)
|
||||||
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
|
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
|
||||||
{
|
{
|
||||||
yy_current_state = (int) yy_def[yy_current_state];
|
yy_current_state = (int) yy_def[yy_current_state];
|
||||||
if ( yy_current_state >= 130 )
|
if ( yy_current_state >= 132 )
|
||||||
yy_c = yy_meta[(unsigned int) yy_c];
|
yy_c = yy_meta[(unsigned int) yy_c];
|
||||||
}
|
}
|
||||||
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
|
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
|
||||||
yy_is_jam = (yy_current_state == 129);
|
yy_is_jam = (yy_current_state == 131);
|
||||||
|
|
||||||
return yy_is_jam ? 0 : yy_current_state;
|
return yy_is_jam ? 0 : yy_current_state;
|
||||||
}
|
}
|
||||||
|
@ -1654,7 +1661,7 @@ static void yyensure_buffer_stack (void)
|
||||||
* scanner will even need a stack. We use 2 instead of 1 to avoid an
|
* scanner will even need a stack. We use 2 instead of 1 to avoid an
|
||||||
* immediate realloc on the next call.
|
* immediate realloc on the next call.
|
||||||
*/
|
*/
|
||||||
num_to_alloc = 1; /* After all that talk, this was set to 1 anyways... */
|
num_to_alloc = 1; // After all that talk, this was set to 1 anyways...
|
||||||
(yy_buffer_stack) = (struct yy_buffer_state**)yyalloc
|
(yy_buffer_stack) = (struct yy_buffer_state**)yyalloc
|
||||||
(num_to_alloc * sizeof(struct yy_buffer_state*)
|
(num_to_alloc * sizeof(struct yy_buffer_state*)
|
||||||
);
|
);
|
||||||
|
@ -1937,7 +1944,7 @@ int yylex_destroy (void)
|
||||||
#ifndef yytext_ptr
|
#ifndef yytext_ptr
|
||||||
static void yy_flex_strncpy (char* s1, yyconst char * s2, int n )
|
static void yy_flex_strncpy (char* s1, yyconst char * s2, int n )
|
||||||
{
|
{
|
||||||
|
|
||||||
int i;
|
int i;
|
||||||
for ( i = 0; i < n; ++i )
|
for ( i = 0; i < n; ++i )
|
||||||
s1[i] = s2[i];
|
s1[i] = s2[i];
|
||||||
|
@ -1962,7 +1969,7 @@ void *yyalloc (yy_size_t size )
|
||||||
|
|
||||||
void *yyrealloc (void * ptr, yy_size_t size )
|
void *yyrealloc (void * ptr, yy_size_t size )
|
||||||
{
|
{
|
||||||
|
|
||||||
/* The cast to (char *) in the following accommodates both
|
/* The cast to (char *) in the following accommodates both
|
||||||
* implementations that use char* generic pointers, and those
|
* implementations that use char* generic pointers, and those
|
||||||
* that use void* generic pointers. It works with the latter
|
* that use void* generic pointers. It works with the latter
|
||||||
|
|
|
@ -285,6 +285,11 @@ struct device *new_device(struct device *parent, struct device *busdev,
|
||||||
case GENERIC:
|
case GENERIC:
|
||||||
new_d->path = ".type=DEVICE_PATH_GENERIC,{.generic={ .id = 0x%x, .subid = 0x%x }}";
|
new_d->path = ".type=DEVICE_PATH_GENERIC,{.generic={ .id = 0x%x, .subid = 0x%x }}";
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case SPI:
|
||||||
|
new_d->path = ".type=DEVICE_PATH_SPI,{.spi={ .cs = 0x%x }}";
|
||||||
|
break;
|
||||||
|
|
||||||
}
|
}
|
||||||
return new_d;
|
return new_d;
|
||||||
}
|
}
|
||||||
|
|
|
@ -38,6 +38,7 @@ cpu_cluster {yylval.number=CPU_CLUSTER; return(BUS);}
|
||||||
cpu {yylval.number=CPU; return(BUS);}
|
cpu {yylval.number=CPU; return(BUS);}
|
||||||
domain {yylval.number=DOMAIN; return(BUS);}
|
domain {yylval.number=DOMAIN; return(BUS);}
|
||||||
generic {yylval.number=GENERIC; return(BUS);}
|
generic {yylval.number=GENERIC; return(BUS);}
|
||||||
|
spi {yylval.number=SPI; return(BUS);}
|
||||||
irq {yylval.number=IRQ; return(RESOURCE);}
|
irq {yylval.number=IRQ; return(RESOURCE);}
|
||||||
drq {yylval.number=DRQ; return(RESOURCE);}
|
drq {yylval.number=DRQ; return(RESOURCE);}
|
||||||
io {yylval.number=IO; return(RESOURCE);}
|
io {yylval.number=IO; return(RESOURCE);}
|
||||||
|
|
|
@ -149,7 +149,8 @@ extern int yydebug;
|
||||||
IOAPIC_IRQ = 281,
|
IOAPIC_IRQ = 281,
|
||||||
IOAPIC = 282,
|
IOAPIC = 282,
|
||||||
PCIINT = 283,
|
PCIINT = 283,
|
||||||
GENERIC = 284
|
GENERIC = 284,
|
||||||
|
SPI = 285
|
||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -426,7 +427,7 @@ union yyalloc
|
||||||
#define YYLAST 39
|
#define YYLAST 39
|
||||||
|
|
||||||
/* YYNTOKENS -- Number of terminals. */
|
/* YYNTOKENS -- Number of terminals. */
|
||||||
#define YYNTOKENS 30
|
#define YYNTOKENS 31
|
||||||
/* YYNNTS -- Number of nonterminals. */
|
/* YYNNTS -- Number of nonterminals. */
|
||||||
#define YYNNTS 13
|
#define YYNNTS 13
|
||||||
/* YYNRULES -- Number of rules. */
|
/* YYNRULES -- Number of rules. */
|
||||||
|
@ -437,7 +438,7 @@ union yyalloc
|
||||||
/* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned
|
/* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned
|
||||||
by yylex, with out-of-bounds checking. */
|
by yylex, with out-of-bounds checking. */
|
||||||
#define YYUNDEFTOK 2
|
#define YYUNDEFTOK 2
|
||||||
#define YYMAXUTOK 284
|
#define YYMAXUTOK 285
|
||||||
|
|
||||||
#define YYTRANSLATE(YYX) \
|
#define YYTRANSLATE(YYX) \
|
||||||
((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
|
((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
|
||||||
|
@ -474,7 +475,7 @@ static const yytype_uint8 yytranslate[] =
|
||||||
2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
|
2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
|
||||||
5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
|
5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
|
||||||
15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
|
15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
|
||||||
25, 26, 27, 28, 29
|
25, 26, 27, 28, 29, 30
|
||||||
};
|
};
|
||||||
|
|
||||||
#if YYDEBUG
|
#if YYDEBUG
|
||||||
|
@ -496,8 +497,8 @@ static const char *const yytname[] =
|
||||||
"BUS", "RESOURCE", "END", "EQUALS", "HEX", "STRING", "PCI", "PNP", "I2C",
|
"BUS", "RESOURCE", "END", "EQUALS", "HEX", "STRING", "PCI", "PNP", "I2C",
|
||||||
"APIC", "CPU_CLUSTER", "CPU", "DOMAIN", "IRQ", "DRQ", "IO", "NUMBER",
|
"APIC", "CPU_CLUSTER", "CPU", "DOMAIN", "IRQ", "DRQ", "IO", "NUMBER",
|
||||||
"SUBSYSTEMID", "INHERIT", "IOAPIC_IRQ", "IOAPIC", "PCIINT", "GENERIC",
|
"SUBSYSTEMID", "INHERIT", "IOAPIC_IRQ", "IOAPIC", "PCIINT", "GENERIC",
|
||||||
"$accept", "devtree", "$@1", "chipchildren", "devicechildren", "chip",
|
"SPI", "$accept", "devtree", "$@1", "chipchildren", "devicechildren",
|
||||||
"@2", "device", "@3", "resource", "registers", "subsystemid",
|
"chip", "@2", "device", "@3", "resource", "registers", "subsystemid",
|
||||||
"ioapic_irq", YY_NULLPTR
|
"ioapic_irq", YY_NULLPTR
|
||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
|
@ -509,7 +510,8 @@ static const yytype_uint16 yytoknum[] =
|
||||||
{
|
{
|
||||||
0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
|
0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
|
||||||
265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
|
265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
|
||||||
275, 276, 277, 278, 279, 280, 281, 282, 283, 284
|
275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
|
||||||
|
285
|
||||||
};
|
};
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
|
@ -583,19 +585,19 @@ static const yytype_int8 yycheck[] =
|
||||||
symbol of state STATE-NUM. */
|
symbol of state STATE-NUM. */
|
||||||
static const yytype_uint8 yystos[] =
|
static const yytype_uint8 yystos[] =
|
||||||
{
|
{
|
||||||
0, 31, 32, 0, 3, 35, 12, 36, 33, 4,
|
0, 32, 33, 0, 3, 36, 12, 37, 34, 4,
|
||||||
5, 9, 35, 37, 40, 7, 12, 23, 10, 6,
|
5, 9, 36, 38, 41, 7, 12, 23, 10, 6,
|
||||||
12, 38, 34, 8, 9, 24, 26, 35, 37, 39,
|
12, 39, 35, 8, 9, 24, 26, 36, 38, 40,
|
||||||
41, 42, 23, 23, 23, 10, 23, 28, 23, 25,
|
42, 43, 23, 23, 23, 10, 23, 28, 23, 25,
|
||||||
23
|
23
|
||||||
};
|
};
|
||||||
|
|
||||||
/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
|
/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
|
||||||
static const yytype_uint8 yyr1[] =
|
static const yytype_uint8 yyr1[] =
|
||||||
{
|
{
|
||||||
0, 30, 32, 31, 33, 33, 33, 33, 34, 34,
|
0, 31, 33, 32, 34, 34, 34, 34, 35, 35,
|
||||||
34, 34, 34, 34, 36, 35, 38, 37, 39, 40,
|
35, 35, 35, 35, 37, 36, 39, 38, 40, 41,
|
||||||
41, 41, 42
|
42, 42, 43
|
||||||
};
|
};
|
||||||
|
|
||||||
/* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */
|
/* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */
|
||||||
|
|
|
@ -71,7 +71,8 @@ extern int yydebug;
|
||||||
IOAPIC_IRQ = 281,
|
IOAPIC_IRQ = 281,
|
||||||
IOAPIC = 282,
|
IOAPIC = 282,
|
||||||
PCIINT = 283,
|
PCIINT = 283,
|
||||||
GENERIC = 284
|
GENERIC = 284,
|
||||||
|
SPI = 285
|
||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -29,7 +29,7 @@ static struct device *cur_parent, *cur_bus;
|
||||||
int number;
|
int number;
|
||||||
}
|
}
|
||||||
|
|
||||||
%token CHIP DEVICE REGISTER BOOL BUS RESOURCE END EQUALS HEX STRING PCI PNP I2C APIC CPU_CLUSTER CPU DOMAIN IRQ DRQ IO NUMBER SUBSYSTEMID INHERIT IOAPIC_IRQ IOAPIC PCIINT GENERIC
|
%token CHIP DEVICE REGISTER BOOL BUS RESOURCE END EQUALS HEX STRING PCI PNP I2C APIC CPU_CLUSTER CPU DOMAIN IRQ DRQ IO NUMBER SUBSYSTEMID INHERIT IOAPIC_IRQ IOAPIC PCIINT GENERIC SPI
|
||||||
%%
|
%%
|
||||||
devtree: { cur_parent = cur_bus = head; } chip { postprocess_devtree(); } ;
|
devtree: { cur_parent = cur_bus = head; } chip { postprocess_devtree(); } ;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue