1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only 25a4a335aSLinus Walleijconfig MTD_AR7_PARTS 35a4a335aSLinus Walleij tristate "TI AR7 partitioning parser" 45a4a335aSLinus Walleij help 55a4a335aSLinus Walleij TI AR7 partitioning parser support 65a4a335aSLinus Walleij 711f74023SLinus Walleijconfig MTD_BCM47XX_PARTS 811f74023SLinus Walleij tristate "BCM47XX partitioning parser" 911f74023SLinus Walleij depends on BCM47XX || ARCH_BCM_5301X 1011f74023SLinus Walleij help 1111f74023SLinus Walleij This provides partitions parser for devices based on BCM47xx 1211f74023SLinus Walleij boards. 1311f74023SLinus Walleij 14ac37d352SLinus Walleijconfig MTD_BCM63XX_PARTS 15b597cc75SFlorian Fainelli bool "BCM63XX CFE partitioning parser" 16ac37d352SLinus Walleij depends on BCM63XX || BMIPS_GENERIC || COMPILE_TEST 17ac37d352SLinus Walleij select CRC32 18ac37d352SLinus Walleij select MTD_PARSER_IMAGETAG 19ac37d352SLinus Walleij help 20ac37d352SLinus Walleij This provides partition parsing for BCM63xx devices with CFE 21ac37d352SLinus Walleij bootloaders. 22ac37d352SLinus Walleij 23a3f12a35SLinus Walleijconfig MTD_CMDLINE_PARTS 24a3f12a35SLinus Walleij tristate "Command line partition table parsing" 25a3f12a35SLinus Walleij depends on MTD 26a3f12a35SLinus Walleij help 27a3f12a35SLinus Walleij Allow generic configuration of the MTD partition tables via the kernel 28a3f12a35SLinus Walleij command line. Multiple flash resources are supported for hardware where 29a3f12a35SLinus Walleij different kinds of flash memory are available. 30a3f12a35SLinus Walleij 31a3f12a35SLinus Walleij You will still need the parsing functions to be called by the driver 32a3f12a35SLinus Walleij for your particular device. It won't happen automatically. The 33a3f12a35SLinus Walleij SA1100 map driver (CONFIG_MTD_SA1100) has an option for this, for 34a3f12a35SLinus Walleij example. 35a3f12a35SLinus Walleij 36a3f12a35SLinus Walleij The format for the command line is as follows: 37a3f12a35SLinus Walleij 38a3f12a35SLinus Walleij mtdparts=<mtddef>[;<mtddef] 39a3f12a35SLinus Walleij <mtddef> := <mtd-id>:<partdef>[,<partdef>] 40a3f12a35SLinus Walleij <partdef> := <size>[@offset][<name>][ro] 41a3f12a35SLinus Walleij <mtd-id> := unique id used in mapping driver/device 42a3f12a35SLinus Walleij <size> := standard linux memsize OR "-" to denote all 43a3f12a35SLinus Walleij remaining space 44a3f12a35SLinus Walleij <name> := (NAME) 45a3f12a35SLinus Walleij 46a3f12a35SLinus Walleij Due to the way Linux handles the command line, no spaces are 47a3f12a35SLinus Walleij allowed in the partition definition, including mtd id's and partition 48a3f12a35SLinus Walleij names. 49a3f12a35SLinus Walleij 50a3f12a35SLinus Walleij Examples: 51a3f12a35SLinus Walleij 52a3f12a35SLinus Walleij 1 flash resource (mtd-id "sa1100"), with 1 single writable partition: 53a3f12a35SLinus Walleij mtdparts=sa1100:- 54a3f12a35SLinus Walleij 55a3f12a35SLinus Walleij Same flash, but 2 named partitions, the first one being read-only: 56a3f12a35SLinus Walleij mtdparts=sa1100:256k(ARMboot)ro,-(root) 57a3f12a35SLinus Walleij 58a3f12a35SLinus Walleij If unsure, say 'N'. 59a3f12a35SLinus Walleij 60c5da56f7SLinus Walleijconfig MTD_OF_PARTS 61c5da56f7SLinus Walleij tristate "OpenFirmware (device tree) partitioning parser" 62c5da56f7SLinus Walleij default y 63c5da56f7SLinus Walleij depends on OF 64c5da56f7SLinus Walleij help 65c5da56f7SLinus Walleij This provides a open firmware device tree partition parser 66c5da56f7SLinus Walleij which derives the partition map from the children of the 67c5da56f7SLinus Walleij flash memory node, as described in 68c5da56f7SLinus Walleij Documentation/devicetree/bindings/mtd/partition.txt. 69c5da56f7SLinus Walleij 70bb17230cSRafał Miłeckiconfig MTD_OF_PARTS_BCM4908 71bb17230cSRafał Miłecki bool "BCM4908 partitioning support" 72bb17230cSRafał Miłecki depends on MTD_OF_PARTS && (ARCH_BCM4908 || COMPILE_TEST) 73bb17230cSRafał Miłecki default ARCH_BCM4908 74bb17230cSRafał Miłecki help 75bb17230cSRafał Miłecki This provides partitions parser for BCM4908 family devices 76bb17230cSRafał Miłecki that can have multiple "firmware" partitions. It takes care of 77bb17230cSRafał Miłecki finding currently used one and backup ones. 78bb17230cSRafał Miłecki 797134a2d0SRafał Miłeckiconfig MTD_OF_PARTS_LINKSYS_NS 807134a2d0SRafał Miłecki bool "Linksys Northstar partitioning support" 817134a2d0SRafał Miłecki depends on MTD_OF_PARTS && (ARCH_BCM_5301X || ARCH_BCM4908 || COMPILE_TEST) 827134a2d0SRafał Miłecki default ARCH_BCM_5301X 837134a2d0SRafał Miłecki help 847134a2d0SRafał Miłecki This provides partitions parser for Linksys devices based on Broadcom 857134a2d0SRafał Miłecki Northstar architecture. Linksys commonly uses fixed flash layout with 867134a2d0SRafał Miłecki two "firmware" partitions. Currently used firmware has to be detected 877134a2d0SRafał Miłecki using CFE environment variable. 887134a2d0SRafał Miłecki 89dd84cb02SJonas Gorskiconfig MTD_PARSER_IMAGETAG 90dd84cb02SJonas Gorski tristate "Parser for BCM963XX Image Tag format partitions" 91dd84cb02SJonas Gorski depends on BCM63XX || BMIPS_GENERIC || COMPILE_TEST 92dd84cb02SJonas Gorski select CRC32 93dd84cb02SJonas Gorski help 94dd84cb02SJonas Gorski Image Tag is the firmware header used by broadcom on their xDSL line 95dd84cb02SJonas Gorski of devices. It is used to describe the offsets and lengths of kernel 96dd84cb02SJonas Gorski and rootfs partitions. 97dd84cb02SJonas Gorski This driver adds support for parsing a partition with an Image Tag 98dd84cb02SJonas Gorski header and creates up to two partitions, kernel and rootfs. 99dd84cb02SJonas Gorski 1002aa3b8e1SLinus Walleijconfig MTD_AFS_PARTS 1012aa3b8e1SLinus Walleij tristate "ARM Firmware Suite partition parsing" 1022aa3b8e1SLinus Walleij depends on (ARM || ARM64) 1032aa3b8e1SLinus Walleij help 1042aa3b8e1SLinus Walleij The ARM Firmware Suite allows the user to divide flash devices into 1052aa3b8e1SLinus Walleij multiple 'images'. Each such image has a header containing its name 1062aa3b8e1SLinus Walleij and offset/size etc. 1072aa3b8e1SLinus Walleij 1082aa3b8e1SLinus Walleij If you need code which can detect and parse these tables, and 1092aa3b8e1SLinus Walleij register MTD 'partitions' corresponding to each image detected, 1102aa3b8e1SLinus Walleij enable this option. 1112aa3b8e1SLinus Walleij 1122aa3b8e1SLinus Walleij You will still need the parsing functions to be called by the driver 1132aa3b8e1SLinus Walleij for your particular device. It won't happen automatically. The 1142aa3b8e1SLinus Walleij 'physmap' map driver (CONFIG_MTD_PHYSMAP) does this, for example. 1152aa3b8e1SLinus Walleij 11699352afeSRafał Miłeckiconfig MTD_PARSER_TRX 11799352afeSRafał Miłecki tristate "Parser for TRX format partitions" 118*2365f91cSINAGAKI Hiroshi depends on MTD && (BCM47XX || ARCH_BCM_5301X || ARCH_MEDIATEK || RALINK || COMPILE_TEST) 11999352afeSRafał Miłecki help 12099352afeSRafał Miłecki TRX is a firmware format used by Broadcom on their devices. It 12199352afeSRafał Miłecki may contain up to 3/4 partitions (depending on the version). 12299352afeSRafał Miłecki This driver will parse TRX header and report at least two partitions: 12399352afeSRafał Miłecki kernel and rootfs. 1248a4580e4SAndrea Adami 1258a4580e4SAndrea Adamiconfig MTD_SHARPSL_PARTS 1268a4580e4SAndrea Adami tristate "Sharp SL Series NAND flash partition parser" 1278a4580e4SAndrea Adami depends on MTD_NAND_SHARPSL || MTD_NAND_TMIO || COMPILE_TEST 1288a4580e4SAndrea Adami help 1298a4580e4SAndrea Adami This provides the read-only FTL logic necessary to read the partition 1308a4580e4SAndrea Adami table from the NAND flash of Sharp SL Series (Zaurus) and the MTD 1318a4580e4SAndrea Adami partition parser using this code. 13243f1fd01SLinus Walleij 13343f1fd01SLinus Walleijconfig MTD_REDBOOT_PARTS 13443f1fd01SLinus Walleij tristate "RedBoot partition table parsing" 13543f1fd01SLinus Walleij help 13643f1fd01SLinus Walleij RedBoot is a ROM monitor and bootloader which deals with multiple 13743f1fd01SLinus Walleij 'images' in flash devices by putting a table one of the erase 13843f1fd01SLinus Walleij blocks on the device, similar to a partition table, which gives 13943f1fd01SLinus Walleij the offsets, lengths and names of all the images stored in the 14043f1fd01SLinus Walleij flash. 14143f1fd01SLinus Walleij 14243f1fd01SLinus Walleij If you need code which can detect and parse this table, and register 14343f1fd01SLinus Walleij MTD 'partitions' corresponding to each image in the table, enable 14443f1fd01SLinus Walleij this option. 14543f1fd01SLinus Walleij 14643f1fd01SLinus Walleij You will still need the parsing functions to be called by the driver 14743f1fd01SLinus Walleij for your particular device. It won't happen automatically. The 14843f1fd01SLinus Walleij SA1100 map driver (CONFIG_MTD_SA1100) has an option for this, for 14943f1fd01SLinus Walleij example. 15043f1fd01SLinus Walleij 15143f1fd01SLinus Walleijif MTD_REDBOOT_PARTS 15243f1fd01SLinus Walleij 15343f1fd01SLinus Walleijconfig MTD_REDBOOT_DIRECTORY_BLOCK 15443f1fd01SLinus Walleij int "Location of RedBoot partition table" 15543f1fd01SLinus Walleij default "-1" 15643f1fd01SLinus Walleij help 15743f1fd01SLinus Walleij This option is the Linux counterpart to the 15843f1fd01SLinus Walleij CYGNUM_REDBOOT_FIS_DIRECTORY_BLOCK RedBoot compile time 15943f1fd01SLinus Walleij option. 16043f1fd01SLinus Walleij 16143f1fd01SLinus Walleij The option specifies which Flash sectors holds the RedBoot 16243f1fd01SLinus Walleij partition table. A zero or positive value gives an absolute 16343f1fd01SLinus Walleij erase block number. A negative value specifies a number of 16443f1fd01SLinus Walleij sectors before the end of the device. 16543f1fd01SLinus Walleij 16643f1fd01SLinus Walleij For example "2" means block number 2, "-1" means the last 16743f1fd01SLinus Walleij block and "-2" means the penultimate block. 16843f1fd01SLinus Walleij 16943f1fd01SLinus Walleijconfig MTD_REDBOOT_PARTS_UNALLOCATED 17043f1fd01SLinus Walleij bool "Include unallocated flash regions" 17143f1fd01SLinus Walleij help 17243f1fd01SLinus Walleij If you need to register each unallocated flash region as a MTD 17343f1fd01SLinus Walleij 'partition', enable this option. 17443f1fd01SLinus Walleij 17543f1fd01SLinus Walleijconfig MTD_REDBOOT_PARTS_READONLY 17643f1fd01SLinus Walleij bool "Force read-only for RedBoot system images" 17743f1fd01SLinus Walleij help 17843f1fd01SLinus Walleij If you need to force read-only for 'RedBoot', 'RedBoot Config' and 17943f1fd01SLinus Walleij 'FIS directory' images, enable this option. 18043f1fd01SLinus Walleij 18143f1fd01SLinus Walleijendif # MTD_REDBOOT_PARTS 182803eb124SManivannan Sadhasivam 183803eb124SManivannan Sadhasivamconfig MTD_QCOMSMEM_PARTS 1841ca890d3SBaruch Siach tristate "Qualcomm SMEM flash partition parser" 185803eb124SManivannan Sadhasivam depends on QCOM_SMEM 186803eb124SManivannan Sadhasivam help 187803eb124SManivannan Sadhasivam This provides support for parsing partitions from Shared Memory (SMEM) 1881ca890d3SBaruch Siach for NAND and SPI flash on Qualcomm platforms. 189