hc
2024-10-22 8ac6c7a54ed1b98d142dce24b11c6de6a1e239a5
kernel/drivers/memory/Kconfig
....@@ -1,11 +1,26 @@
1
+# SPDX-License-Identifier: GPL-2.0-only
12 #
23 # Memory devices
34 #
45
56 menuconfig MEMORY
67 bool "Memory Controller drivers"
8
+ help
9
+ This option allows to enable specific memory controller drivers,
10
+ useful mostly on embedded systems. These could be controllers
11
+ for DRAM (SDR, DDR), ROM, SRAM and others. The drivers features
12
+ vary from memory tuning and frequency scaling to enabling
13
+ access to attached peripherals through memory bus.
714
815 if MEMORY
16
+
17
+config DDR
18
+ bool
19
+ help
20
+ Data from JEDEC specs for DDR SDRAM memories,
21
+ particularly the AC timing parameters and addressing
22
+ information. This data is useful for drivers handling
23
+ DDR SDRAM controllers.
924
1025 config ARM_PL172_MPMC
1126 tristate "ARM PL172 MPMC driver"
....@@ -17,8 +32,9 @@
1732
1833 config ATMEL_SDRAMC
1934 bool "Atmel (Multi-port DDR-)SDRAM Controller"
20
- default y
21
- depends on ARCH_AT91 && OF
35
+ default y if ARCH_AT91
36
+ depends on ARCH_AT91 || COMPILE_TEST
37
+ depends on OF
2238 help
2339 This driver is for Atmel SDRAM Controller or Atmel Multi-port
2440 DDR-SDRAM Controller available on Atmel AT91SAM9 and SAMA5 SoCs.
....@@ -27,8 +43,9 @@
2743
2844 config ATMEL_EBI
2945 bool "Atmel EBI driver"
30
- default y
31
- depends on ARCH_AT91 && OF
46
+ default y if ARCH_AT91
47
+ depends on ARCH_AT91 || COMPILE_TEST
48
+ depends on OF
3249 select MFD_SYSCON
3350 select MFD_ATMEL_SMC
3451 help
....@@ -37,9 +54,33 @@
3754 tree is used. This bus supports NANDs, external ethernet controller,
3855 SRAMs, ATA devices, etc.
3956
57
+config BRCMSTB_DPFE
58
+ bool "Broadcom STB DPFE driver" if COMPILE_TEST
59
+ default y if ARCH_BRCMSTB
60
+ depends on ARCH_BRCMSTB || COMPILE_TEST
61
+ help
62
+ This driver provides access to the DPFE interface of Broadcom
63
+ STB SoCs. The firmware running on the DCPU inside the DDR PHY can
64
+ provide current information about the system's RAM, for instance
65
+ the DRAM refresh rate. This can be used as an indirect indicator
66
+ for the DRAM's temperature. Slower refresh rate means cooler RAM,
67
+ higher refresh rate means hotter RAM.
68
+
69
+config BT1_L2_CTL
70
+ bool "Baikal-T1 CM2 L2-RAM Cache Control Block"
71
+ depends on MIPS_BAIKAL_T1 || COMPILE_TEST
72
+ select MFD_SYSCON
73
+ help
74
+ Baikal-T1 CPU is based on the MIPS P5600 Warrior IP-core. The CPU
75
+ resides Coherency Manager v2 with embedded 1MB L2-cache. It's
76
+ possible to tune the L2 cache performance up by setting the data,
77
+ tags and way-select latencies of RAM access. This driver provides a
78
+ dt properties-based and sysfs interface for it.
79
+
4080 config TI_AEMIF
4181 tristate "Texas Instruments AEMIF driver"
42
- depends on (ARCH_DAVINCI || ARCH_KEYSTONE) && OF
82
+ depends on ARCH_DAVINCI || ARCH_KEYSTONE || COMPILE_TEST
83
+ depends on OF
4384 help
4485 This driver is for the AEMIF module available in Texas Instruments
4586 SoCs. AEMIF stands for Asynchronous External Memory Interface and
....@@ -50,7 +91,7 @@
5091
5192 config TI_EMIF
5293 tristate "Texas Instruments EMIF driver"
53
- depends on ARCH_OMAP2PLUS
94
+ depends on ARCH_OMAP2PLUS || COMPILE_TEST
5495 select DDR
5596 help
5697 This driver is for the EMIF module available in Texas Instruments
....@@ -62,7 +103,8 @@
62103 temperature changes
63104
64105 config OMAP_GPMC
65
- bool
106
+ bool "Texas Instruments OMAP SoC GPMC driver" if COMPILE_TEST
107
+ depends on OF_ADDRESS
66108 select GPIOLIB
67109 help
68110 This driver is for the General Purpose Memory Controller (GPMC)
....@@ -86,7 +128,8 @@
86128
87129 config TI_EMIF_SRAM
88130 tristate "Texas Instruments EMIF SRAM driver"
89
- depends on (SOC_AM33XX || SOC_AM43XX) && SRAM
131
+ depends on SOC_AM33XX || SOC_AM43XX || (ARM && CPU_V7 && COMPILE_TEST)
132
+ depends on SRAM
90133 help
91134 This driver is for the EMIF module available on Texas Instruments
92135 AM33XX and AM43XX SoCs and is required for PM. Certain parts of
....@@ -96,8 +139,9 @@
96139
97140 config MVEBU_DEVBUS
98141 bool "Marvell EBU Device Bus Controller"
99
- default y
100
- depends on PLAT_ORION && OF
142
+ default y if PLAT_ORION
143
+ depends on PLAT_ORION || COMPILE_TEST
144
+ depends on OF
101145 help
102146 This driver is for the Device Bus controller available in some
103147 Marvell EBU SoCs such as Discovery (mv78xx0), Orion (88f5xxx) and
....@@ -106,7 +150,7 @@
106150
107151 config FSL_CORENET_CF
108152 tristate "Freescale CoreNet Error Reporting"
109
- depends on FSL_SOC_BOOKE
153
+ depends on FSL_SOC_BOOKE || COMPILE_TEST
110154 help
111155 Say Y for reporting of errors from the Freescale CoreNet
112156 Coherency Fabric. Errors reported include accesses to
....@@ -115,14 +159,13 @@
115159 represents a coherency violation.
116160
117161 config FSL_IFC
118
- bool
162
+ bool "Freescale IFC driver" if COMPILE_TEST
119163 depends on FSL_SOC || ARCH_LAYERSCAPE || SOC_LS1021A || COMPILE_TEST
120164 depends on HAS_IOMEM
121165
122166 config JZ4780_NEMC
123167 bool "Ingenic JZ4780 SoC NEMC driver"
124
- default y
125
- depends on MACH_JZ4780 || COMPILE_TEST
168
+ depends on MIPS || COMPILE_TEST
126169 depends on HAS_IOMEM && OF
127170 help
128171 This driver is for the NAND/External Memory Controller (NEMC) in
....@@ -130,7 +173,7 @@
130173 memory devices such as NAND and SRAM.
131174
132175 config MTK_SMI
133
- bool
176
+ tristate "MediaTek SoC Memory Controller driver" if COMPILE_TEST
134177 depends on ARCH_MEDIATEK || COMPILE_TEST
135178 help
136179 This driver is for the Memory Controller module in MediaTek SoCs,
....@@ -139,12 +182,40 @@
139182
140183 config DA8XX_DDRCTL
141184 bool "Texas Instruments da8xx DDR2/mDDR driver"
142
- depends on ARCH_DAVINCI_DA8XX
185
+ depends on ARCH_DAVINCI_DA8XX || COMPILE_TEST
143186 help
144187 This driver is for the DDR2/mDDR Memory Controller present on
145188 Texas Instruments da8xx SoCs. It's used to tweak various memory
146189 controller configuration options.
147190
191
+config PL353_SMC
192
+ tristate "ARM PL35X Static Memory Controller(SMC) driver"
193
+ default y if ARM
194
+ depends on ARM
195
+ depends on ARM_AMBA || COMPILE_TEST
196
+ help
197
+ This driver is for the ARM PL351/PL353 Static Memory
198
+ Controller(SMC) module.
199
+
200
+config RENESAS_RPCIF
201
+ tristate "Renesas RPC-IF driver"
202
+ depends on ARCH_RENESAS || COMPILE_TEST
203
+ select REGMAP_MMIO
204
+ help
205
+ This supports Renesas R-Car Gen3 RPC-IF which provides either SPI
206
+ host or HyperFlash. You'll have to select individual components
207
+ under the corresponding menu.
208
+
209
+config STM32_FMC2_EBI
210
+ tristate "Support for FMC2 External Bus Interface on STM32MP SoCs"
211
+ depends on MACH_STM32MP157 || COMPILE_TEST
212
+ select MFD_SYSCON
213
+ help
214
+ Select this option to enable the STM32 FMC2 External Bus Interface
215
+ controller. This driver configures the transactions with external
216
+ devices (like SRAM, ethernet adapters, FPGAs, LCD displays, ...) on
217
+ SOCs containing the FMC2 External Bus Interface.
218
+
148219 source "drivers/memory/samsung/Kconfig"
149220 source "drivers/memory/tegra/Kconfig"
150221