Michael Niewöhner has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/35294 )
Change subject: superio/common: fix generic ssdt ......................................................................
superio/common: fix generic ssdt
ITR2 is specified twice here, which leads to the following error message in Linux: [ 0.263591] ACPI BIOS Error (bug): Failure creating named object [_SB.PCI0.LPCB.SIO0.ITR2], AE_ALREADY_EXISTS (20190509/dsfield-633)
By comparing multiple dsdt/ssdt's I was able to guess how this (hopefully) should look like instead.
WARNING: This is based on a guess! Please verify this! Change-Id: I4f3307d0992fcf5ad192f412c2bd15d02572a6b0 Signed-off-by: Michael Niewöhner foss@mniewoehner.de --- M src/superio/common/generic.c 1 file changed, 2 insertions(+), 4 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/94/35294/1
diff --git a/src/superio/common/generic.c b/src/superio/common/generic.c index bffa9f3..1f8063f 100644 --- a/src/superio/common/generic.c +++ b/src/superio/common/generic.c @@ -115,11 +115,9 @@ FIELDLIST_OFFSET(0x70), FIELDLIST_NAMESTR("INTR", 4), FIELDLIST_OFFSET(0x71), - FIELDLIST_NAMESTR("INTT", 2), + FIELDLIST_NAMESTR("INTT", 4), FIELDLIST_OFFSET(0x72), - FIELDLIST_NAMESTR("ITR2", 4), - FIELDLIST_OFFSET(0x73), - FIELDLIST_NAMESTR("ITR2", 2), + FIELDLIST_NAMESTR("INT1", 8), FIELDLIST_OFFSET(0x74), FIELDLIST_NAMESTR("DMCH", 8), FIELDLIST_OFFSET(0xE0),
Felix Held has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/35294 )
Change subject: superio/common: fix generic ssdt ......................................................................
Patch Set 1: Code-Review-1
(1 comment)
there is indeed a bug in the code, but I don't think that this patch is the proper fix in the current state. See chapter A.3.3. of the ISA PNP spec v 1.0a
https://review.coreboot.org/c/coreboot/+/35294/1/src/superio/common/generic.... File src/superio/common/generic.c:
https://review.coreboot.org/c/coreboot/+/35294/1/src/superio/common/generic.... PS1, Line 122: ITR2 this should probably be something like ITT2 (or rather this and the one before with a 1 instead of a 2, since this is 0-indexed in the coreboot SIO code)
Patrick Rudolph has uploaded a new patch set (#2) to the change originally created by Michael Niewöhner. ( https://review.coreboot.org/c/coreboot/+/35294 )
Change subject: superio/common: fix regression in ssdt ......................................................................
superio/common: fix regression in ssdt
ITR2 is specified twice here, which leads to the following error message in Linux: [ 0.263591] ACPI BIOS Error (bug): Failure creating named object [_SB.PCI0.LPCB.SIO0.ITR2], AE_ALREADY_EXISTS (20190509/dsfield-633)
Add comments and fix duplicated field. As there are no users of this code yet, just rename the fields.
Tested on Supermicro X11SSH-TF.
Change-Id: I4f3307d0992fcf5ad192f412c2bd15d02572a6b0 Signed-off-by: Michael Niewöhner foss@mniewoehner.de Signed-off-by: Patrick Rudolph patrick.rudolph@9elements.com --- M src/superio/common/generic.c 1 file changed, 8 insertions(+), 4 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/94/35294/2
Felix Held has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/35294 )
Change subject: superio/common: fix regression in ssdt ......................................................................
Patch Set 2:
(2 comments)
https://review.coreboot.org/c/coreboot/+/35294/2/src/superio/common/generic.... File src/superio/common/generic.c:
https://review.coreboot.org/c/coreboot/+/35294/2/src/superio/common/generic.... PS2, Line 116: level even though the spec call this level; i'd rather call this number, since it's effectively the irq number
https://review.coreboot.org/c/coreboot/+/35294/2/src/superio/common/generic.... PS2, Line 122: level same here
Patrick Rudolph has uploaded a new patch set (#3) to the change originally created by Michael Niewöhner. ( https://review.coreboot.org/c/coreboot/+/35294 )
Change subject: superio/common: fix regression in ssdt ......................................................................
superio/common: fix regression in ssdt
ITR2 is specified twice here, which leads to the following error message in Linux: [ 0.263591] ACPI BIOS Error (bug): Failure creating named object [_SB.PCI0.LPCB.SIO0.ITR2], AE_ALREADY_EXISTS (20190509/dsfield-633)
Add comments and fix duplicated field. As there are no users of this code yet, just rename the fields.
Tested on Supermicro X11SSH-TF.
Change-Id: I4f3307d0992fcf5ad192f412c2bd15d02572a6b0 Signed-off-by: Michael Niewöhner foss@mniewoehner.de Signed-off-by: Patrick Rudolph patrick.rudolph@9elements.com --- M src/superio/common/generic.c 1 file changed, 8 insertions(+), 4 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/94/35294/3
Patrick Rudolph has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/35294 )
Change subject: superio/common: fix regression in ssdt ......................................................................
Patch Set 3:
(2 comments)
https://review.coreboot.org/c/coreboot/+/35294/2/src/superio/common/generic.... File src/superio/common/generic.c:
https://review.coreboot.org/c/coreboot/+/35294/2/src/superio/common/generic.... PS2, Line 116: level
even though the spec call this level; i'd rather call this number, since it's effectively the irq nu […]
Done
https://review.coreboot.org/c/coreboot/+/35294/2/src/superio/common/generic.... PS2, Line 122: level
same here
Done
Felix Held has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/35294 )
Change subject: superio/common: fix regression in ssdt ......................................................................
Patch Set 3: Code-Review+2
Felix Held has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/35294 )
Change subject: superio/common: fix regression in ssdt ......................................................................
Patch Set 3:
(1 comment)
https://review.coreboot.org/c/coreboot/+/35294/1/src/superio/common/generic.... File src/superio/common/generic.c:
https://review.coreboot.org/c/coreboot/+/35294/1/src/superio/common/generic.... PS1, Line 122: ITR2
this should probably be something like ITT2 (or rather this and the one before with a 1 instead of a […]
Done
Felix Held has submitted this change. ( https://review.coreboot.org/c/coreboot/+/35294 )
Change subject: superio/common: fix regression in ssdt ......................................................................
superio/common: fix regression in ssdt
ITR2 is specified twice here, which leads to the following error message in Linux: [ 0.263591] ACPI BIOS Error (bug): Failure creating named object [_SB.PCI0.LPCB.SIO0.ITR2], AE_ALREADY_EXISTS (20190509/dsfield-633)
Add comments and fix duplicated field. As there are no users of this code yet, just rename the fields.
Tested on Supermicro X11SSH-TF.
Change-Id: I4f3307d0992fcf5ad192f412c2bd15d02572a6b0 Signed-off-by: Michael Niewöhner foss@mniewoehner.de Signed-off-by: Patrick Rudolph patrick.rudolph@9elements.com Reviewed-on: https://review.coreboot.org/c/coreboot/+/35294 Reviewed-by: Felix Held felix-coreboot@felixheld.de Tested-by: build bot (Jenkins) no-reply@coreboot.org --- M src/superio/common/generic.c 1 file changed, 8 insertions(+), 4 deletions(-)
Approvals: build bot (Jenkins): Verified Felix Held: Looks good to me, approved
diff --git a/src/superio/common/generic.c b/src/superio/common/generic.c index bffa9f3..96307a3 100644 --- a/src/superio/common/generic.c +++ b/src/superio/common/generic.c @@ -113,13 +113,17 @@ FIELDLIST_NAMESTR("IOH3", 8), FIELDLIST_NAMESTR("IOL3", 8), FIELDLIST_OFFSET(0x70), - FIELDLIST_NAMESTR("INTR", 4), + /* Interrupt level 0 (IRQ number) */ + FIELDLIST_NAMESTR("ITL0", 4), FIELDLIST_OFFSET(0x71), - FIELDLIST_NAMESTR("INTT", 2), + /* Interrupt type 0 */ + FIELDLIST_NAMESTR("ITT0", 2), FIELDLIST_OFFSET(0x72), - FIELDLIST_NAMESTR("ITR2", 4), + /* Interrupt level 1 (IRQ number) */ + FIELDLIST_NAMESTR("ITL1", 4), FIELDLIST_OFFSET(0x73), - FIELDLIST_NAMESTR("ITR2", 2), + /* Interrupt type 1 */ + FIELDLIST_NAMESTR("ITT1", 2), FIELDLIST_OFFSET(0x74), FIELDLIST_NAMESTR("DMCH", 8), FIELDLIST_OFFSET(0xE0),