Kconfig 7.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217
  1. # SPDX-License-Identifier: GPL-2.0-only
  2. config MTD_BCM47XX_PARTS
  3. tristate "BCM47XX partitioning parser"
  4. depends on BCM47XX || ARCH_BCM_5301X
  5. help
  6. This provides partitions parser for devices based on BCM47xx
  7. boards.
  8. config MTD_BCM63XX_PARTS
  9. bool "BCM63XX CFE partitioning parser"
  10. depends on BCM63XX || BMIPS_GENERIC || COMPILE_TEST
  11. select CRC32
  12. select MTD_PARSER_IMAGETAG
  13. help
  14. This provides partition parsing for BCM63xx devices with CFE
  15. bootloaders.
  16. config MTD_BRCM_U_BOOT
  17. tristate "Broadcom's U-Boot partition parser"
  18. depends on ARCH_BCMBCA || COMPILE_TEST
  19. help
  20. Broadcom uses a custom way of storing U-Boot environment variables.
  21. They are placed inside U-Boot partition itself at unspecified offset.
  22. It's possible to locate them by looking for a custom header with a
  23. magic value. This driver does that and creates subpartitions for
  24. each found environment variables block.
  25. config MTD_CMDLINE_PARTS
  26. tristate "Command line partition table parsing"
  27. depends on MTD
  28. help
  29. Allow generic configuration of the MTD partition tables via the kernel
  30. command line. Multiple flash resources are supported for hardware where
  31. different kinds of flash memory are available.
  32. You will still need the parsing functions to be called by the driver
  33. for your particular device. It won't happen automatically. The
  34. SA1100 map driver (CONFIG_MTD_SA1100) has an option for this, for
  35. example.
  36. The format for the command line is as follows:
  37. mtdparts=<mtddef>[;<mtddef]
  38. <mtddef> := <mtd-id>:<partdef>[,<partdef>]
  39. <partdef> := <size>[@offset][<name>][ro]
  40. <mtd-id> := unique id used in mapping driver/device
  41. <size> := standard linux memsize OR "-" to denote all
  42. remaining space
  43. <name> := (NAME)
  44. Due to the way Linux handles the command line, no spaces are
  45. allowed in the partition definition, including mtd id's and partition
  46. names.
  47. Examples:
  48. 1 flash resource (mtd-id "sa1100"), with 1 single writable partition:
  49. mtdparts=sa1100:-
  50. Same flash, but 2 named partitions, the first one being read-only:
  51. mtdparts=sa1100:256k(ARMboot)ro,-(root)
  52. If unsure, say 'N'.
  53. config MTD_OF_PARTS
  54. tristate "OpenFirmware (device tree) partitioning parser"
  55. default y
  56. depends on OF
  57. help
  58. This provides a open firmware device tree partition parser
  59. which derives the partition map from the children of the
  60. flash memory node, as described in
  61. Documentation/devicetree/bindings/mtd/mtd.yaml.
  62. config MTD_OF_PARTS_BCM4908
  63. bool "BCM4908 partitioning support"
  64. depends on MTD_OF_PARTS && (ARCH_BCMBCA || COMPILE_TEST)
  65. default ARCH_BCMBCA
  66. help
  67. This provides partitions parser for BCM4908 family devices
  68. that can have multiple "firmware" partitions. It takes care of
  69. finding currently used one and backup ones.
  70. config MTD_OF_PARTS_LINKSYS_NS
  71. bool "Linksys Northstar partitioning support"
  72. depends on MTD_OF_PARTS && (ARCH_BCM_5301X || ARCH_BCMBCA || COMPILE_TEST)
  73. default ARCH_BCM_5301X
  74. help
  75. This provides partitions parser for Linksys devices based on Broadcom
  76. Northstar architecture. Linksys commonly uses fixed flash layout with
  77. two "firmware" partitions. Currently used firmware has to be detected
  78. using CFE environment variable.
  79. config MTD_PARSER_IMAGETAG
  80. tristate "Parser for BCM963XX Image Tag format partitions"
  81. depends on BCM63XX || BMIPS_GENERIC || COMPILE_TEST
  82. select CRC32
  83. help
  84. Image Tag is the firmware header used by broadcom on their xDSL line
  85. of devices. It is used to describe the offsets and lengths of kernel
  86. and rootfs partitions.
  87. This driver adds support for parsing a partition with an Image Tag
  88. header and creates up to two partitions, kernel and rootfs.
  89. config MTD_AFS_PARTS
  90. tristate "ARM Firmware Suite partition parsing"
  91. depends on (ARM || ARM64)
  92. help
  93. The ARM Firmware Suite allows the user to divide flash devices into
  94. multiple 'images'. Each such image has a header containing its name
  95. and offset/size etc.
  96. If you need code which can detect and parse these tables, and
  97. register MTD 'partitions' corresponding to each image detected,
  98. enable this option.
  99. You will still need the parsing functions to be called by the driver
  100. for your particular device. It won't happen automatically. The
  101. 'physmap' map driver (CONFIG_MTD_PHYSMAP) does this, for example.
  102. config MTD_PARSER_TPLINK_SAFELOADER
  103. tristate "TP-Link Safeloader partitions parser"
  104. depends on MTD && (ARCH_BCM_5301X || ATH79 || SOC_MT7620 || SOC_MT7621 || COMPILE_TEST)
  105. help
  106. TP-Link home routers use flash partitions to store various data. Info
  107. about flash space layout is stored in a partitions table using a
  108. custom ASCII-based format.
  109. That format was first found in devices with SafeLoader bootloader and
  110. was named after it. Later it was adapted to CFE and U-Boot
  111. bootloaders.
  112. This driver reads partitions table, parses it and creates MTD
  113. partitions.
  114. config MTD_PARSER_TRX
  115. tristate "Parser for TRX format partitions"
  116. depends on MTD && (BCM47XX || ARCH_BCM_5301X || ARCH_MEDIATEK || RALINK || COMPILE_TEST)
  117. help
  118. TRX is a firmware format used by Broadcom on their devices. It
  119. may contain up to 3/4 partitions (depending on the version).
  120. This driver will parse TRX header and report at least two partitions:
  121. kernel and rootfs.
  122. config MTD_SHARPSL_PARTS
  123. tristate "Sharp SL Series NAND flash partition parser"
  124. depends on MTD_NAND_SHARPSL || COMPILE_TEST
  125. help
  126. This provides the read-only FTL logic necessary to read the partition
  127. table from the NAND flash of Sharp SL Series (Zaurus) and the MTD
  128. partition parser using this code.
  129. config MTD_REDBOOT_PARTS
  130. tristate "RedBoot partition table parsing"
  131. help
  132. RedBoot is a ROM monitor and bootloader which deals with multiple
  133. 'images' in flash devices by putting a table one of the erase
  134. blocks on the device, similar to a partition table, which gives
  135. the offsets, lengths and names of all the images stored in the
  136. flash.
  137. If you need code which can detect and parse this table, and register
  138. MTD 'partitions' corresponding to each image in the table, enable
  139. this option.
  140. You will still need the parsing functions to be called by the driver
  141. for your particular device. It won't happen automatically. The
  142. SA1100 map driver (CONFIG_MTD_SA1100) has an option for this, for
  143. example.
  144. if MTD_REDBOOT_PARTS
  145. config MTD_REDBOOT_DIRECTORY_BLOCK
  146. int "Location of RedBoot partition table"
  147. default "-1"
  148. help
  149. This option is the Linux counterpart to the
  150. CYGNUM_REDBOOT_FIS_DIRECTORY_BLOCK RedBoot compile time
  151. option.
  152. The option specifies which Flash sectors holds the RedBoot
  153. partition table. A zero or positive value gives an absolute
  154. erase block number. A negative value specifies a number of
  155. sectors before the end of the device.
  156. For example "2" means block number 2, "-1" means the last
  157. block and "-2" means the penultimate block.
  158. config MTD_REDBOOT_PARTS_UNALLOCATED
  159. bool "Include unallocated flash regions"
  160. help
  161. If you need to register each unallocated flash region as a MTD
  162. 'partition', enable this option.
  163. config MTD_REDBOOT_PARTS_READONLY
  164. bool "Force read-only for RedBoot system images"
  165. help
  166. If you need to force read-only for 'RedBoot', 'RedBoot Config' and
  167. 'FIS directory' images, enable this option.
  168. endif # MTD_REDBOOT_PARTS
  169. config MTD_QCOMSMEM_PARTS
  170. tristate "Qualcomm SMEM flash partition parser"
  171. depends on QCOM_SMEM
  172. help
  173. This provides support for parsing partitions from Shared Memory (SMEM)
  174. for NAND and SPI flash on Qualcomm platforms.
  175. config MTD_SERCOMM_PARTS
  176. tristate "Sercomm partition table parser"
  177. depends on MTD && RALINK
  178. help
  179. This provides partitions table parser for devices with Sercomm
  180. partition map. This partition table contains real partition
  181. offsets, which may differ from device to device depending on the
  182. number and location of bad blocks on NAND.