From 31d7276fbdca67937bcdf0d5c2af371a2fd1a510 Mon Sep 17 00:00:00 2001 From: Kenji Chen Date: Tue, 30 Sep 2014 14:17:35 +0800 Subject: [PATCH] Broadwell: Fix PCIe L1 Sub-State capability ID not filled. BUG=chrome-os-partner:31424,chromeos-os-partner:32380 TEST=Build a BIOS image and check the value is applied correctly. Signed-off-by: Kenji Chen Change-Id: I0adda3643776b259a635a021babd983090f1df43 Reviewed-on: https://chromium-review.googlesource.com/220475 Reviewed-by: Duncan Laurie --- src/soc/intel/broadwell/pcie.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/soc/intel/broadwell/pcie.c b/src/soc/intel/broadwell/pcie.c index 5699027d82..bccb2c47c6 100644 --- a/src/soc/intel/broadwell/pcie.c +++ b/src/soc/intel/broadwell/pcie.c @@ -558,9 +558,12 @@ static void pch_pcie_early(struct device *dev) pcie_update_cfg8(dev, 0xf5, 0x0f, 0); - /* Set Extended Capability to offset 200h and Advanced Error Report. */ + /* Set AER Extended Cap ID to 01h and Next Cap Pointer to 200h. */ pcie_update_cfg(dev, 0x100, ~(1 << 29) & ~0xfffff, (1 << 29) | 0x10001); + /* Set L1 Sub-State Cap ID to 1Eh and Next Cap Pointer to None. */ + pcie_update_cfg(dev, 0x200, ~0xffff, 0x001e); + pcie_update_cfg(dev, 0x320, ~(3 << 20) & ~(7 << 6), (1 << 20) | (3 << 6)); /* Enable Relaxed Order from Root Port. */