Paolo Bonzini | 7 Aug 2012 15:01
Picon
Favicon
Gravatar

[PATCH] acpi: LNKS is not needed

LNKS is a bit strange in that it reuses the same PIIX register as LNKA,
but has a different interrupt.  This means that the _CRS it returns will
not be one of the possible resources from _PRS.  This shows up in the
Linux boot logs as

   ACPI: PCI Interrupt Link [LNKS] (IRQs 9) *0

Instead of that, we can simply use a hardwired interrupt index.

Cc: Gleb Natapov <gnatapov <at> redhat.com>
Cc: Laszlo Ersek <lersek <at> redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini <at> redhat.com>
---
 src/acpi-dsdt.dsl | 16 ++++------------
 1 file modificato, 4 inserzioni(+), 12 rimozioni(-)

diff --git a/src/acpi-dsdt.dsl b/src/acpi-dsdt.dsl
index 083e2be..66ca853 100644
--- a/src/acpi-dsdt.dsl
+++ b/src/acpi-dsdt.dsl
 <at>  <at>  -86,7 +86,10  <at>  <at>  DefinitionBlock (
 #define prt_slot3(nr) prt_slot(nr, LNKC, LNKD, LNKA, LNKB)
                prt_slot0(0x0000),
                /* Device 1 is power mgmt device, and can only use irq 9 */
-               prt_slot(0x0001, LNKS, LNKB, LNKC, LNKD),
+               Package() { 0x1ffff, 0,    0, 9 },
+               Package() { 0x1ffff, 1, LNKB, 0 },
+               Package() { 0x1ffff, 2, LNKC, 0 },
+               Package() { 0x1ffff, 3, LNKD, 0 }
                prt_slot2(0x0002),
(Continue reading)

Laszlo Ersek | 7 Aug 2012 15:11
Picon
Favicon

Re: [PATCH] acpi: LNKS is not needed

On 08/07/12 15:01, Paolo Bonzini wrote:
> LNKS is a bit strange in that it reuses the same PIIX register as LNKA,
> but has a different interrupt.  This means that the _CRS it returns will
> not be one of the possible resources from _PRS.  This shows up in the
> Linux boot logs as
> 
>    ACPI: PCI Interrupt Link [LNKS] (IRQs 9) *0
> 
> Instead of that, we can simply use a hardwired interrupt index.
> 
> Cc: Gleb Natapov <gnatapov <at> redhat.com>
> Cc: Laszlo Ersek <lersek <at> redhat.com>
> Signed-off-by: Paolo Bonzini <pbonzini <at> redhat.com>
> ---
>  src/acpi-dsdt.dsl | 16 ++++------------
>  1 file modificato, 4 inserzioni(+), 12 rimozioni(-)
> 
> diff --git a/src/acpi-dsdt.dsl b/src/acpi-dsdt.dsl
> index 083e2be..66ca853 100644
> --- a/src/acpi-dsdt.dsl
> +++ b/src/acpi-dsdt.dsl
>  <at>  <at>  -86,7 +86,10  <at>  <at>  DefinitionBlock (
>  #define prt_slot3(nr) prt_slot(nr, LNKC, LNKD, LNKA, LNKB)
>                 prt_slot0(0x0000),
>                 /* Device 1 is power mgmt device, and can only use irq 9 */
> -               prt_slot(0x0001, LNKS, LNKB, LNKC, LNKD),
> +               Package() { 0x1ffff, 0,    0, 9 },
> +               Package() { 0x1ffff, 1, LNKB, 0 },
> +               Package() { 0x1ffff, 2, LNKC, 0 },
> +               Package() { 0x1ffff, 3, LNKD, 0 }
(Continue reading)

Gleb Natapov | 7 Aug 2012 15:39
Picon
Favicon

Re: [PATCH] acpi: LNKS is not needed

On Tue, Aug 07, 2012 at 03:01:29PM +0200, Paolo Bonzini wrote:
> LNKS is a bit strange in that it reuses the same PIIX register as LNKA,
> but has a different interrupt.  This means that the _CRS it returns will
> not be one of the possible resources from _PRS.  This shows up in the
> Linux boot logs as
> 
>    ACPI: PCI Interrupt Link [LNKS] (IRQs 9) *0
> 
> Instead of that, we can simply use a hardwired interrupt index.
> 
> Cc: Gleb Natapov <gnatapov <at> redhat.com>
> Cc: Laszlo Ersek <lersek <at> redhat.com>
> Signed-off-by: Paolo Bonzini <pbonzini <at> redhat.com>
Looks good to me.

> ---
>  src/acpi-dsdt.dsl | 16 ++++------------
>  1 file modificato, 4 inserzioni(+), 12 rimozioni(-)
> 
> diff --git a/src/acpi-dsdt.dsl b/src/acpi-dsdt.dsl
> index 083e2be..66ca853 100644
> --- a/src/acpi-dsdt.dsl
> +++ b/src/acpi-dsdt.dsl
>  <at>  <at>  -86,7 +86,10  <at>  <at>  DefinitionBlock (
>  #define prt_slot3(nr) prt_slot(nr, LNKC, LNKD, LNKA, LNKB)
>                 prt_slot0(0x0000),
>                 /* Device 1 is power mgmt device, and can only use irq 9 */
> -               prt_slot(0x0001, LNKS, LNKB, LNKC, LNKD),
> +               Package() { 0x1ffff, 0,    0, 9 },
> +               Package() { 0x1ffff, 1, LNKB, 0 },
(Continue reading)

Kevin O'Connor | 13 Aug 2012 02:36

Re: [PATCH] acpi: LNKS is not needed

On Tue, Aug 07, 2012 at 03:01:29PM +0200, Paolo Bonzini wrote:
> LNKS is a bit strange in that it reuses the same PIIX register as LNKA,
> but has a different interrupt.  This means that the _CRS it returns will
> not be one of the possible resources from _PRS.  This shows up in the
> Linux boot logs as
> 
>    ACPI: PCI Interrupt Link [LNKS] (IRQs 9) *0
> 
> Instead of that, we can simply use a hardwired interrupt index.
> 
> Cc: Gleb Natapov <gnatapov <at> redhat.com>
> Cc: Laszlo Ersek <lersek <at> redhat.com>
> Signed-off-by: Paolo Bonzini <pbonzini <at> redhat.com>
> ---
>  src/acpi-dsdt.dsl | 16 ++++------------
>  1 file modificato, 4 inserzioni(+), 12 rimozioni(-)
> 
> diff --git a/src/acpi-dsdt.dsl b/src/acpi-dsdt.dsl
> index 083e2be..66ca853 100644
> --- a/src/acpi-dsdt.dsl
> +++ b/src/acpi-dsdt.dsl
>  <at>  <at>  -86,7 +86,10  <at>  <at>  DefinitionBlock (
>  #define prt_slot3(nr) prt_slot(nr, LNKC, LNKD, LNKA, LNKB)
>                 prt_slot0(0x0000),
>                 /* Device 1 is power mgmt device, and can only use irq 9 */
> -               prt_slot(0x0001, LNKS, LNKB, LNKC, LNKD),
> +               Package() { 0x1ffff, 0,    0, 9 },
> +               Package() { 0x1ffff, 1, LNKB, 0 },
> +               Package() { 0x1ffff, 2, LNKC, 0 },
> +               Package() { 0x1ffff, 3, LNKD, 0 }
(Continue reading)

Kevin O'Connor | 2 Sep 2012 22:30

Re: [PATCH] acpi: LNKS is not needed

On Tue, Aug 07, 2012 at 03:01:29PM +0200, Paolo Bonzini wrote:
> LNKS is a bit strange in that it reuses the same PIIX register as LNKA,
> but has a different interrupt.  This means that the _CRS it returns will
> not be one of the possible resources from _PRS.  This shows up in the
> Linux boot logs as
> 
>    ACPI: PCI Interrupt Link [LNKS] (IRQs 9) *0
> 
> Instead of that, we can simply use a hardwired interrupt index.

I fixed the missing comma and committed this patch.

-Kevin

Gmane