61680274c1
broadwell: Add romstage usbdebug support Reviewed-on: https://chromium-review.googlesource.com/199412 (cherry picked from commit 1050e7d3be6ec1e4fe5aa2df408f4bb6d33a42b5) broadwell: Add romstage code to configure PCH UART for console Reviewed-on: https://chromium-review.googlesource.com/199807 (cherry picked from commit ecebda4eb5d6fe58473d25c2898ba1a2eac0f39a) broadwell: Expand the PCI device convenience macros Reviewed-on: https://chromium-review.googlesource.com/199891 (cherry picked from commit f8c54c70f136cd2cb8f977bc25661974d7e529ad) broadwell: Add ramstage driver for ADSP Reviewed-on: https://chromium-review.googlesource.com/199892 (cherry picked from commit e8e986b0ba52bbfc9923d71009fbd31e749ca43f) broadwell: Update ACPI devices Reviewed-on: https://chromium-review.googlesource.com/201080 (cherry picked from commit 2446b35578eb36e0009415bec340059135751549) broadwell: Reserve DPR region Reviewed-on: https://chromium-review.googlesource.com/201081 (cherry picked from commit 8ecd9d2096db2bded6f27ef6ee9a9b39ce2dfec6) broadwell: Remove old pei_data and add cpu function for romstage Reviewed-on: https://chromium-review.googlesource.com/201690 (cherry picked from commit d206c9cdd69519d502a90bb0595f0e3a7cb50274) broadwell: Fixes for graphics without executing VBIOS Reviewed-on: https://chromium-review.googlesource.com/202356 (cherry picked from commit 0c031df1ce92c875e95ddfd3f026f649c342c7fa) broadwell: Fix compilation failure when loglevel is lowered Reviewed-on: https://chromium-review.googlesource.com/202357 (cherry picked from commit 708ce78b2bfae5664b1238e17b086c88cac55bdc) broadwell: Disable GPIO controller interrupt Reviewed-on: https://chromium-review.googlesource.com/203645 (cherry picked from commit 2d17e98eded5958258ba5c0abf600284d8d03af9) broadwell: Add support for E0 stepping Reviewed-on: https://chromium-review.googlesource.com/205160 (cherry picked from commit 802e9d371418cc7a7fc7af131d7e5dda0ae5b273) broadwell: misc updates for CPU driver Reviewed-on: https://chromium-review.googlesource.com/205161 (cherry picked from commit ea1d403817ee193648f2c119fd45894e32e57e97) broadwell: Read power state earlier and store in romstage params Reviewed-on: https://chromium-review.googlesource.com/208151 (cherry picked from commit b2198d71084ad3c1360a0bfedc46c8dd3825bd0e) broadwell: Add parameters to pei_data structure Reviewed-on: https://chromium-review.googlesource.com/208153 (cherry picked from commit 423fbf67e497a907fbc8e12caf2929d4951858af) broadwell: Move platform report output after power state is read Reviewed-on: https://chromium-review.googlesource.com/208213 (cherry picked from commit acedf4146bf9377133433046dae1fa9c8bc69d78) Squashed 15 commits for broadwell support. Change-Id: I87e320d3d5376b84dd9c146b0b833e5ce53244aa Signed-off-by: Isaac Christensen <isaac.christensen@se-eng.com> Reviewed-on: http://review.coreboot.org/6982 Tested-by: build bot (Jenkins) Reviewed-by: Marc Jones <marc.jones@se-eng.com>
233 lines
5.4 KiB
Text
233 lines
5.4 KiB
Text
config SOC_INTEL_BROADWELL
|
|
bool
|
|
help
|
|
Intel Broadwell and Haswell ULT support.
|
|
|
|
if SOC_INTEL_BROADWELL
|
|
|
|
config CPU_SPECIFIC_OPTIONS
|
|
def_bool y
|
|
select ARCH_BOOTBLOCK_X86_32
|
|
select ARCH_ROMSTAGE_X86_32
|
|
select ARCH_RAMSTAGE_X86_32
|
|
select ALT_CBFS_LOAD_PAYLOAD
|
|
select ALWAYS_LOAD_OPROM
|
|
select BACKUP_DEFAULT_SMM_REGION
|
|
select CACHE_MRC_BIN
|
|
select CACHE_MRC_SETTINGS
|
|
select CACHE_RELOCATED_RAMSTAGE_OUTSIDE_CBMEM
|
|
select CACHE_ROM
|
|
select CAR_MIGRATION
|
|
select COLLECT_TIMESTAMPS
|
|
select CPU_INTEL_FIRMWARE_INTERFACE_TABLE
|
|
select CPU_MICROCODE_IN_CBFS
|
|
select DYNAMIC_CBMEM
|
|
select HAVE_MONOTONIC_TIMER
|
|
select HAVE_SMI_HANDLER
|
|
select HAVE_HARD_RESET
|
|
select HAVE_USBDEBUG
|
|
select IOAPIC
|
|
select MMCONF_SUPPORT
|
|
select MMCONF_SUPPORT_DEFAULT
|
|
select RELOCATABLE_MODULES
|
|
select REG_SCRIPT
|
|
select PARALLEL_MP
|
|
select PCIEXP_ASPM
|
|
select PCIEXP_COMMON_CLOCK
|
|
select SMM_MODULES
|
|
select SMM_TSEG
|
|
select SMP
|
|
select SPI_FLASH
|
|
select SSE2
|
|
select TSC_CONSTANT_RATE
|
|
select TSC_SYNC_MFENCE
|
|
select UDELAY_TSC
|
|
|
|
config BOOTBLOCK_CPU_INIT
|
|
string
|
|
default "soc/intel/broadwell/bootblock/cpu.c"
|
|
|
|
config BOOTBLOCK_NORTHBRIDGE_INIT
|
|
string
|
|
default "soc/intel/broadwell/bootblock/systemagent.c"
|
|
|
|
config BOOTBLOCK_SOUTHBRIDGE_INIT
|
|
string
|
|
default "soc/intel/broadwell/bootblock/pch.c"
|
|
|
|
config MICROCODE_INCLUDE_PATH
|
|
string
|
|
default "src/soc/intel/broadwell/microcode"
|
|
|
|
config MMCONF_BASE_ADDRESS
|
|
hex
|
|
default 0xf0000000
|
|
|
|
config SERIAL_CPU_INIT
|
|
bool
|
|
default n
|
|
|
|
config SMM_TSEG_SIZE
|
|
hex
|
|
default 0x800000
|
|
|
|
config IED_REGION_SIZE
|
|
hex
|
|
default 0x400000
|
|
|
|
config SMM_RESERVED_SIZE
|
|
hex
|
|
default 0x100000
|
|
|
|
config VGA_BIOS_ID
|
|
string
|
|
default "8086,0406"
|
|
|
|
config CACHE_MRC_SIZE_KB
|
|
int
|
|
default 512
|
|
|
|
config DCACHE_RAM_BASE
|
|
hex
|
|
default 0xff7c0000
|
|
|
|
config DCACHE_RAM_SIZE
|
|
hex
|
|
default 0x10000
|
|
help
|
|
The size of the cache-as-ram region required during bootblock
|
|
and/or romstage. Note DCACHE_RAM_SIZE and DCACHE_RAM_MRC_VAR_SIZE
|
|
must add up to a power of 2.
|
|
|
|
config DCACHE_RAM_MRC_VAR_SIZE
|
|
hex
|
|
default 0x30000
|
|
help
|
|
The amount of cache-as-ram region required by the reference code.
|
|
|
|
config DCACHE_RAM_ROMSTAGE_STACK_SIZE
|
|
hex
|
|
default 0x2000
|
|
help
|
|
The amount of anticipated stack usage from the data cache
|
|
during pre-ram rom stage execution.
|
|
|
|
config HAVE_MRC
|
|
bool "Add a Memory Reference Code binary"
|
|
help
|
|
Select this option to add a Memory Reference Code binary to
|
|
the resulting coreboot image.
|
|
|
|
Note: Without this binary coreboot will not work
|
|
|
|
if HAVE_MRC
|
|
|
|
config MRC_FILE
|
|
string "Intel Memory Reference Code path and filename"
|
|
depends on HAVE_MRC
|
|
default "mrc.bin"
|
|
help
|
|
The filename of the file to use as Memory Reference Code binary.
|
|
|
|
config MRC_BIN_ADDRESS
|
|
hex
|
|
default 0xfffa0000
|
|
|
|
config CACHE_MRC_SETTINGS
|
|
bool "Save cached MRC settings"
|
|
default y
|
|
|
|
endif # HAVE_MRC
|
|
|
|
config CBFS_SIZE
|
|
hex "Size of CBFS filesystem in ROM"
|
|
default 0x100000
|
|
help
|
|
The firmware image has to store more than just coreboot, including:
|
|
- a firmware descriptor
|
|
- Intel Management Engine firmware
|
|
- MRC cache information
|
|
This option allows to limit the size of the CBFS portion in the
|
|
firmware image.
|
|
|
|
config PRE_GRAPHICS_DELAY
|
|
int "Graphics initialization delay in ms"
|
|
default 0
|
|
help
|
|
On some systems, coreboot boots so fast that connected monitors
|
|
(mostly TVs) won't be able to wake up fast enough to talk to the
|
|
VBIOS. On those systems we need to wait for a bit before executing
|
|
the VBIOS.
|
|
|
|
config RESET_ON_INVALID_RAMSTAGE_CACHE
|
|
bool "Reset the system on S3 wake when ramstage cache invalid."
|
|
default n
|
|
depends on RELOCATABLE_RAMSTAGE
|
|
help
|
|
The romstage code caches the loaded ramstage program in SMM space.
|
|
On S3 wake the romstage will copy over a fresh ramstage that was
|
|
cached in the SMM space. This option determines the action to take
|
|
when the ramstage cache is invalid. If selected the system will
|
|
reset otherwise the ramstage will be reloaded from cbfs.
|
|
|
|
config MONOTONIC_TIMER_MSR
|
|
def_bool y
|
|
select HAVE_MONOTONIC_TIMER
|
|
help
|
|
Provide a monotonic timer using the 24MHz MSR counter.
|
|
|
|
config INTEL_PCH_UART_CONSOLE
|
|
bool "Use Serial IO UART for console"
|
|
default n
|
|
select HAVE_UART_MEMORY_MAPPED
|
|
select CONSOLE_SERIAL8250MEM
|
|
depends on !CONFIG_DRIVERS_OXFORD_OXPCIE
|
|
|
|
config INTEL_PCH_UART_CONSOLE_NUMBER
|
|
hex "Serial IO UART number to use for console"
|
|
default "0x0"
|
|
depends on INTEL_PCH_UART_CONSOLE
|
|
|
|
config TTYS0_BASE
|
|
hex
|
|
default 0xd6000000
|
|
depends on INTEL_PCH_UART_CONSOLE
|
|
|
|
config EHCI_BAR
|
|
hex
|
|
default 0xd8000000
|
|
|
|
config EHCI_DEBUG_OFFSET
|
|
hex
|
|
default 0xa0
|
|
|
|
config SERIRQ_CONTINUOUS_MODE
|
|
bool
|
|
default y
|
|
help
|
|
If you set this option to y, the serial IRQ machine will be
|
|
operated in continuous mode.
|
|
|
|
config ME_MBP_CLEAR_LATE
|
|
bool "Defer wait for ME MBP Cleared"
|
|
default y
|
|
help
|
|
If you set this option to y, the Management Engine driver
|
|
will defer waiting for the MBP Cleared indicator until the
|
|
finalize step. This can speed up boot time if the ME takes
|
|
a long time to indicate this status.
|
|
|
|
config LOCK_MANAGEMENT_ENGINE
|
|
bool "Lock Management Engine section"
|
|
default n
|
|
help
|
|
The Intel Management Engine supports preventing write accesses
|
|
from the host to the Management Engine section in the firmware
|
|
descriptor. If the ME section is locked, it can only be overwritten
|
|
with an external SPI flash programmer. You will want this if you
|
|
want to increase security of your ROM image once you are sure
|
|
that the ME firmware is no longer going to change.
|
|
|
|
If unsure, say N.
|
|
|
|
endif
|