mb/google/nissa/var/rull: add ssd timing and modify ssd GPIO pins of rtd3
[coreboot2.git] / src / northbridge / intel / haswell / Kconfig
blob35403373e79868eb4a5b151c9b5b72a446e0b62b
1 # SPDX-License-Identifier: GPL-2.0-only
3 config NORTHBRIDGE_INTEL_HASWELL
4         bool
5         select CPU_INTEL_HASWELL
6         select CACHE_MRC_SETTINGS
7         select INTEL_DDI
8         select INTEL_GMA_ACPI
9         select USE_DDR3
11 if NORTHBRIDGE_INTEL_HASWELL
13 config USE_NATIVE_RAMINIT
14         bool "[NOT WORKING] Use native raminit"
15         default n
16         select HAVE_DEBUG_RAM_SETUP
17         help
18           Select if you want to use coreboot implementation of raminit rather than
19           MRC.bin. Currently incomplete and does not boot.
21 config HASWELL_VBOOT_IN_BOOTBLOCK
22         depends on VBOOT
23         bool "Start verstage in bootblock"
24         default y
25         select VBOOT_STARTS_IN_BOOTBLOCK
26         help
27           Haswell can either start verstage in a separate stage
28           right after the bootblock has run or it can start it
29           after romstage for compatibility reasons.
30           Haswell however uses a mrc.bin to initialize memory which
31           needs to be located at a fixed offset. Therefore even with
32           a separate verstage starting after the bootblock that same
33           binary is used meaning a jump is made from RW to the RO region
34           and back to the RW region after the binary is done.
36 config USE_BROADWELL_MRC
37         bool "Use Broadwell MRC.bin"
38         depends on !USE_NATIVE_RAMINIT
39         help
40           Haswell MRC.bin has several limitations: it does not support
41           Broadwell CPUs nor 9-series PCHs, it does not initialise PEG
42           ports properly and it can't use more than one SPD file entry
43           at the same time (which would be useful for memory overclock
44           when using different DIMMs, without patching SPD EEPROMs). A
45           workaround for some of these limitations is to use Broadwell
46           MRC.bin instead.
48 config VBOOT
49         select VBOOT_MUST_REQUEST_DISPLAY
50         select VBOOT_STARTS_IN_ROMSTAGE if !HASWELL_VBOOT_IN_BOOTBLOCK
52 config VGA_BIOS_ID
53         string
54         default "8086,0166"
56 config ECAM_MMCONF_BASE_ADDRESS
57         default 0xf0000000
59 config ECAM_MMCONF_BUS_NUMBER
60         int
61         default 64
63 # This number must be equal or lower than what's reported in ACPI PCI _CRS
64 config DOMAIN_RESOURCE_32BIT_LIMIT
65         default ECAM_MMCONF_BASE_ADDRESS
67 config DCACHE_RAM_BASE
68         hex
69         default 0xff7c0000
71 config DCACHE_RAM_SIZE
72         hex
73         default 0x40000 if USE_NATIVE_RAMINIT
74         default 0x10000
75         help
76           The size of the cache-as-ram region required during bootblock
77           and/or romstage. Note DCACHE_RAM_SIZE and DCACHE_RAM_MRC_VAR_SIZE
78           must add up to a power of 2.
80 config DCACHE_RAM_MRC_VAR_SIZE
81         hex
82         default 0x0 if USE_NATIVE_RAMINIT
83         default 0x30000
84         help
85           The amount of cache-as-ram region required by the reference code.
87 config DCACHE_BSP_STACK_SIZE
88         hex
89         default 0x20000 if USE_NATIVE_RAMINIT
90         default 0x2000
91         help
92           The amount of anticipated stack usage in CAR by bootblock and
93           other stages.
95 config HAVE_MRC
96         bool "Add a System Agent binary"
97         depends on !USE_NATIVE_RAMINIT
98         help
99           Select this option to add a System Agent binary to
100           the resulting coreboot image.
102           Note: Without this binary coreboot will not work
104 config MRC_FILE
105         string "Intel System Agent path and filename"
106         depends on HAVE_MRC
107         default "mrc.bin"
108         help
109           The path and filename of the file to use as System Agent
110           binary.
112 config HASWELL_HIDE_PEG_FROM_MRC
113         bool "Hide PEG devices from MRC to work around hardcoded MRC behavior"
114         depends on !USE_NATIVE_RAMINIT
115         default y
116         help
117           If set, hides all PEG devices from MRC. This allows the iGPU
118           to be used even when a dedicated graphics card is present.
119           However, it prevents MRC from programming PEG AFE registers,
120           which can make PEG devices unstable. When unsure, choose N.
122 # The UEFI System Agent binary needs to be at a fixed offset in the flash
123 # and can therefore only reside in the COREBOOT fmap region
124 config RO_REGION_ONLY
125         string
126         depends on VBOOT
127         default "mrc.bin"
129 config INTEL_GMA_BCLV_OFFSET
130         default 0x48254
132 config ENABLE_DDR_2X_REFRESH
133         bool "Enable DRAM Refresh 2x support"
134         default n
135         help
136           When enabled, the memory controller will refresh the DRAM twice as often.
137           This probably only happens when the DRAM gets hot, but what MRC exactly
138           does when this setting is enabled has not been investigated.
140 config FIXED_MCHBAR_MMIO_BASE
141         default 0xfed10000
143 config FIXED_DMIBAR_MMIO_BASE
144         default 0xfed18000
146 config FIXED_EPBAR_MMIO_BASE
147         default 0xfed19000
149 endif