broadwell: Remove XHCI workarounds on WPT
The workarounds in ACPI methods for D0/D3 transition that are used on haswell/LPT do not all apply to broadwell/WPT. BUG=chrome-os-partner:28234 BRANCH=broadwell TEST=build and boot on samus, test USB functionality and wake and ensure the device still does into D3 state Change-Id: Ic3a75f5bf50e826ade7d942b48cfebb75cf976e6 Signed-off-by: Stefan Reinauer <reinauer@chromium.org> Original-Commit-Id: 1b54d105957ee80ca34048c42fb8f241731281cf Original-Change-Id: I877afd51fc6c9b7906e923b893fc31bdf2cd1090 Original-Signed-off-by: Duncan Laurie <dlaurie@chromium.org> Original-Reviewed-on: https://chromium-review.googlesource.com/240850 Original-Reviewed-by: Shawn N <shawnn@chromium.org> Reviewed-on: http://review.coreboot.org/9488 Tested-by: build bot (Jenkins) Reviewed-by: Patrick Georgi <pgeorgi@google.com>
This commit is contained in:
parent
b8a7b71e61
commit
cf544ac1f9
|
@ -35,6 +35,14 @@ Device (XHCI)
|
||||||
Offset (0x10),
|
Offset (0x10),
|
||||||
, 16,
|
, 16,
|
||||||
XMEM, 16, // MEM_BASE
|
XMEM, 16, // MEM_BASE
|
||||||
|
Offset (0x40),
|
||||||
|
, 11,
|
||||||
|
SWAI, 1,
|
||||||
|
, 20,
|
||||||
|
Offset (0x44),
|
||||||
|
, 12,
|
||||||
|
SAIP, 2,
|
||||||
|
, 18,
|
||||||
Offset (0x74),
|
Offset (0x74),
|
||||||
D0D3, 2,
|
D0D3, 2,
|
||||||
, 6,
|
, 6,
|
||||||
|
@ -242,22 +250,30 @@ Device (XHCI)
|
||||||
Store (0, ^D0D3)
|
Store (0, ^D0D3)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Clear PCI 0xB0[14:13]
|
if (LNot (\ISWP())) {
|
||||||
Store (0, ^MB13)
|
// Clear PCI 0xB0[14:13]
|
||||||
Store (0, ^MB14)
|
Store (0, ^MB13)
|
||||||
|
Store (0, ^MB14)
|
||||||
|
|
||||||
// Clear MMIO 0x816C[14,2]
|
// Clear MMIO 0x816C[14,2]
|
||||||
Store (0, CLK0)
|
Store (0, CLK0)
|
||||||
Store (0, CLK1)
|
Store (0, CLK1)
|
||||||
|
|
||||||
// Set MMIO 0x8154[31]
|
// Set MMIO 0x8154[31]
|
||||||
Store (1, CLK2)
|
Store (1, CLK2)
|
||||||
|
|
||||||
// Handle per-port reset if needed
|
// Handle per-port reset if needed
|
||||||
LPS0 ()
|
LPS0 ()
|
||||||
|
|
||||||
// Set MMIO 0x80e0[15]
|
// Set MMIO 0x80e0[15]
|
||||||
Store (1, AX15)
|
Store (1, AX15)
|
||||||
|
|
||||||
|
// Clear PCI CFG offset 0x40[11]
|
||||||
|
Store (0, ^SWAI)
|
||||||
|
|
||||||
|
// Clear PCI CFG offset 0x44[13:12]
|
||||||
|
Store (0, ^SAIP)
|
||||||
|
}
|
||||||
|
|
||||||
Return ()
|
Return ()
|
||||||
}
|
}
|
||||||
|
@ -297,19 +313,27 @@ Device (XHCI)
|
||||||
Store (0, ^D0D3)
|
Store (0, ^D0D3)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Set PCI 0xB0[14:13]
|
if (LNot (\ISWP())) {
|
||||||
Store (1, ^MB13)
|
// Set PCI 0xB0[14:13]
|
||||||
Store (1, ^MB14)
|
Store (1, ^MB13)
|
||||||
|
Store (1, ^MB14)
|
||||||
|
|
||||||
// Set MMIO 0x816C[14,2]
|
// Set MMIO 0x816C[14,2]
|
||||||
Store (1, CLK0)
|
Store (1, CLK0)
|
||||||
Store (1, CLK1)
|
Store (1, CLK1)
|
||||||
|
|
||||||
// Clear MMIO 0x8154[31]
|
// Clear MMIO 0x8154[31]
|
||||||
Store (0, CLK2)
|
Store (0, CLK2)
|
||||||
|
|
||||||
// Clear MMIO 0x80e0[15]
|
// Clear MMIO 0x80e0[15]
|
||||||
Store (0, AX15)
|
Store (0, AX15)
|
||||||
|
|
||||||
|
// Set PCI CFG offset 0x40[11]
|
||||||
|
Store (1, ^SWAI)
|
||||||
|
|
||||||
|
// Set PCI CFG offset 0x44[13:12]
|
||||||
|
Store (1, ^SAIP)
|
||||||
|
}
|
||||||
|
|
||||||
// Put device in D3
|
// Put device in D3
|
||||||
Store (3, ^D0D3)
|
Store (3, ^D0D3)
|
||||||
|
|
Loading…
Reference in New Issue