xref: /openbmc/linux/drivers/mtd/devices/Kconfig (revision f7777dcc)
1menu "Self-contained MTD device drivers"
2	depends on MTD!=n
3	depends on HAS_IOMEM
4
5config MTD_PMC551
6	tristate "Ramix PMC551 PCI Mezzanine RAM card support"
7	depends on PCI
8	---help---
9	  This provides a MTD device driver for the Ramix PMC551 RAM PCI card
10	  from Ramix Inc. <http://www.ramix.com/products/memory/pmc551.html>.
11	  These devices come in memory configurations from 32M - 1G.  If you
12	  have one, you probably want to enable this.
13
14	  If this driver is compiled as a module you get the ability to select
15	  the size of the aperture window pointing into the devices memory.
16	  What this means is that if you have a 1G card, normally the kernel
17	  will use a 1G memory map as its view of the device.  As a module,
18	  you can select a 1M window into the memory and the driver will
19	  "slide" the window around the PMC551's memory.  This was
20	  particularly useful on the 2.2 kernels on PPC architectures as there
21	  was limited kernel space to deal with.
22
23config MTD_PMC551_BUGFIX
24	bool "PMC551 256M DRAM Bugfix"
25	depends on MTD_PMC551
26	help
27	  Some of Ramix's PMC551 boards with 256M configurations have invalid
28	  column and row mux values.  This option will fix them, but will
29	  break other memory configurations.  If unsure say N.
30
31config MTD_PMC551_DEBUG
32	bool "PMC551 Debugging"
33	depends on MTD_PMC551
34	help
35	  This option makes the PMC551 more verbose during its operation and
36	  is only really useful if you are developing on this driver or
37	  suspect a possible hardware or driver bug.  If unsure say N.
38
39config MTD_MS02NV
40	tristate "DEC MS02-NV NVRAM module support"
41	depends on MACH_DECSTATION
42	help
43	  This is an MTD driver for the DEC's MS02-NV (54-20948-01) battery
44	  backed-up NVRAM module.  The module was originally meant as an NFS
45	  accelerator.  Say Y here if you have a DECstation 5000/2x0 or a
46	  DECsystem 5900 equipped with such a module.
47
48	  If you want to compile this driver as a module ( = code which can be
49	  inserted in and removed from the running kernel whenever you want),
50	  say M here and read <file:Documentation/kbuild/modules.txt>.
51	  The module will be called ms02-nv.
52
53config MTD_DATAFLASH
54	tristate "Support for AT45xxx DataFlash"
55	depends on SPI_MASTER
56	help
57	  This enables access to AT45xxx DataFlash chips, using SPI.
58	  Sometimes DataFlash chips are packaged inside MMC-format
59	  cards; at this writing, the MMC stack won't handle those.
60
61config MTD_DATAFLASH_WRITE_VERIFY
62	bool "Verify DataFlash page writes"
63	depends on MTD_DATAFLASH
64	help
65	  This adds an extra check when data is written to the flash.
66	  It may help if you are verifying chip setup (timings etc) on
67	  your board.  There is a rare possibility that even though the
68	  device thinks the write was successful, a bit could have been
69	  flipped accidentally due to device wear or something else.
70
71config MTD_DATAFLASH_OTP
72	bool "DataFlash OTP support (Security Register)"
73	depends on MTD_DATAFLASH
74	help
75	  Newer DataFlash chips (revisions C and D) support 128 bytes of
76	  one-time-programmable (OTP) data.  The first half may be written
77	  (once) with up to 64 bytes of data, such as a serial number or
78	  other key product data.  The second half is programmed with a
79	  unique-to-each-chip bit pattern at the factory.
80
81config MTD_M25P80
82	tristate "Support most SPI Flash chips (AT26DF, M25P, W25X, ...)"
83	depends on SPI_MASTER
84	help
85	  This enables access to most modern SPI flash chips, used for
86	  program and data storage.   Series supported include Atmel AT26DF,
87	  Spansion S25SL, SST 25VF, ST M25P, and Winbond W25X.  Other chips
88	  are supported as well.  See the driver source for the current list,
89	  or to add other chips.
90
91	  Note that the original DataFlash chips (AT45 series, not AT26DF),
92	  need an entirely different driver.
93
94	  Set up your spi devices with the right board-specific platform data,
95	  if you want to specify device partitioning or to use a device which
96	  doesn't support the JEDEC ID instruction.
97
98config M25PXX_USE_FAST_READ
99	bool "Use FAST_READ OPCode allowing SPI CLK >= 50MHz"
100	depends on MTD_M25P80
101	default y
102	help
103	  This option enables FAST_READ access supported by ST M25Pxx.
104
105config MTD_SPEAR_SMI
106	tristate "SPEAR MTD NOR Support through SMI controller"
107	depends on PLAT_SPEAR
108	default y
109	help
110	  This enable SNOR support on SPEAR platforms using SMI controller
111
112config MTD_SST25L
113	tristate "Support SST25L (non JEDEC) SPI Flash chips"
114	depends on SPI_MASTER
115	help
116	  This enables access to the non JEDEC SST25L SPI flash chips, used
117	  for program and data storage.
118
119	  Set up your spi devices with the right board-specific platform data,
120	  if you want to specify device partitioning.
121
122config MTD_BCM47XXSFLASH
123	tristate "R/O support for serial flash on BCMA bus"
124	depends on BCMA_SFLASH
125	help
126	  BCMA bus can have various flash memories attached, they are
127	  registered by bcma as platform devices. This enables driver for
128	  serial flash memories (only read-only mode is implemented).
129
130config MTD_SLRAM
131	tristate "Uncached system RAM"
132	help
133	  If your CPU cannot cache all of the physical memory in your machine,
134	  you can still use it for storage or swap by using this driver to
135	  present it to the system as a Memory Technology Device.
136
137config MTD_PHRAM
138	tristate "Physical system RAM"
139	help
140	  This is a re-implementation of the slram driver above.
141
142	  Use this driver to access physical memory that the kernel proper
143	  doesn't have access to, memory beyond the mem=xxx limit, nvram,
144	  memory on the video card, etc...
145
146config MTD_LART
147	tristate "28F160xx flash driver for LART"
148	depends on SA1100_LART
149	help
150	  This enables the flash driver for LART. Please note that you do
151	  not need any mapping/chip driver for LART. This one does it all
152	  for you, so go disable all of those if you enabled some of them (:
153
154config MTD_MTDRAM
155	tristate "Test driver using RAM"
156	help
157	  This enables a test MTD device driver which uses vmalloc() to
158	  provide storage.  You probably want to say 'N' unless you're
159	  testing stuff.
160
161config MTDRAM_TOTAL_SIZE
162	int "MTDRAM device size in KiB"
163	depends on MTD_MTDRAM
164	default "4096"
165	help
166	  This allows you to configure the total size of the MTD device
167	  emulated by the MTDRAM driver.  If the MTDRAM driver is built
168	  as a module, it is also possible to specify this as a parameter when
169	  loading the module.
170
171config MTDRAM_ERASE_SIZE
172	int "MTDRAM erase block size in KiB"
173	depends on MTD_MTDRAM
174	default "128"
175	help
176	  This allows you to configure the size of the erase blocks in the
177	  device emulated by the MTDRAM driver.  If the MTDRAM driver is built
178	  as a module, it is also possible to specify this as a parameter when
179	  loading the module.
180
181#If not a module (I don't want to test it as a module)
182config MTDRAM_ABS_POS
183	hex "SRAM Hexadecimal Absolute position or 0"
184	depends on MTD_MTDRAM=y
185	default "0"
186	help
187	  If you have system RAM accessible by the CPU but not used by Linux
188	  in normal operation, you can give the physical address at which the
189	  available RAM starts, and the MTDRAM driver will use it instead of
190	  allocating space from Linux's available memory. Otherwise, leave
191	  this set to zero. Most people will want to leave this as zero.
192
193config MTD_BLOCK2MTD
194	tristate "MTD using block device"
195	depends on BLOCK
196	help
197	  This driver allows a block device to appear as an MTD. It would
198	  generally be used in the following cases:
199
200	  Using Compact Flash as an MTD, these usually present themselves to
201	  the system as an ATA drive.
202	  Testing MTD users (eg JFFS2) on large media and media that might
203	  be removed during a write (using the floppy drive).
204
205comment "Disk-On-Chip Device Drivers"
206
207config MTD_DOCG3
208	tristate "M-Systems Disk-On-Chip G3"
209	select BCH
210	select BCH_CONST_PARAMS
211	select BITREVERSE
212	---help---
213	  This provides an MTD device driver for the M-Systems DiskOnChip
214	  G3 devices.
215
216	  The driver provides access to G3 DiskOnChip, distributed by
217	  M-Systems and now Sandisk. The support is very experimental,
218	  and doesn't give access to any write operations.
219
220if MTD_DOCG3
221config BCH_CONST_M
222	default 14
223config BCH_CONST_T
224	default 4
225endif
226
227endmenu
228