aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--hw/isa/lpc_ich9.c16
-rw-r--r--hw/isa/piix3.c12
2 files changed, 8 insertions, 20 deletions
diff --git a/hw/isa/lpc_ich9.c b/hw/isa/lpc_ich9.c
index 0b0a83e080..6c44cc9767 100644
--- a/hw/isa/lpc_ich9.c
+++ b/hw/isa/lpc_ich9.c
@@ -813,12 +813,13 @@ static void build_ich9_isa_aml(AcpiDevAmlIf *adev, Aml *scope)
BusChild *kid;
ICH9LPCState *s = ICH9_LPC_DEVICE(adev);
BusState *bus = BUS(s->isa_bus);
+ Aml *sb_scope = aml_scope("\\_SB");
/* ICH9 PCI to ISA irq remapping */
aml_append(scope, aml_operation_region("PIRQ", AML_PCI_CONFIG,
aml_int(0x60), 0x0C));
/* Fields declarion has to happen *after* operation region */
- field = aml_field("PIRQ", AML_BYTE_ACC, AML_NOLOCK, AML_PRESERVE);
+ field = aml_field("PCI0.SF8.PIRQ", AML_BYTE_ACC, AML_NOLOCK, AML_PRESERVE);
aml_append(field, aml_named_field("PRQA", 8));
aml_append(field, aml_named_field("PRQB", 8));
aml_append(field, aml_named_field("PRQC", 8));
@@ -828,17 +829,8 @@ static void build_ich9_isa_aml(AcpiDevAmlIf *adev, Aml *scope)
aml_append(field, aml_named_field("PRQF", 8));
aml_append(field, aml_named_field("PRQG", 8));
aml_append(field, aml_named_field("PRQH", 8));
- aml_append(scope, field);
-
- /* hack: put fields into _SB scope for LNKx to find them */
- aml_append(scope, aml_alias("PRQA", "\\_SB.PRQA"));
- aml_append(scope, aml_alias("PRQB", "\\_SB.PRQB"));
- aml_append(scope, aml_alias("PRQC", "\\_SB.PRQC"));
- aml_append(scope, aml_alias("PRQD", "\\_SB.PRQD"));
- aml_append(scope, aml_alias("PRQE", "\\_SB.PRQE"));
- aml_append(scope, aml_alias("PRQF", "\\_SB.PRQF"));
- aml_append(scope, aml_alias("PRQG", "\\_SB.PRQG"));
- aml_append(scope, aml_alias("PRQH", "\\_SB.PRQH"));
+ aml_append(sb_scope, field);
+ aml_append(scope, sb_scope);
QTAILQ_FOREACH(kid, &bus->children, sibling) {
call_dev_aml_func(DEVICE(kid->child), scope);
diff --git a/hw/isa/piix3.c b/hw/isa/piix3.c
index f9b4af5c05..eabad7ba58 100644
--- a/hw/isa/piix3.c
+++ b/hw/isa/piix3.c
@@ -318,24 +318,20 @@ static void build_pci_isa_aml(AcpiDevAmlIf *adev, Aml *scope)
{
Aml *field;
BusChild *kid;
+ Aml *sb_scope = aml_scope("\\_SB");
BusState *bus = qdev_get_child_bus(DEVICE(adev), "isa.0");
/* PIIX PCI to ISA irq remapping */
aml_append(scope, aml_operation_region("P40C", AML_PCI_CONFIG,
aml_int(0x60), 0x04));
/* Fields declarion has to happen *after* operation region */
- field = aml_field("P40C", AML_BYTE_ACC, AML_NOLOCK, AML_PRESERVE);
+ field = aml_field("PCI0.S08.P40C", AML_BYTE_ACC, AML_NOLOCK, AML_PRESERVE);
aml_append(field, aml_named_field("PRQ0", 8));
aml_append(field, aml_named_field("PRQ1", 8));
aml_append(field, aml_named_field("PRQ2", 8));
aml_append(field, aml_named_field("PRQ3", 8));
- aml_append(scope, field);
-
- /* hack: put fields into _SB scope for LNKx to find them */
- aml_append(scope, aml_alias("PRQ0", "\\_SB.PRQ0"));
- aml_append(scope, aml_alias("PRQ1", "\\_SB.PRQ1"));
- aml_append(scope, aml_alias("PRQ2", "\\_SB.PRQ2"));
- aml_append(scope, aml_alias("PRQ3", "\\_SB.PRQ3"));
+ aml_append(sb_scope, field);
+ aml_append(scope, sb_scope);
QTAILQ_FOREACH(kid, &bus->children, sibling) {
call_dev_aml_func(DEVICE(kid->child), scope);