summaryrefslogtreecommitdiff
path: root/src/vendorcode
diff options
context:
space:
mode:
authorPatrick Rudolph <siro@das-labor.org>2015-10-15 11:09:15 +0200
committerStefan Reinauer <stefan.reinauer@coreboot.org>2016-02-18 01:40:07 +0100
commite4f9d5c70ae3396a0005de7ea10709e74f003980 (patch)
treee0ee022d7c91964a55f01b4d0339c8688457c130 /src/vendorcode
parent801471436efd7cfa4cefc7af40c6db015e49a450 (diff)
downloadcoreboot-e4f9d5c70ae3396a0005de7ea10709e74f003980.tar.xz
nb/intel/sandybridge: Start PEG link training
Issue observed: The PCIe Root port shows up in GNU/Linux but no PCIe device is being detected. Test system: * Gigabyte GA-B75M-D3H (Intel Pentium CPU G2130) * Lenovo T530 (Intel Core i5-3320M CPU) Problem description: The PEG Root port link training on Ivy Bridge needs to be manually started. Problem solution: The bits are set in early_init to meet PCIe reset timeout of 100msec. The bits should be set in PCI device enable function, but this causes the PCI enumeration to not detect the card, as it's still booting. Adding a fixed delay of 100msec resolves this problem, but this would increase boot time. Read the PCI base revision mask to make sure it's any IvyBridge CPU. Don't run the code on MRC path as it has its own PEG initilization code. Tested with: * Nvidia NVS 5400M (PCIe2) * ATI Radeon HD4780 (PCIe2) * Nvidia GeForce 8600 GT (PCIe1) Untested: * PCIe3 devices Final test results: The PEG device shows up under GNU/Linux and can be used without issues. Change-Id: Id8cfc43e5c4630b0ac217d98bb857c3308e6015b Signed-off-by: Patrick Rudolph <siro@das-labor.org> Reviewed-on: https://review.coreboot.org/11917 Tested-by: build bot (Jenkins) Reviewed-by: Martin Roth <martinroth@google.com>
Diffstat (limited to 'src/vendorcode')
0 files changed, 0 insertions, 0 deletions