blob: 03ad31d41fa48bc9cb0c45df0773f9480cfde426 [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 Durbine8e118d2016-08-12 15:00:10 -050015 select BOOT_DEVICE_SUPPORTS_WRITES
Aaron Durbin9a7d7bc2013-09-07 00:41:48 -050016 select CACHE_MRC_SETTINGS
Aaron Durbin59d1d872014-01-14 17:34:10 -060017 select CPU_INTEL_TURBO_NOT_PACKAGE_SCOPED
Kyösti Mälkki4851bf22014-12-27 12:57:06 +020018 select SUPPORT_CPU_UCODE_IN_CBFS
Vadim Bendeburyc04e1712013-09-27 16:21:04 -070019 select HAVE_SMI_HANDLER
Patrick Rudolph45022ae2018-10-01 19:17:11 +020020 select SOUTHBRIDGE_INTEL_COMMON_RESET
Aaron Durbinf5ff8542016-05-05 10:38:03 -050021 select NO_FIXED_XIP_ROM_SIZE
Aaron Durbin302cbd62013-10-21 12:36:17 -050022 select PARALLEL_MP
Duncan Lauriec6313db2014-01-16 11:18:36 -080023 select PCIEXP_ASPM
24 select PCIEXP_COMMON_CLOCK
Isaac Christensend2044cc2014-10-01 13:37:36 -060025 select REG_SCRIPT
Aaron Durbin16246ea2016-08-05 21:23:37 -050026 select RTC
Vadim Bendeburyc04e1712013-09-27 16:21:04 -070027 select SMM_TSEG
28 select SMP
29 select SPI_FLASH
30 select SSE2
Vadim Bendeburyc04e1712013-09-27 16:21:04 -070031 select TSC_CONSTANT_RATE
Aaron Durbince7ecf92013-10-24 08:42:10 -050032 select TSC_MONOTONIC_TIMER
Vadim Bendeburyc04e1712013-09-27 16:21:04 -070033 select TSC_SYNC_MFENCE
34 select UDELAY_TSC
Stefan Reinauer9616f3c2015-04-29 10:45:22 -070035 select SOC_INTEL_COMMON
Stefan Tauneref8b9572018-09-06 00:34:28 +020036 select INTEL_DESCRIPTOR_MODE_CAPABLE
Martin Roth3a543182015-09-28 15:27:24 -060037 select HAVE_SPI_CONSOLE_SUPPORT
Matt DeVillierbe33a672018-03-11 22:44:41 -050038 select INTEL_GMA_ACPI
39 select INTEL_GMA_SWSMISCI
Arthur Heymansd5d20d02018-11-29 14:16:49 +010040 select POSTCAR_STAGE
41 select POSTCAR_CONSOLE
Matt DeVilliere5a1a4c2017-01-19 21:13:02 -060042 select CPU_INTEL_COMMON
Arthur Heymansb1c57d12019-01-10 20:28:48 +010043 select CPU_HAS_L2_ENABLE_MSR
Aaron Durbin9a7d7bc2013-09-07 00:41:48 -050044
Julius Werner1210b412017-03-27 19:26:32 -070045config VBOOT
Joel Kitching6672bd82019-04-10 16:06:21 +080046 select VBOOT_MUST_REQUEST_DISPLAY
Julius Werner1210b412017-03-27 19:26:32 -070047 select VBOOT_STARTS_IN_ROMSTAGE
48
Aaron Durbin9a7d7bc2013-09-07 00:41:48 -050049config BOOTBLOCK_CPU_INIT
50 string
51 default "soc/intel/baytrail/bootblock/bootblock.c"
52
53config MMCONF_BASE_ADDRESS
54 hex
55 default 0xe0000000
56
57config MAX_CPUS
58 int
59 default 4
60
61config CPU_ADDR_BITS
62 int
63 default 36
64
65config SMM_TSEG_SIZE
66 hex
67 default 0x800000
68
69config SMM_RESERVED_SIZE
70 hex
71 default 0x100000
72
73config HAVE_MRC
Arthur Heymansabe62be2018-06-17 21:36:22 +020074 bool "Add a System Agent binary"
Aaron Durbin9a7d7bc2013-09-07 00:41:48 -050075 help
Arthur Heymansabe62be2018-06-17 21:36:22 +020076 Select this option to add a System Agent binary to
77 the resulting coreboot image.
78
Aaron Durbin9a7d7bc2013-09-07 00:41:48 -050079 Note: Without this binary coreboot will not work
80
Aaron Durbin9a7d7bc2013-09-07 00:41:48 -050081config MRC_FILE
Arthur Heymansabe62be2018-06-17 21:36:22 +020082 string "Intel System Agent path and filename"
83 depends on HAVE_MRC
84 default "mrc.bin"
Aaron Durbin9a7d7bc2013-09-07 00:41:48 -050085 help
86 The path and filename of the file to use as System Agent
Arthur Heymansabe62be2018-06-17 21:36:22 +020087 binary.
Aaron Durbin9a7d7bc2013-09-07 00:41:48 -050088
89config MRC_BIN_ADDRESS
90 hex
91 default 0xfffa0000
92
Shawn Nematbakhsh13d93412013-11-26 15:37:43 -080093config MRC_RMT
94 bool "Enable MRC RMT training + debug prints"
95 default n
96
Aaron Durbin9a7d7bc2013-09-07 00:41:48 -050097# Cache As RAM region layout:
98#
99# +-------------+ DCACHE_RAM_BASE + DCACHE_RAM_SIZE + DCACHE_RAM_MRC_VAR_SIZE
100# | MRC usage |
101# | |
102# +-------------+ DCACHE_RAM_BASE + DCACHE_RAM_SIZE
Kyösti Mälkki2bad1e72016-07-26 14:03:31 +0300103# | Stack |
104# | | |
105# | v |
Aaron Durbin9a7d7bc2013-09-07 00:41:48 -0500106# +-------------+
107# | ^ |
108# | | |
109# | CAR Globals |
110# +-------------+ DCACHE_RAM_BASE
111#
112# Note that the MRC binary is linked to assume the region marked as "MRC usage"
113# starts at DCACHE_RAM_BASE + DCACHE_RAM_SIZE. If those values change then
114# a new MRC binary needs to be produced with the updated start and size
115# information.
116
117config DCACHE_RAM_BASE
118 hex
Aaron Durbin89f52922014-03-19 11:48:33 -0500119 default 0xfe000000
Aaron Durbin9a7d7bc2013-09-07 00:41:48 -0500120
121config DCACHE_RAM_SIZE
122 hex
Aaron Durbin08a46132013-10-07 16:24:44 -0500123 default 0x8000
Aaron Durbin9a7d7bc2013-09-07 00:41:48 -0500124 help
125 The size of the cache-as-ram region required during bootblock
126 and/or romstage. Note DCACHE_RAM_SIZE and DCACHE_RAM_MRC_VAR_SIZE
127 must add up to a power of 2.
128
129config DCACHE_RAM_MRC_VAR_SIZE
130 hex
Aaron Durbin08a46132013-10-07 16:24:44 -0500131 default 0x8000
Aaron Durbin9a7d7bc2013-09-07 00:41:48 -0500132 help
133 The amount of cache-as-ram region required by the reference code.
134
Aaron Durbin9a7d7bc2013-09-07 00:41:48 -0500135config RESET_ON_INVALID_RAMSTAGE_CACHE
136 bool "Reset the system on S3 wake when ramstage cache invalid."
137 default n
Aaron Durbin9a7d7bc2013-09-07 00:41:48 -0500138 help
139 The baytrail romstage code caches the loaded ramstage program
140 in SMM space. On S3 wake the romstage will copy over a fresh
141 ramstage that was cached in the SMM space. This option determines
142 the action to take when the ramstage cache is invalid. If selected
143 the system will reset otherwise the ramstage will be reloaded from
144 cbfs.
145
Aaron Durbin9a7d7bc2013-09-07 00:41:48 -0500146config ENABLE_BUILTIN_COM1
147 bool "Enable builtin COM1 Serial Port"
148 default n
149 help
150 The PMC has a legacy COM1 serial port. Choose this option to
151 configure the pads and enable it. This serial port can be used for
152 the debug console.
153
Vladimir Serbinenkof1d6e7e2014-08-09 07:16:10 +0200154config HAVE_REFCODE_BLOB
155 depends on ARCH_X86
156 bool "An external reference code blob should be put into cbfs."
157 default n
158 help
159 The reference code blob will be placed into cbfs.
160
161if HAVE_REFCODE_BLOB
162
163config REFCODE_BLOB_FILE
164 string "Path and filename to reference code blob."
165 default "refcode.elf"
166 help
167 The path and filename to the file to be added to cbfs.
168
169endif # HAVE_REFCODE_BLOB
170
Aaron Durbin9a7d7bc2013-09-07 00:41:48 -0500171endif