Message ID | 1457869229-9989-1-git-send-email-marcel@redhat.com |
---|---|
State | New |
Headers | show |
On Sun, 13 Mar 2016 13:40:29 +0200 Marcel Apfelbaum <marcel@redhat.com> wrote: > According to the ACPI spec, each UID must be unique. > Use the irq number as UID for GSI links. > > Suggested-by: Michael S. Tsirkin <mst@redhat.com> > Signed-off-by: Marcel Apfelbaum <marcel@redhat.com> > --- > > Hi, > > This patch was tested with Windows XP/2003/2012R2/7/10 and Fedora. tested it with RHEL6/7 Reviewed-by: Igor Mammedov <imammedo@redhat.com> > > Thanks, > Marcel > > hw/i386/acpi-build.c | 20 ++++++++------------ > 1 file changed, 8 insertions(+), 12 deletions(-) > > diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c > index adbf354..83e031d 100644 > --- a/hw/i386/acpi-build.c > +++ b/hw/i386/acpi-build.c > @@ -1748,18 +1748,14 @@ static void build_q35_pci0_int(Aml *table) > aml_append(sb_scope, build_link_dev("LNKG", 6, aml_name("PRQG"))); > aml_append(sb_scope, build_link_dev("LNKH", 7, aml_name("PRQH"))); > > - /* > - * TODO: UID probably shouldn't be the same for GSIx devices > - * but that's how it was in original ASL so keep it for now > - */ > - aml_append(sb_scope, build_gsi_link_dev("GSIA", 0, 0x10)); > - aml_append(sb_scope, build_gsi_link_dev("GSIB", 0, 0x11)); > - aml_append(sb_scope, build_gsi_link_dev("GSIC", 0, 0x12)); > - aml_append(sb_scope, build_gsi_link_dev("GSID", 0, 0x13)); > - aml_append(sb_scope, build_gsi_link_dev("GSIE", 0, 0x14)); > - aml_append(sb_scope, build_gsi_link_dev("GSIF", 0, 0x15)); > - aml_append(sb_scope, build_gsi_link_dev("GSIG", 0, 0x16)); > - aml_append(sb_scope, build_gsi_link_dev("GSIH", 0, 0x17)); > + aml_append(sb_scope, build_gsi_link_dev("GSIA", 0x10, 0x10)); > + aml_append(sb_scope, build_gsi_link_dev("GSIB", 0x11, 0x11)); > + aml_append(sb_scope, build_gsi_link_dev("GSIC", 0x12, 0x12)); > + aml_append(sb_scope, build_gsi_link_dev("GSID", 0x13, 0x13)); > + aml_append(sb_scope, build_gsi_link_dev("GSIE", 0x14, 0x14)); > + aml_append(sb_scope, build_gsi_link_dev("GSIF", 0x15, 0x15)); > + aml_append(sb_scope, build_gsi_link_dev("GSIG", 0x16, 0x16)); > + aml_append(sb_scope, build_gsi_link_dev("GSIH", 0x17, 0x17)); > > aml_append(table, sb_scope); > }
On 13/03/2016 12:40, Marcel Apfelbaum wrote: > According to the ACPI spec, each UID must be unique. > Use the irq number as UID for GSI links. > > Suggested-by: Michael S. Tsirkin <mst@redhat.com> > Signed-off-by: Marcel Apfelbaum <marcel@redhat.com> This causes a warning from acpi-test. The diff is 2720c2720 < Name (_UID, Zero) // _UID: Unique ID --- > Name (_UID, 0x10) // _UID: Unique ID 2747c2747 < Name (_UID, Zero) // _UID: Unique ID --- > Name (_UID, 0x11) // _UID: Unique ID 2774c2774 < Name (_UID, Zero) // _UID: Unique ID --- > Name (_UID, 0x12) // _UID: Unique ID 2801c2801 < Name (_UID, Zero) // _UID: Unique ID --- > Name (_UID, 0x13) // _UID: Unique ID 2828c2828 < Name (_UID, Zero) // _UID: Unique ID --- > Name (_UID, 0x14) // _UID: Unique ID 2855c2855 < Name (_UID, Zero) // _UID: Unique ID --- > Name (_UID, 0x15) // _UID: Unique ID 2882c2882 < Name (_UID, Zero) // _UID: Unique ID --- > Name (_UID, 0x16) // _UID: Unique ID 2909c2909 < Name (_UID, Zero) // _UID: Unique ID --- > Name (_UID, 0x17) // _UID: Unique ID I think you should have updated tests/acpi-test-data. Paolo
On 03/15/2016 07:27 PM, Paolo Bonzini wrote: > > > On 13/03/2016 12:40, Marcel Apfelbaum wrote: >> According to the ACPI spec, each UID must be unique. >> Use the irq number as UID for GSI links. >> >> Suggested-by: Michael S. Tsirkin <mst@redhat.com> >> Signed-off-by: Marcel Apfelbaum <marcel@redhat.com> > > This causes a warning from acpi-test. The diff is > > 2720c2720 > < Name (_UID, Zero) // _UID: Unique ID > --- >> Name (_UID, 0x10) // _UID: Unique ID > 2747c2747 > < Name (_UID, Zero) // _UID: Unique ID > --- >> Name (_UID, 0x11) // _UID: Unique ID > 2774c2774 > < Name (_UID, Zero) // _UID: Unique ID > --- >> Name (_UID, 0x12) // _UID: Unique ID > 2801c2801 > < Name (_UID, Zero) // _UID: Unique ID > --- >> Name (_UID, 0x13) // _UID: Unique ID > 2828c2828 > < Name (_UID, Zero) // _UID: Unique ID > --- >> Name (_UID, 0x14) // _UID: Unique ID > 2855c2855 > < Name (_UID, Zero) // _UID: Unique ID > --- >> Name (_UID, 0x15) // _UID: Unique ID > 2882c2882 > < Name (_UID, Zero) // _UID: Unique ID > --- >> Name (_UID, 0x16) // _UID: Unique ID > 2909c2909 > < Name (_UID, Zero) // _UID: Unique ID > --- >> Name (_UID, 0x17) // _UID: Unique ID > > I think you should have updated tests/acpi-test-data. Thanks Paolo, you are right. I am "used to" Michael updating the test data on his pull request. I can send an update myself, it will have to wait a few days. Thanks, Marcel > > Paolo >
On Wed, Mar 16, 2016 at 02:17:04PM +0200, Marcel Apfelbaum wrote: > On 03/15/2016 07:27 PM, Paolo Bonzini wrote: > > > > > >On 13/03/2016 12:40, Marcel Apfelbaum wrote: > >>According to the ACPI spec, each UID must be unique. > >>Use the irq number as UID for GSI links. > >> > >>Suggested-by: Michael S. Tsirkin <mst@redhat.com> > >>Signed-off-by: Marcel Apfelbaum <marcel@redhat.com> > > > >This causes a warning from acpi-test. The diff is > > > >2720c2720 > >< Name (_UID, Zero) // _UID: Unique ID > >--- > >> Name (_UID, 0x10) // _UID: Unique ID > >2747c2747 > >< Name (_UID, Zero) // _UID: Unique ID > >--- > >> Name (_UID, 0x11) // _UID: Unique ID > >2774c2774 > >< Name (_UID, Zero) // _UID: Unique ID > >--- > >> Name (_UID, 0x12) // _UID: Unique ID > >2801c2801 > >< Name (_UID, Zero) // _UID: Unique ID > >--- > >> Name (_UID, 0x13) // _UID: Unique ID > >2828c2828 > >< Name (_UID, Zero) // _UID: Unique ID > >--- > >> Name (_UID, 0x14) // _UID: Unique ID > >2855c2855 > >< Name (_UID, Zero) // _UID: Unique ID > >--- > >> Name (_UID, 0x15) // _UID: Unique ID > >2882c2882 > >< Name (_UID, Zero) // _UID: Unique ID > >--- > >> Name (_UID, 0x16) // _UID: Unique ID > >2909c2909 > >< Name (_UID, Zero) // _UID: Unique ID > >--- > >> Name (_UID, 0x17) // _UID: Unique ID > > > >I think you should have updated tests/acpi-test-data. > > Thanks Paolo, you are right. > > I am "used to" Michael updating the test data on his pull request. > I can send an update myself, it will have to wait a few days. > > Thanks, > Marcel > > > > >Paolo > > True, I forgot to include this in the pull request. Fixed, upstream is fine now. Thanks for the reminder!
diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c index adbf354..83e031d 100644 --- a/hw/i386/acpi-build.c +++ b/hw/i386/acpi-build.c @@ -1748,18 +1748,14 @@ static void build_q35_pci0_int(Aml *table) aml_append(sb_scope, build_link_dev("LNKG", 6, aml_name("PRQG"))); aml_append(sb_scope, build_link_dev("LNKH", 7, aml_name("PRQH"))); - /* - * TODO: UID probably shouldn't be the same for GSIx devices - * but that's how it was in original ASL so keep it for now - */ - aml_append(sb_scope, build_gsi_link_dev("GSIA", 0, 0x10)); - aml_append(sb_scope, build_gsi_link_dev("GSIB", 0, 0x11)); - aml_append(sb_scope, build_gsi_link_dev("GSIC", 0, 0x12)); - aml_append(sb_scope, build_gsi_link_dev("GSID", 0, 0x13)); - aml_append(sb_scope, build_gsi_link_dev("GSIE", 0, 0x14)); - aml_append(sb_scope, build_gsi_link_dev("GSIF", 0, 0x15)); - aml_append(sb_scope, build_gsi_link_dev("GSIG", 0, 0x16)); - aml_append(sb_scope, build_gsi_link_dev("GSIH", 0, 0x17)); + aml_append(sb_scope, build_gsi_link_dev("GSIA", 0x10, 0x10)); + aml_append(sb_scope, build_gsi_link_dev("GSIB", 0x11, 0x11)); + aml_append(sb_scope, build_gsi_link_dev("GSIC", 0x12, 0x12)); + aml_append(sb_scope, build_gsi_link_dev("GSID", 0x13, 0x13)); + aml_append(sb_scope, build_gsi_link_dev("GSIE", 0x14, 0x14)); + aml_append(sb_scope, build_gsi_link_dev("GSIF", 0x15, 0x15)); + aml_append(sb_scope, build_gsi_link_dev("GSIG", 0x16, 0x16)); + aml_append(sb_scope, build_gsi_link_dev("GSIH", 0x17, 0x17)); aml_append(table, sb_scope); }
According to the ACPI spec, each UID must be unique. Use the irq number as UID for GSI links. Suggested-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Marcel Apfelbaum <marcel@redhat.com> --- Hi, This patch was tested with Windows XP/2003/2012R2/7/10 and Fedora. Thanks, Marcel hw/i386/acpi-build.c | 20 ++++++++------------ 1 file changed, 8 insertions(+), 12 deletions(-)