blob: c5aaa80f8c6526e5c671a00f5a66ca0329d47d73 [file] [log] [blame]
Kyösti Mälkki71216c92013-07-28 23:39:37 +03001config SOUTHBRIDGE_INTEL_COMMON
2 def_bool n
Patrick Rudolph45022ae2018-10-01 19:17:11 +02003 select SOUTHBRIDGE_INTEL_COMMON_RESET
4
5config SOUTHBRIDGE_INTEL_COMMON_RESET
6 bool
7 select HAVE_CF9_RESET
Kyösti Mälkkib5d998b2017-08-20 21:36:08 +03008
Patrick Rudolph1ae592b2019-03-24 14:41:45 +01009config SOUTHBRIDGE_INTEL_COMMON_PMCLIB
10 def_bool n
11 depends on SOUTHBRIDGE_INTEL_COMMON
Arthur Heymansb8bda112019-06-04 13:57:47 +020012 depends on SOUTHBRIDGE_INTEL_COMMON_PMBASE
13
14config SOUTHBRIDGE_INTEL_COMMON_PMBASE
15 def_bool n
16 depends on SOUTHBRIDGE_INTEL_COMMON
Patrick Rudolph1ae592b2019-03-24 14:41:45 +010017
Patrick Rudolph59de6c92015-12-26 08:33:16 +010018config SOUTHBRIDGE_INTEL_COMMON_GPIO
19 def_bool n
Kyösti Mälkkib5d998b2017-08-20 21:36:08 +030020
Arthur Heymans16fe7902017-04-12 17:01:31 +020021config SOUTHBRIDGE_INTEL_COMMON_SMBUS
22 def_bool n
Kyösti Mälkkib5d998b2017-08-20 21:36:08 +030023 select HAVE_DEBUG_SMBUS
24
Arthur Heymansbddef0d2017-09-25 12:21:07 +020025config SOUTHBRIDGE_INTEL_COMMON_SPI
26 def_bool n
27 select SPI_FLASH
Arthur Heymans4c804252018-12-03 01:28:18 +010028 select BOOT_DEVICE_SUPPORTS_WRITES
Arthur Heymansbddef0d2017-09-25 12:21:07 +020029
Tobias Diedrich9d8be5a2017-12-13 23:25:32 +010030config SOUTHBRIDGE_INTEL_COMMON_PIRQ_ACPI_GEN
31 def_bool n
32
33config SOUTHBRIDGE_INTEL_COMMON_RCBA_PIRQ
34 def_bool n
35 select SOUTHBRIDGE_INTEL_COMMON_PIRQ_ACPI_GEN
36
Bill XIEd533b162017-08-22 16:26:22 +080037config HAVE_INTEL_CHIPSET_LOCKDOWN
38 def_bool n
39
Arthur Heymansa0508172018-01-25 11:30:22 +010040config SOUTHBRIDGE_INTEL_COMMON_SMM
41 def_bool n
Nico Huber9faae2b2018-11-14 00:00:35 +010042 select HAVE_POWER_STATE_AFTER_FAILURE
43 select HAVE_POWER_STATE_PREVIOUS_AFTER_FAILURE
Arthur Heymansb8bda112019-06-04 13:57:47 +020044 select SOUTHBRIDGE_INTEL_COMMON_PMBASE
Arthur Heymansa0508172018-01-25 11:30:22 +010045
Tristan Corrick167a5122018-10-31 02:28:32 +130046config SOUTHBRIDGE_INTEL_COMMON_ACPI_MADT
47 bool
48
Tristan Corrick63626b12018-11-30 22:53:50 +130049config SOUTHBRIDGE_INTEL_COMMON_FINALIZE
50 bool
51
Stefan Tauneref8b9572018-09-06 00:34:28 +020052config INTEL_DESCRIPTOR_MODE_CAPABLE
53 def_bool n
54 help
55 This config simply states that the platform is *capable* of running in
56 descriptor mode (when the descriptor in flash is valid).
57
Angel Ponsa52016c2018-09-11 13:49:45 +020058config INTEL_DESCRIPTOR_MODE_REQUIRED
59 def_bool y if INTEL_DESCRIPTOR_MODE_CAPABLE
60 help
61 This config states descriptor mode is *required* for the platform to
62 function properly, or to function at all.
63
Mathew Kingd8b150f2019-08-09 10:55:37 -060064config VALIDATE_INTEL_DESCRIPTOR
65 depends on INTEL_DESCRIPTOR_MODE_CAPABLE
66 bool "Validate Intel firmware descriptor"
67 default n
68 help
69 This config enables validating the Intel firmware descriptor against the
70 fmap layout. If the firmware descriptor layout does not match the fmap
71 then the bootimage cannot be built.
72
Bill XIEd533b162017-08-22 16:26:22 +080073config INTEL_CHIPSET_LOCKDOWN
74 depends on HAVE_INTEL_CHIPSET_LOCKDOWN && HAVE_SMI_HANDLER && !CHROMEOS
75 #ChromeOS's payload seems to handle finalization on its on.
76 bool "Lock down chipset in coreboot"
77 default y
78 help
79 Some registers within host bridge on particular chipsets should be
80 locked down on each normal boot path (done by either coreboot or payload)
81 and S3 resume (always done by coreboot). Select this to let coreboot
82 to do this on normal boot path.
Tristan Corrick63626b12018-11-30 22:53:50 +130083
Elyes HAOUAS551a7592019-05-01 16:56:36 +020084config SOUTHBRIDGE_INTEL_COMMON_WATCHDOG
85 bool
86 depends on SOUTHBRIDGE_INTEL_COMMON
Arthur Heymansb8bda112019-06-04 13:57:47 +020087 depends on SOUTHBRIDGE_INTEL_COMMON_PMBASE
Elyes HAOUAS551a7592019-05-01 16:56:36 +020088
Tristan Corrick63626b12018-11-30 22:53:50 +130089if SOUTHBRIDGE_INTEL_COMMON_FINALIZE
90
91choice
92 prompt "Flash locking during chipset lockdown"
93 default LOCK_SPI_FLASH_NONE
94
95config LOCK_SPI_FLASH_NONE
96 bool "Don't lock flash sections"
97
98config LOCK_SPI_FLASH_RO
99 bool "Write-protect all flash sections"
100 help
101 Select this if you want to write-protect the whole firmware flash
102 chip. The locking will take place during the chipset lockdown, which
103 is either triggered by coreboot (when INTEL_CHIPSET_LOCKDOWN is set)
104 or has to be triggered later (e.g. by the payload or the OS).
105
106 NOTE: If you trigger the chipset lockdown unconditionally,
107 you won't be able to write to the flash chip using the
108 internal programmer any more.
109
110config LOCK_SPI_FLASH_NO_ACCESS
111 bool "Write-protect all flash sections and read-protect non-BIOS sections"
112 help
113 Select this if you want to protect the firmware flash against all
114 further accesses (with the exception of the memory mapped BIOS re-
115 gion which is always readable). The locking will take place during
116 the chipset lockdown, which is either triggered by coreboot (when
117 INTEL_CHIPSET_LOCKDOWN is set) or has to be triggered later (e.g.
118 by the payload or the OS).
119
120 NOTE: If you trigger the chipset lockdown unconditionally,
121 you won't be able to write to the flash chip using the
122 internal programmer any more.
123
124endchoice
125
126endif