blob: 5eb9b56557a64c0509659e0b6f9ff7cef41bc1ac [file] [log] [blame]
Stefan Reinauer1c56d9b2012-05-10 11:27:32 -07001##
2## This file is part of the coreboot project.
3##
4## Copyright (C) 2012 The Chromium OS Authors.
5##
6## This program is free software; you can redistribute it and/or modify
7## it under the terms of the GNU General Public License as published by
8## the Free Software Foundation; version 2 of the License.
9##
10## This program is distributed in the hope that it will be useful,
11## but WITHOUT ANY WARRANTY; without even the implied warranty of
12## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13## GNU General Public License for more details.
14##
Stefan Reinauer1c56d9b2012-05-10 11:27:32 -070015
Aaron Durbin3326f152016-08-12 15:50:16 -050016config COMMON_CBFS_SPI_WRAPPER
17 bool
18 default n
19 depends on !ARCH_X86
20 depends on BOOT_DEVICE_SPI_FLASH
Aaron Durbine8e118d2016-08-12 15:00:10 -050021 select BOOT_DEVICE_SUPPORTS_WRITES
Aaron Durbin3326f152016-08-12 15:50:16 -050022 help
23 Use common wrapper to interface CBFS to SPI bootrom.
24
Stefan Reinauer1c56d9b2012-05-10 11:27:32 -070025config SPI_FLASH
26 bool
Aaron Durbine8e118d2016-08-12 15:00:10 -050027 default y if BOOT_DEVICE_SPI_FLASH && BOOT_DEVICE_SUPPORTS_WRITES
Stefan Reinauer1c56d9b2012-05-10 11:27:32 -070028 default n
29 help
30 Select this option if your chipset driver needs to store certain
31 data in the SPI flash.
32
Kyösti Mälkki88e518f2014-04-29 07:11:39 +030033if SPI_FLASH
34
Aaron Durbin08e842c2016-08-11 14:40:09 -050035# Keep at 0 because lots of boards assume this default.
36config BOOT_DEVICE_SPI_FLASH_BUS
37 int
38 default 0
39 help
40 Which SPI bus the boot device is connected to.
41
Aaron Durbina91901c2016-08-11 09:42:27 -050042config SPI_FLASH_INCLUDE_ALL_DRIVERS
43 bool
44 default n if COMMON_CBFS_SPI_WRAPPER
45 default y
46
David Hendricksf101bbe2014-03-21 19:13:34 -070047config SPI_ATOMIC_SEQUENCING
48 bool
49 default y if ARCH_X86
50 default n if !ARCH_X86
51 help
52 Select this option if the SPI controller uses "atomic sequencing."
53 Atomic sequencing is when the sequence of commands is pre-programmed
54 in the SPI controller. Hardware manages the transaction instead of
55 software. This is common on x86 platforms.
56
Duncan Laurie181bbdd2012-06-23 16:53:57 -070057config SPI_FLASH_SMM
58 bool "SPI flash driver support in SMM"
59 default n
Kyösti Mälkki88e518f2014-04-29 07:11:39 +030060 depends on HAVE_SMI_HANDLER
Duncan Laurie181bbdd2012-06-23 16:53:57 -070061 help
62 Select this option if you want SPI flash support in SMM.
63
Kyösti Mälkkiab605102014-06-30 07:49:55 +030064config SPI_FLASH_NO_FAST_READ
65 bool "Disable Fast Read command"
66 default n
67 help
68 Select this option if your setup requires to avoid "fast read"s
69 from the SPI flash parts.
70
71config SPI_FLASH_ADESTO
72 bool
Aaron Durbina91901c2016-08-11 09:42:27 -050073 default y if SPI_FLASH_INCLUDE_ALL_DRIVERS
Kyösti Mälkkiab605102014-06-30 07:49:55 +030074 help
75 Select this option if your chipset driver needs to store certain
76 data in the SPI flash and your SPI flash is made by Adesto Technologies.
77
Idwer Vollering73a10182014-02-16 00:32:13 +000078config SPI_FLASH_AMIC
79 bool
Aaron Durbina91901c2016-08-11 09:42:27 -050080 default y if SPI_FLASH_INCLUDE_ALL_DRIVERS
Idwer Vollering73a10182014-02-16 00:32:13 +000081 help
82 Select this option if your chipset driver needs to store certain
83 data in the SPI flash and your SPI flash is made by AMIC.
84
Kyösti Mälkki96d92762014-11-11 15:04:38 +020085config SPI_FLASH_ATMEL
86 bool
Aaron Durbina91901c2016-08-11 09:42:27 -050087 default y if SPI_FLASH_INCLUDE_ALL_DRIVERS
Kyösti Mälkki96d92762014-11-11 15:04:38 +020088 help
89 Select this option if your chipset driver needs to store certain
90 data in the SPI flash and your SPI flash is made by Atmel.
91
Stefan Reinauer1c56d9b2012-05-10 11:27:32 -070092config SPI_FLASH_EON
93 bool
Aaron Durbina91901c2016-08-11 09:42:27 -050094 default y if SPI_FLASH_INCLUDE_ALL_DRIVERS
Stefan Reinauer1c56d9b2012-05-10 11:27:32 -070095 help
96 Select this option if your chipset driver needs to store certain
97 data in the SPI flash and your SPI flash is made by EON.
98
Kyösti Mälkkiab605102014-06-30 07:49:55 +030099config SPI_FLASH_GIGADEVICE
100 bool
Aaron Durbina91901c2016-08-11 09:42:27 -0500101 default y if SPI_FLASH_INCLUDE_ALL_DRIVERS
Kyösti Mälkkiab605102014-06-30 07:49:55 +0300102 help
103 Select this option if your chipset driver needs to store certain
104 data in the SPI flash and your SPI flash is made by Gigadevice.
105
Stefan Reinauer1c56d9b2012-05-10 11:27:32 -0700106config SPI_FLASH_MACRONIX
107 bool
Aaron Durbina91901c2016-08-11 09:42:27 -0500108 default y if SPI_FLASH_INCLUDE_ALL_DRIVERS
Stefan Reinauer1c56d9b2012-05-10 11:27:32 -0700109 help
110 Select this option if your chipset driver needs to store certain
111 data in the SPI flash and your SPI flash is made by Macronix.
112
113config SPI_FLASH_SPANSION
114 bool
Aaron Durbina91901c2016-08-11 09:42:27 -0500115 default y if SPI_FLASH_INCLUDE_ALL_DRIVERS
Stefan Reinauer1c56d9b2012-05-10 11:27:32 -0700116 help
117 Select this option if your chipset driver needs to store certain
118 data in the SPI flash and your SPI flash is made by Spansion.
119
120config SPI_FLASH_SST
121 bool
Aaron Durbina91901c2016-08-11 09:42:27 -0500122 default y if SPI_FLASH_INCLUDE_ALL_DRIVERS
Stefan Reinauer1c56d9b2012-05-10 11:27:32 -0700123 help
124 Select this option if your chipset driver needs to store certain
125 data in the SPI flash and your SPI flash is made by SST.
126
127config SPI_FLASH_STMICRO
128 bool
Aaron Durbina91901c2016-08-11 09:42:27 -0500129 default y if SPI_FLASH_INCLUDE_ALL_DRIVERS
Stefan Reinauer1c56d9b2012-05-10 11:27:32 -0700130 help
131 Select this option if your chipset driver needs to store certain
132 data in the SPI flash and your SPI flash is made by ST MICRO.
133
134config SPI_FLASH_WINBOND
135 bool
Aaron Durbina91901c2016-08-11 09:42:27 -0500136 default y if SPI_FLASH_INCLUDE_ALL_DRIVERS
Stefan Reinauer1c56d9b2012-05-10 11:27:32 -0700137 help
138 Select this option if your chipset driver needs to store certain
139 data in the SPI flash and your SPI flash is made by Winbond.
140
David Hendricks1101a712013-11-22 18:41:38 -0800141config SPI_FLASH_FAST_READ_DUAL_OUTPUT_3B
142 bool
143 default n
144 depends on SPI_FLASH
145 help
146 Select this option if your SPI flash supports the fast read dual-
147 output command (opcode 0x3b) where the opcode and address are sent
148 to the chip on MOSI and data is received on both MOSI and MISO.
149
Kyösti Mälkki88e518f2014-04-29 07:11:39 +0300150endif # SPI_FLASH
Martin Roth3a543182015-09-28 15:27:24 -0600151
152config HAVE_SPI_CONSOLE_SUPPORT
153 def_bool n