util/sconfig: Remove unused ioapic and irq keywords

Ioapic information in the devicetree was only used to set up mptables
but this generic driver was removed (ca5a793 drivers/generic/ioapic:
Drop poor implementation).

This removes the unused remainders from mainboard devicetrees.
Remove ioapic setup from sconfig.

Change-Id: Ib3fef0bf923ab3f02f3aeed2e55cf662a3dc3a1b
Signed-off-by: Arthur Heymans <arthur@aheymans.xyz>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/71789
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Lean Sheng Tan <sheng.tan@9elements.com>
This commit is contained in:
Arthur Heymans
2023-01-10 15:22:58 +01:00
committed by Felix Held
parent 8b8400a889
commit e84b095d3a
12 changed files with 367 additions and 513 deletions

View File

@@ -142,54 +142,51 @@ enum yysymbol_kind_t
YYSYMBOL_NUMBER = 29, /* NUMBER */
YYSYMBOL_SUBSYSTEMID = 30, /* SUBSYSTEMID */
YYSYMBOL_INHERIT = 31, /* INHERIT */
YYSYMBOL_IOAPIC_IRQ = 32, /* IOAPIC_IRQ */
YYSYMBOL_IOAPIC = 33, /* IOAPIC */
YYSYMBOL_PCIINT = 34, /* PCIINT */
YYSYMBOL_GENERIC = 35, /* GENERIC */
YYSYMBOL_SPI = 36, /* SPI */
YYSYMBOL_USB = 37, /* USB */
YYSYMBOL_MMIO = 38, /* MMIO */
YYSYMBOL_GPIO = 39, /* GPIO */
YYSYMBOL_MDIO = 40, /* MDIO */
YYSYMBOL_FW_CONFIG_TABLE = 41, /* FW_CONFIG_TABLE */
YYSYMBOL_FW_CONFIG_FIELD = 42, /* FW_CONFIG_FIELD */
YYSYMBOL_FW_CONFIG_OPTION = 43, /* FW_CONFIG_OPTION */
YYSYMBOL_FW_CONFIG_PROBE = 44, /* FW_CONFIG_PROBE */
YYSYMBOL_PIPE = 45, /* PIPE */
YYSYMBOL_OPS = 46, /* OPS */
YYSYMBOL_YYACCEPT = 47, /* $accept */
YYSYMBOL_devtree = 48, /* devtree */
YYSYMBOL_chipchild_nondev = 49, /* chipchild_nondev */
YYSYMBOL_chipchild = 50, /* chipchild */
YYSYMBOL_chipchildren = 51, /* chipchildren */
YYSYMBOL_chipchildren_dev = 52, /* chipchildren_dev */
YYSYMBOL_devicechildren = 53, /* devicechildren */
YYSYMBOL_chip = 54, /* chip */
YYSYMBOL_55_1 = 55, /* @1 */
YYSYMBOL_device = 56, /* device */
YYSYMBOL_57_2 = 57, /* @2 */
YYSYMBOL_58_3 = 58, /* @3 */
YYSYMBOL_alias = 59, /* alias */
YYSYMBOL_status = 60, /* status */
YYSYMBOL_resource = 61, /* resource */
YYSYMBOL_reference = 62, /* reference */
YYSYMBOL_registers = 63, /* registers */
YYSYMBOL_subsystemid = 64, /* subsystemid */
YYSYMBOL_ioapic_irq = 65, /* ioapic_irq */
YYSYMBOL_smbios_slot_desc = 66, /* smbios_slot_desc */
YYSYMBOL_smbios_dev_info = 67, /* smbios_dev_info */
YYSYMBOL_fw_config_table = 68, /* fw_config_table */
YYSYMBOL_fw_config_table_children = 69, /* fw_config_table_children */
YYSYMBOL_fw_config_field_children = 70, /* fw_config_field_children */
YYSYMBOL_fw_config_field_bits = 71, /* fw_config_field_bits */
YYSYMBOL_fw_config_field_bits_repeating = 72, /* fw_config_field_bits_repeating */
YYSYMBOL_fw_config_field = 73, /* fw_config_field */
YYSYMBOL_74_4 = 74, /* $@4 */
YYSYMBOL_75_5 = 75, /* $@5 */
YYSYMBOL_76_6 = 76, /* $@6 */
YYSYMBOL_fw_config_option = 77, /* fw_config_option */
YYSYMBOL_fw_config_probe = 78, /* fw_config_probe */
YYSYMBOL_ops = 79 /* ops */
YYSYMBOL_PCIINT = 32, /* PCIINT */
YYSYMBOL_GENERIC = 33, /* GENERIC */
YYSYMBOL_SPI = 34, /* SPI */
YYSYMBOL_USB = 35, /* USB */
YYSYMBOL_MMIO = 36, /* MMIO */
YYSYMBOL_GPIO = 37, /* GPIO */
YYSYMBOL_MDIO = 38, /* MDIO */
YYSYMBOL_FW_CONFIG_TABLE = 39, /* FW_CONFIG_TABLE */
YYSYMBOL_FW_CONFIG_FIELD = 40, /* FW_CONFIG_FIELD */
YYSYMBOL_FW_CONFIG_OPTION = 41, /* FW_CONFIG_OPTION */
YYSYMBOL_FW_CONFIG_PROBE = 42, /* FW_CONFIG_PROBE */
YYSYMBOL_PIPE = 43, /* PIPE */
YYSYMBOL_OPS = 44, /* OPS */
YYSYMBOL_YYACCEPT = 45, /* $accept */
YYSYMBOL_devtree = 46, /* devtree */
YYSYMBOL_chipchild_nondev = 47, /* chipchild_nondev */
YYSYMBOL_chipchild = 48, /* chipchild */
YYSYMBOL_chipchildren = 49, /* chipchildren */
YYSYMBOL_chipchildren_dev = 50, /* chipchildren_dev */
YYSYMBOL_devicechildren = 51, /* devicechildren */
YYSYMBOL_chip = 52, /* chip */
YYSYMBOL_53_1 = 53, /* @1 */
YYSYMBOL_device = 54, /* device */
YYSYMBOL_55_2 = 55, /* @2 */
YYSYMBOL_56_3 = 56, /* @3 */
YYSYMBOL_alias = 57, /* alias */
YYSYMBOL_status = 58, /* status */
YYSYMBOL_resource = 59, /* resource */
YYSYMBOL_reference = 60, /* reference */
YYSYMBOL_registers = 61, /* registers */
YYSYMBOL_subsystemid = 62, /* subsystemid */
YYSYMBOL_smbios_slot_desc = 63, /* smbios_slot_desc */
YYSYMBOL_smbios_dev_info = 64, /* smbios_dev_info */
YYSYMBOL_fw_config_table = 65, /* fw_config_table */
YYSYMBOL_fw_config_table_children = 66, /* fw_config_table_children */
YYSYMBOL_fw_config_field_children = 67, /* fw_config_field_children */
YYSYMBOL_fw_config_field_bits = 68, /* fw_config_field_bits */
YYSYMBOL_fw_config_field_bits_repeating = 69, /* fw_config_field_bits_repeating */
YYSYMBOL_fw_config_field = 70, /* fw_config_field */
YYSYMBOL_71_4 = 71, /* $@4 */
YYSYMBOL_72_5 = 72, /* $@5 */
YYSYMBOL_73_6 = 73, /* $@6 */
YYSYMBOL_fw_config_option = 74, /* fw_config_option */
YYSYMBOL_fw_config_probe = 75, /* fw_config_probe */
YYSYMBOL_ops = 76 /* ops */
};
typedef enum yysymbol_kind_t yysymbol_kind_t;
@@ -517,19 +514,19 @@ union yyalloc
/* YYFINAL -- State number of the termination state. */
#define YYFINAL 2
/* YYLAST -- Last index in YYTABLE. */
#define YYLAST 113
#define YYLAST 94
/* YYNTOKENS -- Number of terminals. */
#define YYNTOKENS 47
#define YYNTOKENS 45
/* YYNNTS -- Number of nonterminals. */
#define YYNNTS 33
#define YYNNTS 32
/* YYNRULES -- Number of rules. */
#define YYNRULES 62
#define YYNRULES 60
/* YYNSTATES -- Number of states. */
#define YYNSTATES 108
#define YYNSTATES 103
/* YYMAXUTOK -- Last valid token kind. */
#define YYMAXUTOK 301
#define YYMAXUTOK 299
/* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM
@@ -572,8 +569,7 @@ static const yytype_int8 yytranslate[] =
5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
45, 46
35, 36, 37, 38, 39, 40, 41, 42, 43, 44
};
#if YYDEBUG
@@ -582,11 +578,11 @@ static const yytype_uint8 yyrline[] =
{
0, 26, 26, 26, 26, 29, 29, 29, 30, 30,
31, 31, 32, 32, 34, 34, 34, 34, 34, 34,
34, 34, 34, 34, 34, 36, 36, 45, 45, 53,
53, 61, 63, 67, 67, 69, 72, 75, 78, 81,
84, 87, 90, 93, 96, 99, 103, 106, 106, 109,
109, 112, 118, 118, 121, 120, 125, 125, 133, 133,
139, 143, 146
34, 34, 34, 34, 36, 36, 45, 45, 53, 53,
61, 63, 67, 67, 69, 72, 75, 78, 81, 84,
87, 90, 93, 96, 100, 103, 103, 106, 106, 109,
115, 115, 118, 117, 122, 122, 130, 130, 136, 140,
143
};
#endif
@@ -606,13 +602,12 @@ static const char *const yytname[] =
"REGISTER", "ALIAS", "REFERENCE", "ASSOCIATION", "BOOL", "STATUS",
"MANDATORY", "BUS", "RESOURCE", "END", "EQUALS", "HEX", "STRING", "PCI",
"PNP", "I2C", "CPU_CLUSTER", "CPU", "DOMAIN", "IRQ", "DRQ", "SLOT_DESC",
"SMBIOS_DEV_INFO", "IO", "NUMBER", "SUBSYSTEMID", "INHERIT",
"IOAPIC_IRQ", "IOAPIC", "PCIINT", "GENERIC", "SPI", "USB", "MMIO",
"GPIO", "MDIO", "FW_CONFIG_TABLE", "FW_CONFIG_FIELD", "FW_CONFIG_OPTION",
"FW_CONFIG_PROBE", "PIPE", "OPS", "$accept", "devtree",
"chipchild_nondev", "chipchild", "chipchildren", "chipchildren_dev",
"devicechildren", "chip", "@1", "device", "@2", "@3", "alias", "status",
"resource", "reference", "registers", "subsystemid", "ioapic_irq",
"SMBIOS_DEV_INFO", "IO", "NUMBER", "SUBSYSTEMID", "INHERIT", "PCIINT",
"GENERIC", "SPI", "USB", "MMIO", "GPIO", "MDIO", "FW_CONFIG_TABLE",
"FW_CONFIG_FIELD", "FW_CONFIG_OPTION", "FW_CONFIG_PROBE", "PIPE", "OPS",
"$accept", "devtree", "chipchild_nondev", "chipchild", "chipchildren",
"chipchildren_dev", "devicechildren", "chip", "@1", "device", "@2", "@3",
"alias", "status", "resource", "reference", "registers", "subsystemid",
"smbios_slot_desc", "smbios_dev_info", "fw_config_table",
"fw_config_table_children", "fw_config_field_children",
"fw_config_field_bits", "fw_config_field_bits_repeating",
@@ -627,7 +622,7 @@ yysymbol_name (yysymbol_kind_t yysymbol)
}
#endif
#define YYPACT_NINF (-49)
#define YYPACT_NINF (-51)
#define yypact_value_is_default(Yyn) \
((Yyn) == YYPACT_NINF)
@@ -641,17 +636,17 @@ yysymbol_name (yysymbol_kind_t yysymbol)
STATE-NUM. */
static const yytype_int8 yypact[] =
{
-49, 6, -49, 8, -49, -49, -49, -49, 1, 45,
-49, 18, -49, 12, 24, 25, 45, 3, -49, -49,
-49, -49, -6, 37, 26, 41, 49, -49, -49, 45,
29, 14, -49, 19, 55, 46, 47, -49, -49, -49,
-49, -49, 33, -49, -12, -49, -49, -49, 50, 19,
-49, -49, -7, 29, 14, -49, -49, 51, -49, -49,
-49, -49, -49, -49, 2, 40, 0, -49, -49, -49,
42, -49, 53, 43, 44, 48, 57, 58, -49, -49,
-49, -49, -49, -49, -49, -49, -49, -49, 7, 61,
62, 63, 52, 32, 65, -49, -49, 54, 67, -49,
59, 56, -49, -49, 69, -49, -49, -49
-51, 12, -51, 6, -51, -51, -51, -51, -3, 49,
-51, 7, -51, 10, 23, 24, 49, 14, -51, -51,
-51, -51, 16, 26, 17, 33, 42, -51, -51, 49,
28, 18, -51, 11, 53, 38, 43, -51, -51, -51,
-51, -51, 34, -51, -12, -51, -51, -51, 45, 11,
-51, -51, -8, 28, 18, -51, -51, 47, -51, -51,
-51, -51, -51, -51, -7, 37, 0, -51, -51, -51,
39, -51, 50, 40, 41, 54, 55, -51, -51, -51,
-51, -51, -51, -51, -51, -51, 5, 58, 57, 59,
46, 60, -51, -51, 51, 61, -51, 48, -51, -51,
64, -51, -51
};
/* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
@@ -659,35 +654,35 @@ static const yytype_int8 yypact[] =
means the default is an error. */
static const yytype_int8 yydefact[] =
{
2, 0, 1, 0, 48, 3, 4, 25, 0, 0,
46, 0, 47, 0, 0, 0, 0, 0, 5, 11,
7, 6, 58, 0, 0, 0, 0, 13, 26, 12,
56, 53, 50, 0, 31, 0, 0, 9, 10, 8,
51, 50, 0, 54, 0, 33, 34, 29, 0, 0,
37, 36, 0, 0, 53, 50, 59, 0, 49, 24,
32, 27, 57, 52, 0, 0, 0, 24, 55, 60,
0, 30, 0, 0, 0, 0, 0, 0, 15, 14,
16, 21, 17, 18, 19, 20, 22, 23, 0, 0,
0, 45, 0, 0, 0, 62, 28, 0, 43, 44,
38, 0, 61, 35, 42, 39, 40, 41
2, 0, 1, 0, 46, 3, 4, 24, 0, 0,
44, 0, 45, 0, 0, 0, 0, 0, 5, 11,
7, 6, 56, 0, 0, 0, 0, 13, 25, 12,
54, 51, 48, 0, 30, 0, 0, 9, 10, 8,
49, 48, 0, 52, 0, 32, 33, 28, 0, 0,
36, 35, 0, 0, 51, 48, 57, 0, 47, 23,
31, 26, 55, 50, 0, 0, 0, 23, 53, 58,
0, 29, 0, 0, 0, 0, 0, 15, 14, 16,
20, 17, 18, 19, 21, 22, 0, 0, 0, 43,
0, 0, 60, 27, 0, 41, 42, 37, 59, 34,
40, 38, 39
};
/* YYPGOTO[NTERM-NUM]. */
static const yytype_int8 yypgoto[] =
{
-49, -49, 60, -49, -49, 72, 11, -1, -49, -28,
-49, -49, -49, 64, -49, -49, -48, -49, -49, -49,
-49, -49, -49, -33, 66, 38, -49, -49, -49, -49,
-49, -49, -49
-51, -51, 62, -51, -51, 66, 19, -1, -51, -28,
-51, -51, -51, 35, -51, -51, -50, -51, -51, -51,
-51, -51, -16, 52, 29, -51, -51, -51, -51, -51,
-51, -51
};
/* YYDEFGOTO[NTERM-NUM]. */
static const yytype_int8 yydefgoto[] =
{
0, 1, 16, 38, 29, 17, 66, 18, 9, 19,
67, 59, 49, 47, 80, 20, 21, 82, 83, 84,
85, 6, 8, 44, 31, 43, 12, 55, 41, 32,
58, 86, 87
67, 59, 49, 47, 79, 20, 21, 81, 82, 83,
6, 8, 44, 31, 43, 12, 55, 41, 32, 58,
84, 85
};
/* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If
@@ -695,63 +690,59 @@ static const yytype_int8 yydefgoto[] =
number is the opposite. If YYTABLE_NINF, syntax error. */
static const yytype_int8 yytable[] =
{
5, 39, 56, 3, 13, 14, 2, 62, 52, 3,
3, 13, 14, 70, 71, 10, 68, 28, 81, 23,
70, 96, 64, 30, 24, 7, 72, 73, 45, 46,
74, 57, 75, 72, 73, 22, 57, 74, 79, 75,
81, 25, 26, 11, 76, 57, 77, 4, 3, 13,
14, 76, 15, 77, 33, 34, 35, 36, 40, 42,
79, 48, 53, 50, 51, 78, 101, 60, 65, 69,
90, 89, 91, 92, 94, 95, 97, 93, 88, 98,
99, 100, 102, 103, 104, 106, 107, 78, 27, 37,
105, 0, 63, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 54, 0,
0, 0, 0, 61
5, 39, 56, 3, 13, 14, 62, 68, 3, 13,
14, 10, 2, 70, 71, 3, 80, 23, 70, 93,
45, 46, 24, 7, 22, 52, 72, 73, 28, 57,
74, 72, 73, 57, 57, 74, 80, 11, 78, 64,
25, 26, 75, 33, 76, 30, 34, 75, 35, 76,
36, 4, 3, 13, 14, 50, 15, 40, 78, 48,
51, 42, 60, 53, 65, 77, 69, 88, 87, 89,
90, 91, 92, 94, 95, 97, 96, 98, 100, 101,
99, 102, 27, 63, 61, 77, 86, 0, 0, 0,
0, 37, 0, 0, 54
};
static const yytype_int8 yycheck[] =
{
1, 29, 14, 3, 4, 5, 0, 14, 41, 3,
3, 4, 5, 13, 14, 14, 14, 14, 66, 7,
13, 14, 55, 29, 12, 17, 26, 27, 9, 10,
30, 43, 32, 26, 27, 17, 43, 30, 66, 32,
88, 17, 17, 42, 44, 43, 46, 41, 3, 4,
5, 44, 7, 46, 17, 29, 15, 8, 29, 45,
88, 6, 29, 17, 17, 66, 34, 17, 17, 29,
17, 29, 29, 29, 17, 17, 15, 29, 67, 17,
17, 29, 17, 29, 17, 29, 17, 88, 16, 29,
31, -1, 54, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 42, -1,
-1, -1, -1, 49
1, 29, 14, 3, 4, 5, 14, 14, 3, 4,
5, 14, 0, 13, 14, 3, 66, 7, 13, 14,
9, 10, 12, 17, 17, 41, 26, 27, 14, 41,
30, 26, 27, 41, 41, 30, 86, 40, 66, 55,
17, 17, 42, 17, 44, 29, 29, 42, 15, 44,
8, 39, 3, 4, 5, 17, 7, 29, 86, 6,
17, 43, 17, 29, 17, 66, 29, 17, 29, 29,
29, 17, 17, 15, 17, 29, 17, 17, 17, 31,
29, 17, 16, 54, 49, 86, 67, -1, -1, -1,
-1, 29, -1, -1, 42
};
/* YYSTOS[STATE-NUM] -- The symbol kind of the accessing symbol of
state STATE-NUM. */
static const yytype_int8 yystos[] =
{
0, 48, 0, 3, 41, 54, 68, 17, 69, 55,
14, 42, 73, 4, 5, 7, 49, 52, 54, 56,
62, 63, 17, 7, 12, 17, 17, 52, 14, 51,
29, 71, 76, 17, 29, 15, 8, 49, 50, 56,
29, 75, 45, 72, 70, 9, 10, 60, 6, 59,
17, 17, 70, 29, 71, 74, 14, 43, 77, 58,
17, 60, 14, 72, 70, 17, 53, 57, 14, 29,
13, 14, 26, 27, 30, 32, 44, 46, 54, 56,
61, 63, 64, 65, 66, 67, 78, 79, 53, 29,
17, 29, 29, 29, 17, 17, 14, 15, 17, 17,
29, 34, 17, 29, 17, 31, 29, 17
0, 46, 0, 3, 39, 52, 65, 17, 66, 53,
14, 40, 70, 4, 5, 7, 47, 50, 52, 54,
60, 61, 17, 7, 12, 17, 17, 50, 14, 49,
29, 68, 73, 17, 29, 15, 8, 47, 48, 54,
29, 72, 43, 69, 67, 9, 10, 58, 6, 57,
17, 17, 67, 29, 68, 71, 14, 41, 74, 56,
17, 58, 14, 69, 67, 17, 51, 55, 14, 29,
13, 14, 26, 27, 30, 42, 44, 52, 54, 59,
61, 62, 63, 64, 75, 76, 51, 29, 17, 29,
29, 17, 17, 14, 15, 17, 17, 29, 17, 29,
17, 31, 17
};
/* YYR1[RULE-NUM] -- Symbol kind of the left-hand side of rule RULE-NUM. */
static const yytype_int8 yyr1[] =
{
0, 47, 48, 48, 48, 49, 49, 49, 50, 50,
51, 51, 52, 52, 53, 53, 53, 53, 53, 53,
53, 53, 53, 53, 53, 55, 54, 57, 56, 58,
56, 59, 59, 60, 60, 61, 62, 63, 64, 64,
65, 66, 66, 66, 67, 67, 68, 69, 69, 70,
70, 71, 72, 72, 74, 73, 75, 73, 76, 73,
77, 78, 79
0, 45, 46, 46, 46, 47, 47, 47, 48, 48,
49, 49, 50, 50, 51, 51, 51, 51, 51, 51,
51, 51, 51, 51, 53, 52, 55, 54, 56, 54,
57, 57, 58, 58, 59, 60, 61, 62, 62, 63,
63, 63, 64, 64, 65, 66, 66, 67, 67, 68,
69, 69, 71, 70, 72, 70, 73, 70, 74, 75,
76
};
/* YYR2[RULE-NUM] -- Number of symbols on the right-hand side of rule RULE-NUM. */
@@ -759,11 +750,11 @@ static const yytype_int8 yyr2[] =
{
0, 2, 0, 2, 2, 1, 1, 1, 1, 1,
2, 0, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 0, 0, 5, 0, 8, 0,
7, 0, 2, 1, 1, 4, 4, 4, 3, 4,
4, 5, 4, 3, 3, 2, 3, 2, 0, 2,
0, 2, 3, 0, 0, 7, 0, 6, 0, 5,
3, 3, 2
2, 2, 2, 0, 0, 5, 0, 8, 0, 7,
0, 2, 1, 1, 4, 4, 4, 3, 4, 5,
4, 3, 3, 2, 3, 2, 0, 2, 0, 2,
3, 0, 0, 7, 0, 6, 0, 5, 3, 3,
2
};
@@ -1230,7 +1221,7 @@ yyreduce:
{ cur_parent = root_parent; }
break;
case 25: /* @1: %empty */
case 24: /* @1: %empty */
{
(yyval.chip_instance) = new_chip_instance((yyvsp[0].string));
chip_enqueue_tail(cur_chip_instance);
@@ -1238,113 +1229,109 @@ yyreduce:
}
break;
case 26: /* chip: CHIP STRING @1 chipchildren_dev END */
case 25: /* chip: CHIP STRING @1 chipchildren_dev END */
{
cur_chip_instance = chip_dequeue_tail();
}
break;
case 27: /* @2: %empty */
case 26: /* @2: %empty */
{
(yyval.dev) = new_device_raw(cur_parent, cur_chip_instance, (yyvsp[-3].number), (yyvsp[-2].string), (yyvsp[-1].string), (yyvsp[0].number));
cur_parent = (yyval.dev)->last_bus;
}
break;
case 28: /* device: DEVICE BUS NUMBER alias status @2 devicechildren END */
case 27: /* device: DEVICE BUS NUMBER alias status @2 devicechildren END */
{
cur_parent = (yyvsp[-2].dev)->parent;
}
break;
case 29: /* @3: %empty */
case 28: /* @3: %empty */
{
(yyval.dev) = new_device_reference(cur_parent, cur_chip_instance, (yyvsp[-1].string), (yyvsp[0].number));
cur_parent = (yyval.dev)->last_bus;
}
break;
case 30: /* device: DEVICE REFERENCE STRING status @3 devicechildren END */
case 29: /* device: DEVICE REFERENCE STRING status @3 devicechildren END */
{
cur_parent = (yyvsp[-2].dev)->parent;
}
break;
case 31: /* alias: %empty */
case 30: /* alias: %empty */
{
(yyval.string) = NULL;
}
break;
case 32: /* alias: ALIAS STRING */
case 31: /* alias: ALIAS STRING */
{
(yyval.string) = (yyvsp[0].string);
}
break;
case 35: /* resource: RESOURCE NUMBER EQUALS NUMBER */
case 34: /* resource: RESOURCE NUMBER EQUALS NUMBER */
{ add_resource(cur_parent, (yyvsp[-3].number), strtol((yyvsp[-2].string), NULL, 0), strtol((yyvsp[0].string), NULL, 0)); }
break;
case 36: /* reference: REFERENCE STRING ASSOCIATION STRING */
case 35: /* reference: REFERENCE STRING ASSOCIATION STRING */
{ add_reference(cur_chip_instance, (yyvsp[0].string), (yyvsp[-2].string)); }
break;
case 37: /* registers: REGISTER STRING EQUALS STRING */
case 36: /* registers: REGISTER STRING EQUALS STRING */
{ add_register(cur_chip_instance, (yyvsp[-2].string), (yyvsp[0].string)); }
break;
case 38: /* subsystemid: SUBSYSTEMID NUMBER NUMBER */
case 37: /* subsystemid: SUBSYSTEMID NUMBER NUMBER */
{ add_pci_subsystem_ids(cur_parent, strtol((yyvsp[-1].string), NULL, 16), strtol((yyvsp[0].string), NULL, 16), 0); }
break;
case 39: /* subsystemid: SUBSYSTEMID NUMBER NUMBER INHERIT */
case 38: /* subsystemid: SUBSYSTEMID NUMBER NUMBER INHERIT */
{ add_pci_subsystem_ids(cur_parent, strtol((yyvsp[-2].string), NULL, 16), strtol((yyvsp[-1].string), NULL, 16), 1); }
break;
case 40: /* ioapic_irq: IOAPIC_IRQ NUMBER PCIINT NUMBER */
{ add_ioapic_info(cur_parent, strtol((yyvsp[-2].string), NULL, 16), (yyvsp[-1].string), strtol((yyvsp[0].string), NULL, 16)); }
break;
case 41: /* smbios_slot_desc: SLOT_DESC STRING STRING STRING STRING */
case 39: /* smbios_slot_desc: SLOT_DESC STRING STRING STRING STRING */
{ add_slot_desc(cur_parent, (yyvsp[-3].string), (yyvsp[-2].string), (yyvsp[-1].string), (yyvsp[0].string)); }
break;
case 42: /* smbios_slot_desc: SLOT_DESC STRING STRING STRING */
case 40: /* smbios_slot_desc: SLOT_DESC STRING STRING STRING */
{ add_slot_desc(cur_parent, (yyvsp[-2].string), (yyvsp[-1].string), (yyvsp[0].string), NULL); }
break;
case 43: /* smbios_slot_desc: SLOT_DESC STRING STRING */
case 41: /* smbios_slot_desc: SLOT_DESC STRING STRING */
{ add_slot_desc(cur_parent, (yyvsp[-1].string), (yyvsp[0].string), NULL, NULL); }
break;
case 44: /* smbios_dev_info: SMBIOS_DEV_INFO NUMBER STRING */
case 42: /* smbios_dev_info: SMBIOS_DEV_INFO NUMBER STRING */
{ add_smbios_dev_info(cur_parent, strtol((yyvsp[-1].string), NULL, 0), (yyvsp[0].string)); }
break;
case 45: /* smbios_dev_info: SMBIOS_DEV_INFO NUMBER */
case 43: /* smbios_dev_info: SMBIOS_DEV_INFO NUMBER */
{ add_smbios_dev_info(cur_parent, strtol((yyvsp[0].string), NULL, 0), NULL); }
break;
case 46: /* fw_config_table: FW_CONFIG_TABLE fw_config_table_children END */
case 44: /* fw_config_table: FW_CONFIG_TABLE fw_config_table_children END */
{ }
break;
case 51: /* fw_config_field_bits: NUMBER NUMBER */
case 49: /* fw_config_field_bits: NUMBER NUMBER */
{
append_fw_config_bits(&cur_bits, strtoul((yyvsp[-1].string), NULL, 0), strtoul((yyvsp[0].string), NULL, 0));
}
break;
case 54: /* $@4: %empty */
case 52: /* $@4: %empty */
{ cur_field = new_fw_config_field((yyvsp[-2].string), cur_bits); }
break;
case 55: /* fw_config_field: FW_CONFIG_FIELD STRING fw_config_field_bits fw_config_field_bits_repeating $@4 fw_config_field_children END */
case 53: /* fw_config_field: FW_CONFIG_FIELD STRING fw_config_field_bits fw_config_field_bits_repeating $@4 fw_config_field_children END */
{ cur_bits = NULL; }
break;
case 56: /* $@5: %empty */
case 54: /* $@5: %empty */
{
cur_bits = NULL;
append_fw_config_bits(&cur_bits, strtoul((yyvsp[0].string), NULL, 0), strtoul((yyvsp[0].string), NULL, 0));
@@ -1352,29 +1339,29 @@ yyreduce:
}
break;
case 57: /* fw_config_field: FW_CONFIG_FIELD STRING NUMBER $@5 fw_config_field_children END */
case 55: /* fw_config_field: FW_CONFIG_FIELD STRING NUMBER $@5 fw_config_field_children END */
{ cur_bits = NULL; }
break;
case 58: /* $@6: %empty */
case 56: /* $@6: %empty */
{
cur_field = get_fw_config_field((yyvsp[0].string));
}
break;
case 59: /* fw_config_field: FW_CONFIG_FIELD STRING $@6 fw_config_field_children END */
case 57: /* fw_config_field: FW_CONFIG_FIELD STRING $@6 fw_config_field_children END */
{ cur_bits = NULL; }
break;
case 60: /* fw_config_option: FW_CONFIG_OPTION STRING NUMBER */
case 58: /* fw_config_option: FW_CONFIG_OPTION STRING NUMBER */
{ add_fw_config_option(cur_field, (yyvsp[-1].string), strtoull((yyvsp[0].string), NULL, 0)); }
break;
case 61: /* fw_config_probe: FW_CONFIG_PROBE STRING STRING */
case 59: /* fw_config_probe: FW_CONFIG_PROBE STRING STRING */
{ add_fw_config_probe(cur_parent, (yyvsp[-1].string), (yyvsp[0].string)); }
break;
case 62: /* ops: OPS STRING */
case 60: /* ops: OPS STRING */
{ add_device_ops(cur_parent, (yyvsp[0].string)); }
break;