blob: b79000802e716af1708734a9d2a075c0c4710bda [file] [log] [blame]
Aaron Durbin9a7d7bc2013-09-07 00:41:48 -05001config SOC_INTEL_BAYTRAIL
2 bool
3 help
4 Bay Trail M/D part support.
5
6if SOC_INTEL_BAYTRAIL
7
8config CPU_SPECIFIC_OPTIONS
9 def_bool y
Aaron Durbinf5cfaa32016-07-13 23:20:07 -050010 select ACPI_INTEL_HARDWARE_SLEEP_VALUES
Furquan Shaikh99ac98f2014-04-23 10:18:48 -070011 select ARCH_BOOTBLOCK_X86_32
Stefan Reinauer77b16552015-01-14 19:51:47 +010012 select ARCH_VERSTAGE_X86_32
Furquan Shaikh99ac98f2014-04-23 10:18:48 -070013 select ARCH_ROMSTAGE_X86_32
14 select ARCH_RAMSTAGE_X86_32
Aaron Durbin9a7d7bc2013-09-07 00:41:48 -050015 select CACHE_MRC_SETTINGS
Aaron Durbin59d1d872014-01-14 17:34:10 -060016 select CPU_INTEL_TURBO_NOT_PACKAGE_SCOPED
Kyösti Mälkki4851bf22014-12-27 12:57:06 +020017 select SUPPORT_CPU_UCODE_IN_CBFS
Vadim Bendeburyc04e1712013-09-27 16:21:04 -070018 select HAVE_SMI_HANDLER
Aaron Durbin6ecdb682013-10-10 20:54:57 -050019 select HAVE_HARD_RESET
Vadim Bendeburyc04e1712013-09-27 16:21:04 -070020 select MMCONF_SUPPORT
21 select MMCONF_SUPPORT_DEFAULT
Aaron Durbinf5ff8542016-05-05 10:38:03 -050022 select NO_FIXED_XIP_ROM_SIZE
Vadim Bendeburyc04e1712013-09-27 16:21:04 -070023 select RELOCATABLE_MODULES
Kyösti Mälkkid05d0db2014-10-16 14:54:03 +030024 select RELOCATABLE_RAMSTAGE
Aaron Durbin302cbd62013-10-21 12:36:17 -050025 select PARALLEL_MP
Duncan Lauriec6313db2014-01-16 11:18:36 -080026 select PCIEXP_ASPM
27 select PCIEXP_COMMON_CLOCK
Isaac Christensend2044cc2014-10-01 13:37:36 -060028 select REG_SCRIPT
Aaron Durbin16246ea2016-08-05 21:23:37 -050029 select RTC
Vadim Bendeburyc04e1712013-09-27 16:21:04 -070030 select SMM_TSEG
31 select SMP
32 select SPI_FLASH
33 select SSE2
34 select SUPPORT_CPU_UCODE_IN_CBFS
35 select TSC_CONSTANT_RATE
Aaron Durbince7ecf92013-10-24 08:42:10 -050036 select TSC_MONOTONIC_TIMER
Vadim Bendeburyc04e1712013-09-27 16:21:04 -070037 select TSC_SYNC_MFENCE
38 select UDELAY_TSC
Stefan Reinauer9616f3c2015-04-29 10:45:22 -070039 select SOC_INTEL_COMMON
Martin Rothc407cb92015-06-23 19:59:30 -060040 select HAVE_INTEL_FIRMWARE
Martin Roth3a543182015-09-28 15:27:24 -060041 select HAVE_SPI_CONSOLE_SUPPORT
Aaron Durbin9a7d7bc2013-09-07 00:41:48 -050042
43config BOOTBLOCK_CPU_INIT
44 string
45 default "soc/intel/baytrail/bootblock/bootblock.c"
46
47config MMCONF_BASE_ADDRESS
48 hex
49 default 0xe0000000
50
51config MAX_CPUS
52 int
53 default 4
54
55config CPU_ADDR_BITS
56 int
57 default 36
58
59config SMM_TSEG_SIZE
60 hex
61 default 0x800000
62
63config SMM_RESERVED_SIZE
64 hex
65 default 0x100000
66
67config HAVE_MRC
68 bool "Add a Memory Reference Code binary"
69 default y
70 help
71 Select this option to add a blob containing
72 memory reference code.
73 Note: Without this binary coreboot will not work
74
75if HAVE_MRC
76
77config MRC_FILE
78 string "Intel memory refeference code path and filename"
Patrick Georgi26e24cc2015-05-05 22:27:25 +020079 default "3rdparty/blobs/northbridge/intel/sandybridge/systemagent-r6.bin"
Aaron Durbin9a7d7bc2013-09-07 00:41:48 -050080 help
81 The path and filename of the file to use as System Agent
82 binary. Note that this points to the sandybridge binary file
83 which is will not work, but it serves its purpose to do builds.
84
85config MRC_BIN_ADDRESS
86 hex
87 default 0xfffa0000
88
Shawn Nematbakhsh13d93412013-11-26 15:37:43 -080089config MRC_RMT
90 bool "Enable MRC RMT training + debug prints"
91 default n
92
Aaron Durbin9a7d7bc2013-09-07 00:41:48 -050093endif # HAVE_MRC
94
Aaron Durbin9a7d7bc2013-09-07 00:41:48 -050095# Cache As RAM region layout:
96#
97# +-------------+ DCACHE_RAM_BASE + DCACHE_RAM_SIZE + DCACHE_RAM_MRC_VAR_SIZE
98# | MRC usage |
99# | |
100# +-------------+ DCACHE_RAM_BASE + DCACHE_RAM_SIZE
101# | Stack |\
102# | | | * DCACHE_RAM_ROMSTAGE_STACK_SIZE
103# | v |/
104# +-------------+
105# | ^ |
106# | | |
107# | CAR Globals |
108# +-------------+ DCACHE_RAM_BASE
109#
110# Note that the MRC binary is linked to assume the region marked as "MRC usage"
111# starts at DCACHE_RAM_BASE + DCACHE_RAM_SIZE. If those values change then
112# a new MRC binary needs to be produced with the updated start and size
113# information.
114
115config DCACHE_RAM_BASE
116 hex
Aaron Durbin89f52922014-03-19 11:48:33 -0500117 default 0xfe000000
Aaron Durbin9a7d7bc2013-09-07 00:41:48 -0500118
119config DCACHE_RAM_SIZE
120 hex
Aaron Durbin08a46132013-10-07 16:24:44 -0500121 default 0x8000
Aaron Durbin9a7d7bc2013-09-07 00:41:48 -0500122 help
123 The size of the cache-as-ram region required during bootblock
124 and/or romstage. Note DCACHE_RAM_SIZE and DCACHE_RAM_MRC_VAR_SIZE
125 must add up to a power of 2.
126
127config DCACHE_RAM_MRC_VAR_SIZE
128 hex
Aaron Durbin08a46132013-10-07 16:24:44 -0500129 default 0x8000
Aaron Durbin9a7d7bc2013-09-07 00:41:48 -0500130 help
131 The amount of cache-as-ram region required by the reference code.
132
133config DCACHE_RAM_ROMSTAGE_STACK_SIZE
134 hex
135 default 0x800
136 help
137 The amount of anticipated stack usage from the data cache
Daniele Forsi53847a22014-07-22 18:00:56 +0200138 during pre-RAM ROM stage execution.
Aaron Durbin9a7d7bc2013-09-07 00:41:48 -0500139
140config RESET_ON_INVALID_RAMSTAGE_CACHE
141 bool "Reset the system on S3 wake when ramstage cache invalid."
142 default n
143 depends on RELOCATABLE_RAMSTAGE
144 help
145 The baytrail romstage code caches the loaded ramstage program
146 in SMM space. On S3 wake the romstage will copy over a fresh
147 ramstage that was cached in the SMM space. This option determines
148 the action to take when the ramstage cache is invalid. If selected
149 the system will reset otherwise the ramstage will be reloaded from
150 cbfs.
151
Aaron Durbin9a7d7bc2013-09-07 00:41:48 -0500152config ENABLE_BUILTIN_COM1
153 bool "Enable builtin COM1 Serial Port"
154 default n
155 help
156 The PMC has a legacy COM1 serial port. Choose this option to
157 configure the pads and enable it. This serial port can be used for
158 the debug console.
159
Vladimir Serbinenkof1d6e7e2014-08-09 07:16:10 +0200160config HAVE_REFCODE_BLOB
161 depends on ARCH_X86
162 bool "An external reference code blob should be put into cbfs."
163 default n
164 help
165 The reference code blob will be placed into cbfs.
166
167if HAVE_REFCODE_BLOB
168
169config REFCODE_BLOB_FILE
170 string "Path and filename to reference code blob."
171 default "refcode.elf"
172 help
173 The path and filename to the file to be added to cbfs.
174
175endif # HAVE_REFCODE_BLOB
176
Aaron Durbin3953e392015-09-03 00:41:29 -0500177config CHIPSET_BOOTBLOCK_INCLUDE
178 string
179 default "soc/intel/baytrail/bootblock/timestamp.inc"
180
Aaron Durbin9a7d7bc2013-09-07 00:41:48 -0500181endif