Project

General

Profile

Actions

Bug #78

closed

Skylake ramstage crashes if CONFIG_RELOCATABLE_RAMSTAGE is selected

Added by Trammell Hudson about 8 years ago. Updated over 7 years ago.

Status:
Rejected
Priority:
Normal
Assignee:
-
Category:
board support
Target version:
-
Start date:
10/06/2016
Due date:
% Done:

0%

Estimated time:
Affected versions:
Needs backport to:
Affected hardware:
Affected OS:

Description

As discussed on the mailing list: https://www.coreboot.org/pipermail/coreboot/2016-October/082121.html

Skylake (the Chell Chromebook) reboots following the LGDT instruction in the ramstage entry if it is built as relocatable.

CBFS: 'Master Header Locator' located CBFS at [a00100:ffffc0)
CBFS: Locating 'fallback/ramstage'
CBFS: Found @ offset afc0 size 12e29
Decompressing stage fallback/ramstage @ 0x7abbffc0 (743408 bytes)
Loading module at 7abc0000/7abc0000 with entry 7abc0000. filesize: 0x28d88 memsize: 0xb57b0
Processing 2472 relocs. Offset value of 0x7aac0000
src/arch/x86/boot.c:223: jumping to 7abc0000

(and then it crashes, asserting LPC reset and rebooting)

Aaron Durbin suggested disabling CONFIG_RELOCATABLE_RAMSTAGE, but CONFIG_SOC_INTEL_SKYLAKE forces the relocatable ramstage flag. I've modified src/soc/intel/skylake/Kconfig to not select it and now coreboot makes it all the way into the Linux payload. By adding the i915 framebuffer driver to the Linux kernel, it is able to bring up the console in a miniscule font! https://www.flickr.com/photos/osr/30026718432/in/photostream/lightbox/

Actions

Also available in: Atom PDF