aboutsummaryrefslogtreecommitdiff
path: root/Documentation/devicetree/bindings/mtd/partitions
AgeCommit message (Collapse)AuthorFilesLines
2024-04-15dt-bindings: mtd: fixed-partition: Add binman compatiblesSimon Glass2-0/+74
Add two compatibles for binman entries, as a starting point for the schema. Note that, after discussion on v2, we decided to keep the existing meaning of label so as not to require changes to existing userspace software when moving to use binman nodes to specify the firmware layout. Note also that, after discussion on v6, we decided to use the same 'fixed-partition' schema for the binman features, so this version adds a new 'binman.yaml' file providing the new compatibles to the existing partition.yaml binding. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Rob Herring <[email protected]> Signed-off-by: Miquel Raynal <[email protected]> Link: https://lore.kernel.org/linux-mtd/[email protected]
2024-04-15dt-bindings: mtd: fixed-partitions: Add alignment propertiesSimon Glass1-0/+51
Add three properties for controlling alignment of partitions, aka 'entries' in fixed-partition. For now there is no explicit mention of hierarchy, so a 'section' is just the 'fixed-partitions' node. These new properties are inputs to the Binman packaging process, but are also needed if the firmware is repacked, to ensure that alignment constraints are not violated. Therefore they are provided as part of the schema. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Rob Herring <[email protected]> Signed-off-by: Miquel Raynal <[email protected]> Link: https://lore.kernel.org/linux-mtd/[email protected]
2024-02-25dt-bindings: mtd: ubi-volume: allow UBI volumes to provide NVMEMDaniel Golle2-0/+15
UBI volumes may be used to contain NVMEM bits, typically device MAC addresses or wireless radio calibration data. Signed-off-by: Daniel Golle <[email protected]> Reviewed-by: Rob Herring <[email protected]> Signed-off-by: Richard Weinberger <[email protected]>
2024-02-25dt-bindings: mtd: add basic bindings for UBIDaniel Golle2-0/+100
Add basic bindings for UBI devices and volumes. Signed-off-by: Daniel Golle <[email protected]> Reviewed-by: Rob Herring <[email protected]> Signed-off-by: Richard Weinberger <[email protected]>
2023-12-22dt-bindings: mtd: partitions: u-boot: Fix typoStefan Wahren1-1/+1
The initial description contained a typo. Signed-off-by: Stefan Wahren <[email protected]> Acked-by: Rob Herring <[email protected]> Signed-off-by: Miquel Raynal <[email protected]> Link: https://lore.kernel.org/linux-mtd/[email protected]
2023-11-04Merge tag 'mtd/for-6.7' of ↵Linus Torvalds1-0/+19
git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux Pull mtd updates from Miquel Raynal: "The main set of changes is related to Uwe's work converting platform remove callbacks to return void. Comes next (in number of changes) Kees' additional structures annotations to improve the sanitizers. The usual amount of cleanups apply. About the more substancial contribution, one main function of the partitions core could return an error which was not checked, this is now fixed. On the bindings side, fixed partitions can now have a compression property. Finally, an erroneous situation is now always avoided in the MAP RAM driver. CFI: - A several years old byte swap has been fixed. NAND: - The subsystem has, as usual, seen a bit of cleanup being done this cycle, typically return values of platform_get_irq() and devm_kasprintf(). There is also a better ECC check in the Arasan driver. This comes with smaller misc changes. - In the SPI-NAND world there is now support for Foresee F35SQA002G, Winbond W25N and XTX XT26 chips. SPI NOR: - For SPI NOR we cleaned the flash info entries in order to have them slimmer and self explanatory. In order to make the entries as slim as possible, we introduced sane default values so that the actual flash entries don't need to specify them. We now use a flexible macro to specify the flash ID instead of the previous INFOx() macros that had hardcoded ID lengths. Instead of: { "w25q512nwm", INFO(0xef8020, 0, 64 * 1024, 0) OTP_INFO(256, 3, 0x1000, 0x1000) }, We now use: .id = SNOR_ID(0xef, 0x80, 0x20), .name = "w25q512nwm", .otp = SNOR_OTP(256, 3, 0x1000, 0x1000), - We also removed some flash entries: the very old Catalyst SPI EEPROMs that were introduced once with the SPI-NOR subsystem, and a Fujitsu MRAM. Both should use the at25 EEPROM driver. The latter even has device tree bindings for the at25 driver. - We made sure that the conversion didn't introduce any unwanted changes by comparing the .rodata segment before and after the conversion. The patches landed in linux-next immediately after v6.6-rc2, we haven't seen any regressions yet. - Apart of the autumn cleaning we introduced a new flash entry, at25ff321a, and added block protection support for mt25qu512a" * tag 'mtd/for-6.7' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux: (91 commits) mtd: cfi_cmdset_0001: Byte swap OTP info mtd: rawnand: meson: check return value of devm_kasprintf() mtd: rawnand: intel: check return value of devm_kasprintf() mtd: rawnand: sh_flctl: Convert to module_platform_driver() mtd: spi-nor: micron-st: use SFDP table for mt25qu512a mtd: spi-nor: micron-st: enable lock/unlock for mt25qu512a mtd: rawnand: Remove unused of_gpio.h inclusion mtd: spinand: Add support for XTX XT26xxxDxxxxx mtd: spinand: winbond: add support for serial NAND flash mtd: rawnand: cadence: Annotate struct cdns_nand_chip with __counted_by mtd: rawnand: Annotate struct mtk_nfc_nand_chip with __counted_by mtd: spinand: add support for FORESEE F35SQA002G mtd: rawnand: rockchip: Use struct_size() mtd: rawnand: arasan: Include ECC syndrome along with in-band data while checking for ECC failure mtd: Use device_get_match_data() mtd: spi-nor: nxp-spifi: Convert to platform remove callback returning void mtd: spi-nor: hisi-sfc: Convert to platform remove callback returning void mtd: maps: sun_uflash: Convert to platform remove callback returning void mtd: maps: sa1100-flash: Convert to platform remove callback returning void mtd: maps: pxa2xx-flash: Convert to platform remove callback returning void ...
2023-10-21dt-bindings: nvmem: move deprecated cells binding to its own fileRafał Miłecki1-0/+1
Support for old NVMEM fixed cells was deprecated in favour of "fixed-layout". It's still part of the nvmem.yaml though and may be unknowingly used by new bindings added without much of analyze. To make it more difficult to accidentally support old syntax move its binding to separated file with "deprecated" in its name. Signed-off-by: Rafał Miłecki <[email protected]> Acked-by: Neil Armstrong <[email protected]> Reviewed-by: Rob Herring <[email protected]> Acked-by: Heiko Stuebner <[email protected]> Signed-off-by: Srinivas Kandagatla <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Greg Kroah-Hartman <[email protected]>
2023-10-16dt-bindings: mtd: fixed-partitions: Add compression propertySimon Glass1-0/+19
Sometimes the contents of a partition are compressed. Add a property to express this and define the algorithm used. Signed-off-by: Simon Glass <[email protected]> Signed-off-by: Miquel Raynal <[email protected]> Link: https://lore.kernel.org/linux-mtd/[email protected]
2023-07-15dt-bindings: mtd: Add SEAMA partition bindingsLinus Walleij1-0/+44
This types of NAND partitions appear in OpenWrt and U-Boot. Signed-off-by: Linus Walleij <[email protected]> Reviewed-by: Rob Herring <[email protected]> Signed-off-by: Miquel Raynal <[email protected]> Link: https://lore.kernel.org/linux-mtd/[email protected]
2023-06-19dt-bindings: mtd: partition: Add missing type for "linux,rootfs"Rob Herring1-0/+1
"linux,rootfs" is missing a type, add it. Signed-off-by: Rob Herring <[email protected]> Reviewed-by: Conor Dooley <[email protected]> Signed-off-by: Miquel Raynal <[email protected]> Link: https://lore.kernel.org/linux-mtd/[email protected]
2023-06-09dt-bindings: mtd: partitions: Include TP-Link SafeLoader in allowed listRafał Miłecki1-0/+1
It's supposed to be there and it's needed for proper validation of DTS files. This fixes following errors for Northstar based TP-Link routers: arch/arm/boot/dts/bcm47081-tplink-archer-c5-v2.dtb: flash@0: partitions: 'oneOf' conditional failed, one must be fixed: 'partition-file-system', 'partition-os-image', 'partitions-table-offset' do not match any of the regexes: 'pinctrl-[0-9]+' '#address-cells' is a required property '#size-cells' is a required property 'partition-file-system', 'partition-os-image', 'partitions-table-offset' do not match any of the regexes: '^partition@[0-9a-f]+$', 'pinctrl-[0-9]+' 'partition-file-system', 'partition-os-image', 'partitions-table-offset' do not match any of the regexes: '^partition-[0-9a-z]+$', 'pinctrl-[0-9]+' 'fis-index-block' is a required property arch/arm/boot/dts/bcm47081-tplink-archer-c5-v2.dtb: flash@0: partitions:compatible: 'oneOf' conditional failed, one must be fixed: ['tplink,safeloader-partitions'] is too short 'fixed-partitions' was expected 'sercomm,sc-partitions' was expected 'arm,arm-firmware-suite' was expected 'brcm,bcm4908-partitions' was expected 'brcm,bcm947xx-cfe-partitions' was expected 'linksys,ns-partitions' was expected 'qcom,smem-part' was expected 'redboot-fis' was expected From schema: Documentation/devicetree/bindings/mtd/mtd.yaml arch/arm/boot/dts/bcm47081-tplink-archer-c5-v2.dtb: flash@0: partitions: Unevaluated properties are not allowed ('partitions-table-offset' was unexpected) From schema: Documentation/devicetree/bindings/mtd/mtd.yaml arch/arm/boot/dts/bcm47081-tplink-archer-c5-v2.dtb: flash@0: partitions: 'oneOf' conditional failed, one must be fixed: 'partition-file-system', 'partition-os-image', 'partitions-table-offset' do not match any of the regexes: 'pinctrl-[0-9]+' '#address-cells' is a required property '#size-cells' is a required property 'partition-file-system', 'partition-os-image', 'partitions-table-offset' do not match any of the regexes: '^partition@[0-9a-f]+$', 'pinctrl-[0-9]+' 'partition-file-system', 'partition-os-image', 'partitions-table-offset' do not match any of the regexes: '^partition-[0-9a-z]+$', 'pinctrl-[0-9]+' 'fis-index-block' is a required property arch/arm/boot/dts/bcm47081-tplink-archer-c5-v2.dtb: flash@0: partitions:compatible: 'oneOf' conditional failed, one must be fixed: ['tplink,safeloader-partitions'] is too short 'fixed-partitions' was expected 'sercomm,sc-partitions' was expected 'arm,arm-firmware-suite' was expected 'brcm,bcm4908-partitions' was expected 'brcm,bcm947xx-cfe-partitions' was expected 'linksys,ns-partitions' was expected 'qcom,smem-part' was expected 'redboot-fis' was expected From schema: Documentation/devicetree/bindings/mtd/jedec,spi-nor.yaml arch/arm/boot/dts/bcm47081-tplink-archer-c5-v2.dtb: flash@0: partitions: Unevaluated properties are not allowed ('partitions-table-offset' was unexpected) From schema: Documentation/devicetree/bindings/mtd/jedec,spi-nor.yaml arch/arm/boot/dts/bcm47081-tplink-archer-c5-v2.dtb: flash@0: Unevaluated properties are not allowed ('partitions' was unexpected) From schema: Documentation/devicetree/bindings/mtd/jedec,spi-nor.yaml Signed-off-by: Rafał Miłecki <[email protected]> Acked-by: Conor Dooley <[email protected]> Signed-off-by: Miquel Raynal <[email protected]> Link: https://lore.kernel.org/linux-mtd/[email protected]
2023-03-28dt-bindings: mtd: Drop unneeded quotesRob Herring2-2/+2
Cleanup bindings dropping unneeded quotes. Once all these are fixed, checking for this can be enabled in yamllint. Signed-off-by: Rob Herring <[email protected]> Acked-by: Jernej Skrabec <[email protected]> Reviewed-by: Krzysztof Kozlowski <[email protected]> Reviewed-by: Linus Walleij <[email protected]> Reviewed-by: Heiko Stuebner <[email protected]> #rockchip Signed-off-by: Miquel Raynal <[email protected]> Link: https://lore.kernel.org/linux-mtd/[email protected]
2023-01-30dt-bindings: mtd: partitions: Fix partition node name patternRob Herring1-1/+1
The 'partition' node name pattern is missing start and end anchors, so anything is allowed before or after the regex pattern. There's no in tree users needing that, so add anchors to the pattern. Signed-off-by: Rob Herring <[email protected]> Reviewed-by: Pratyush Yadav <[email protected]> Reviewed-by: Dhruva Gole <[email protected]> Signed-off-by: Miquel Raynal <[email protected]> Link: https://lore.kernel.org/linux-mtd/[email protected]
2022-12-16dt-bindings: drop redundant part of title (end, part three)Krzysztof Kozlowski1-1/+1
The Devicetree bindings document does not have to say in the title that it is a "binding", but instead just describe the hardware. Drop trailing "bindings" in various forms (also with trailing full stop): find Documentation/devicetree/bindings/ -type f -name '*.yaml' \ -not -name 'trivial-devices.yaml' \ -exec sed -i -e 's/^title: \(.*\) [bB]indings\?\.\?$/title: \1/' {} \; Signed-off-by: Krzysztof Kozlowski <[email protected]> Acked-by: Alexandre Belloni <[email protected]> Acked-by: Matti Vaittinen <[email protected]> # ROHM Acked-by: Ulf Hansson <[email protected]> # MMC Acked-by: Stephen Boyd <[email protected]> # clk Acked-by: Dmitry Torokhov <[email protected]> # input Acked-by: Mark Brown <[email protected]> Acked-by: Hans Verkuil <[email protected]> # media Acked-by: Sebastian Reichel <[email protected]> # power Acked-by: Viresh Kumar <[email protected]> # cpufreq Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Rob Herring <[email protected]>
2022-12-13Merge tag 'devicetree-for-6.2' of ↵Linus Torvalds1-0/+7
git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux Pull devicetree updates from Rob Herring: "DT Bindings: - Various LED binding conversions and clean-ups. Convert the ir-spi-led, pwm-ir-tx, and gpio-ir-tx LED bindings to schemas. Consistently reference LED common.yaml or multi-led schemas and disallow undefined properties. - Convert IDT 89HPESx, pwm-clock, st,stmipid02, Xilinx PCIe hosts, and fsl,imx-fb bindings to schema - Add ata-generic, Broadcom u-boot environment, and dynamic MTD sub-partitions bindings. - Make all SPI based displays reference spi-peripheral-props.yaml - Fix some schema property regex's which should be fixed strings or were missing start/end anchors - Remove 'status' in examples, again... DT Core: - Fix a possible NULL dereference in overlay functions - Fix kexec reading 32-bit "linux,initrd-{start,end}" values (which never worked) - Add of_address_count() helper to count number of 'reg' entries - Support .dtso extension for DT overlay source files. Rename staging and unittest overlay files. - Update dtc to upstream v1.6.1-63-g55778a03df61" * tag 'devicetree-for-6.2' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux: (42 commits) dt-bindings: leds: Add missing references to common LED schema dt-bindings: leds: intel,lgm: Add missing 'led-gpios' property of: overlay: fix null pointer dereferencing in find_dup_cset_node_entry() and find_dup_cset_prop() dt-bindings: lcdif: Fix constraints for imx8mp media: dt-bindings: atmel,isc: Drop unneeded unevaluatedProperties dt-bindings: Drop Jee Heng Sia dt-bindings: thermal: cooling-devices: Add missing cache related properties dt-bindings: leds: irled: ir-spi-led: convert to DT schema dt-bindings: leds: irled: pwm-ir-tx: convert to DT schema dt-bindings: leds: irled: gpio-ir-tx: convert to DT schema dt-bindings: leds: mt6360: rework to match multi-led dt-bindings: leds: lp55xx: rework to match multi-led dt-bindings: leds: lp55xx: switch to preferred 'gpios' suffix dt-bindings: leds: lp55xx: allow label dt-bindings: leds: use unevaluatedProperties for common.yaml dt-bindings: thermal: tsens: Add SM6115 compatible of/kexec: Fix reading 32-bit "linux,initrd-{start,end}" values dt-bindings: display: Convert fsl,imx-fb.txt to dt-schema dt-bindings: Add missing start and/or end of line regex anchors dt-bindings: qcom,pdc: Add missing compatibles ...
2022-11-17dt-bindings: mtd: fixed-partitions: Fix 'sercomm,scpart-id' schemaRob Herring1-18/+11
The schema for 'sercomm,scpart-id' is broken. The 'if' condition is never true because 'compatible' is in the parent node, not the child node the sub-schema applies to. The example passes as there are no constraints on additional/unevaluated properties. That's a secondary issue which is complicated due to nested partitions. Drop the if/then schema and the unnecessary 'allOf' so that the 'sercomm,scpart-id' property is at least defined. Cc: Mikhail Zhilkin <[email protected]> Signed-off-by: Rob Herring <[email protected]> Signed-off-by: Miquel Raynal <[email protected]> Link: https://lore.kernel.org/linux-mtd/[email protected]
2022-11-17dt-bindings: mtd: Standardize the style in the examplesMiquel Raynal1-17/+17
As recently requested by the binding maintaines, let's use 4 spaces in the examples. Signed-off-by: Miquel Raynal <[email protected]> Reviewed-by: Rob Herring <[email protected]> Link: https://lore.kernel.org/linux-mtd/[email protected]
2022-11-17dt-bindings: mtd: Argue in favor of keeping additionalProperties set to trueMiquel Raynal1-0/+1
In most cases we try to avoid it but in some cases this is needed. Clarify why by adding a small comment. Signed-off-by: Miquel Raynal <[email protected]> Reviewed-by: Rob Herring <[email protected]> Link: https://lore.kernel.org/linux-mtd/[email protected]
2022-11-17dt-bindings: mtd: nvmem-cells: Inherit from MTD partitionsMiquel Raynal1-1/+2
The aim of MTD nvmem-cells is to treat MTD partitions as NVMEM providers. Hence, MTD partition properties are valid here. Let's reference mtd/partition.yaml which gives us a chance to drop "additionalProperties: true" in favor of "unevaluatedProperties: false". Signed-off-by: Miquel Raynal <[email protected]> Reviewed-by: Rob Herring <[email protected]> Link: https://lore.kernel.org/linux-mtd/[email protected]
2022-11-17dt-bindings: mtd: nvmem-cells: Drop range property from exampleMiquel Raynal1-1/+0
Memory mapped devices such as parallel NOR flash could make use of the 'ranges' property to translate a nvmem 'reg' cell address to a CPU address but in practice there is no upstream user nor any declaration of this property being valid in this case yet, leading to a warning when constraining a bit more the schema: .../mtd/partitions/nvmem-cells.example.dtb: calibration@f00000: Unevaluated properties are not allowed ('ranges' was unexpected) So let's drop the property from the example, knowing that someone might actually properly define it some day. Signed-off-by: Miquel Raynal <[email protected]> Reviewed-by: Rob Herring <[email protected]> Link: https://lore.kernel.org/linux-mtd/[email protected]
2022-11-17dt-bindings: mtd: partitions: Change qcom,smem-part partition typeMiquel Raynal1-1/+1
As described in dd638202dfb6 ("dt-bindings: mtd: partitions: add additional example for qcom,smem-part"), the aim of documenting the subnodes was to be able to declare nvmem cells. Hence, the partition property does not really apply directly here, let's instead reference nvmem-cells.yaml first. Signed-off-by: Miquel Raynal <[email protected]> Reviewed-by: Rob Herring <[email protected]> Link: https://lore.kernel.org/linux-mtd/[email protected]
2022-11-17dt-bindings: mtd: partitions: Constrain the list of parsersMiquel Raynal7-2/+26
Parser compatibles cannot be used anywhere, and the list is limited. In order to constrain this list, enumerate them all under the top "partitions" subnode. New parsers will have to add their own compatible here as well. Signed-off-by: Miquel Raynal <[email protected]> Reviewed-by: Rob Herring <[email protected]> Link: https://lore.kernel.org/linux-mtd/[email protected]
2022-11-17dt-bindings: mtd: Clarify all partition subnodesMiquel Raynal1-0/+33
Over time the various ways to define MTD partitions has evolved. Most of the controllers support several different bindings. Let's define all possible choices in one file and mark the legacy ones deprecated. This way, we can just reference this file and avoid dupplicating these definitions. Signed-off-by: Miquel Raynal <[email protected]> Reviewed-by: Rob Herring <[email protected]> Link: https://lore.kernel.org/linux-mtd/[email protected]
2022-11-17dt-bindings: mtd: partitions: allow SafeLoader dynamic subpartitionsRafał Miłecki1-0/+8
TP-Link SafeLoader partitioning means flash contains multiple partitions defined in the on-flash table. Some of those partitions may have a special meaning and may require describing additionally. Allow that. Signed-off-by: Rafał Miłecki <[email protected]> Reviewed-by: Rob Herring <[email protected]> Signed-off-by: Miquel Raynal <[email protected]> Link: https://lore.kernel.org/linux-mtd/[email protected]
2022-11-07dt-bindings: mtd: partitions: support marking rootfs partitionRafał Miłecki2-0/+5
Linux needs to know what to use as root device. On embedded devices with flash the only common way to specify that is cmdline & root= parameter. That solution works with U-Boot which is Linux & cmdline aware but isn't available with all market bootloaders. Also that method is fragile: 1. Requires specific probing order on multi-flash devices 2. Uses hardcoded partitions indexes A lot of devices use different partitioning methods. It may be "fixed-partitions" or some dynamic partitioning (e.g. based on parts table). For such cases allow "linux,rootfs" property to mark correct flash partition. Signed-off-by: Rafał Miłecki <[email protected]> Reviewed-by: Rob Herring <[email protected]> Signed-off-by: Miquel Raynal <[email protected]> Link: https://lore.kernel.org/linux-mtd/[email protected]
2022-11-07dt-bindings: mtd: partitions: add TP-Link SafeLoader layoutRafał Miłecki1-0/+49
Most TP-Link home routers use the same partitioning system based on a custom ASCII table. It doesn't seem to have any official name. GPL sources contain tool named simply "make_flash" and Makefile target "FlashMaker". This partitions table format was first found in devices with a custom SafeLoader bootloader so it was called SafeLoader by a community. Later it was ported to other bootloaders but it seems the name sticked. Add binding for describing flashes with SafeLoader partitions table. It allows operating systems to parse it properly and register proper flash layout. Signed-off-by: Rafał Miłecki <[email protected]> Reviewed-by: Rob Herring <[email protected]> Signed-off-by: Miquel Raynal <[email protected]> Link: https://lore.kernel.org/linux-mtd/[email protected]
2022-10-31dt-bindings: mtd: partitions: u-boot: allow dynamic subpartitionsRafał Miłecki1-0/+7
U-Boot partition may contain subpartitions. For example Broadcom includes environment data block in the middle of its U-Boot partition. This allows describing Broadcom's U-Boot env data and will allow referencing its NVMEM cell in the future. Ref: 118f3fbe517f4 ("dt-bindings: mtd: partitions: support label/name only partition") Ref: dd638202dfb65 ("dt-bindings: mtd: partitions: add additional example for qcom,smem-part") Signed-off-by: Rafał Miłecki <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Rob Herring <[email protected]>
2022-09-19dt-bindings: mtd: partitions: add binding for U-Boot bootloaderRafał Miłecki1-0/+49
Right now there is no (known) real reason for a custom binding for standard U-Boot partitions. Broadcom's U-Boot however requires extra handling - looking for environment variables subblocks. This commit adds Broadcom specific binding. Signed-off-by: Rafał Miłecki <[email protected]> Reviewed-by: Rob Herring <[email protected]> Signed-off-by: Miquel Raynal <[email protected]> Link: https://lore.kernel.org/linux-mtd/[email protected]
2022-08-05Merge tag 'mtd/for-5.20' of ↵Linus Torvalds2-2/+45
git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux Pull MTD updates from Richard Weinberger: "MTD core changes: - Dynamic partition support - Fix deadlock in sm_ftl - Various refcount fixes in maps, partitions and parser code - Integer overflow fixes in mtdchar - Support for Sercomm partitions NAND driver changes: - Clockrate fix for arasan - Add ATO25D1GA support - Double free fix for meson driver - Fix probe/remove methods in cafe NAND - Support unprotected spare data pages in qcom_nandc SPI NOR core changes: - move SECT_4K_PMC flag out of the core as it's a vendor specific flag - s/addr_width/addr_nbytes/g: address width means the number of IO lines used for the address, whereas in the code it is used as the number of address bytes. - do not change nor->addr_nbytes at SFDP parsing time. At the SFDP parsing time we should not change members of struct spi_nor, but instead fill members of struct spi_nor_flash_parameters which could later on be used by the callers. - track flash's internal address mode so that we can use 4B opcodes together with opcodes that don't have a 4B opcode correspondent. SPI NOR manufacturer drivers changes: - esmt: Rename "f25l32qa" flash name to "f25l32qa-2s". - micron-st: Skip FSR reading if SPI controller does not support it to allow flashes that support FSR to work even when attached to such SPI controllers. - spansion: Add s25hl-t/s25hs-t IDs and fixups" * tag 'mtd/for-5.20' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux: (53 commits) mtd: core: check partition before dereference mtd: spi-nor: fix spi_nor_spimem_setup_op() call in spi_nor_erase_{sector,chip}() mtd: spi-nor: spansion: Add s25hl-t/s25hs-t IDs and fixups mtd: spi-nor: spansion: Add local function to discover page size mtd: spi-nor: core: Track flash's internal address mode mtd: spi-nor: core: Return error code from set_4byte_addr_mode() mtd: spi-nor: Do not change nor->addr_nbytes at SFDP parsing time mtd: spi-nor: core: Shrink the storage size of the flash_info's addr_nbytes mtd: spi-nor: s/addr_width/addr_nbytes mtd: spi-nor: esmt: Use correct name of f25l32qa mtd: spi-nor: micron-st: Skip FSR reading if SPI controller does not support it MAINTAINERS: Use my kernel.org email mtd: rawnand: arasan: Fix clock rate in NV-DDR mtd: rawnand: arasan: Update NAND bus clock instead of system clock mtd: core: introduce of support for dynamic partitions dt-bindings: mtd: partitions: add additional example for qcom,smem-part dt-bindings: mtd: partitions: support label/name only partition mtd: spi-nor: move SECT_4K_PMC special handling mtd: dataflash: Add SPI ID table mtd: hyperbus: rpc-if: Fix RPM imbalance in probe error path ...
2022-07-11dt-bindings: mtd/partitions: Convert arm-firmware-suite to DT schemaRob Herring2-17/+28
Convert the arm,arm-firmware-suite partition binding to DT schema format. Simple conversion as there's only a compatible property. Reviewed-by: Linus Walleij <[email protected]> Signed-off-by: Rob Herring <[email protected]> Reviewed-by: Miquel Raynal <[email protected]> Link: https://lore.kernel.org/r/[email protected]
2022-06-29dt-bindings: mtd: partitions: add additional example for qcom,smem-partChristian Marangi1-0/+27
Add additional example for qcom,smem-part to declare a dynamic partition to provide NVMEM cells for the commonly ART partition provided by this parser. Signed-off-by: Christian Marangi <[email protected]> Reviewed-by: Rob Herring <[email protected]> Signed-off-by: Miquel Raynal <[email protected]> Link: https://lore.kernel.org/linux-mtd/[email protected]
2022-06-29dt-bindings: mtd: partitions: support label/name only partitionChristian Marangi1-2/+18
Document new partition nodes that declare only the label/name instead of the reg used to provide an OF node for partition registred at runtime by parsers. This is required for nvmem system to declare and detect nvmem-cells. With these special partitions, the reg / offset is not required and a 'partition-' prefix is needed. The node name with the 'partition-' prefix stripped, is used to match the partition allocated by the parser at runtime and the parser will provide reg and offset of the mtd. If the partition to match contains invalid char for a node name, the label binding can be used to declare the partition name. NVMEM will use the data from the parser and provide the NVMEM cells declared in the DTS, "connecting" the dynamic partition with a static declaration of cells in them. Signed-off-by: Christian Marangi <[email protected]> Reviewed-by: Rob Herring <[email protected]> Signed-off-by: Miquel Raynal <[email protected]> Link: https://lore.kernel.org/linux-mtd/[email protected]
2022-05-16dt-bindings: mtd: partitions: Extend fixed-partitions bindingMikhail Zhilkin1-2/+53
Extend fixed-partitions binding for support of Sercomm partition parser (add "sercomm,sc-partitions" compatible). Signed-off-by: Mikhail Zhilkin <[email protected]> Reviewed-by: Krzysztof Kozlowski <[email protected]> Signed-off-by: Miquel Raynal <[email protected]> Link: https://lore.kernel.org/linux-mtd/[email protected]
2022-03-14dt-bindings: mtd: partitions: convert BCM47xx to the json-schemaRafał Miłecki2-42/+48
This helps validating DTS files. Signed-off-by: Rafał Miłecki <[email protected]> Reviewed-by: Rob Herring <[email protected]> Signed-off-by: Miquel Raynal <[email protected]> Link: https://lore.kernel.org/linux-mtd/[email protected]
2021-07-16dt_bindings: mtd: partitions: redboot: convert to YAMLCorentin Labbe2-27/+42
Converts mtd/partitions/redboot-fis.txt to YAML. Signed-off-by: Corentin Labbe <[email protected]> Reviewed-by: Linus Walleij <[email protected]> Reviewed-by: Rob Herring <[email protected]> Signed-off-by: Miquel Raynal <[email protected]> Link: https://lore.kernel.org/linux-mtd/[email protected]
2021-05-10dt-bindings: mtd: brcm,trx: Add brcm,trx-magicHauke Mehrtens1-0/+5
This adds the description of an additional property which allows to specify a custom partition parser magic to detect a trx partition. Buffalo has multiple device which are using the trx format, but with different magic values. Signed-off-by: Hauke Mehrtens <[email protected]> Acked-by: Rob Herring <[email protected]> Signed-off-by: Miquel Raynal <[email protected]> Link: https://lore.kernel.org/linux-mtd/[email protected]
2021-03-28dt-bindings: mtd: add binding for Linksys Northstar partitionsRafał Miłecki1-0/+74
Linksys on Broadcom Northstar devices uses fixed flash layout with multiple firmware partitions. Signed-off-by: Rafał Miłecki <[email protected]> Reviewed-by: Rob Herring <[email protected]> Signed-off-by: Miquel Raynal <[email protected]> Link: https://lore.kernel.org/linux-mtd/[email protected]
2021-03-28dt-bindings: mtd: Document use of nvmem-cells compatibleAnsuel Smith1-0/+99
Document nvmem-cells compatible used to treat mtd partitions as a nvmem provider. Signed-off-by: Ansuel Smith <[email protected]> Reviewed-by: Rob Herring <[email protected]> Signed-off-by: Miquel Raynal <[email protected]> Link: https://lore.kernel.org/linux-mtd/[email protected]
2021-02-12dt-bindings: mtd: add binding for BCM4908 partitionsRafał Miłecki1-0/+70
BCM4908 uses fixed partitions layout but function of some partitions may vary. Some devices use multiple firmware partitions and those partitions should be marked to let system discover their purpose. Signed-off-by: Rafał Miłecki <[email protected]> Signed-off-by: Richard Weinberger <[email protected]>
2021-02-12dt-bindings: mtd: move partition binding to its own fileRafał Miłecki2-32/+48
Single partition binding is quite common and may be: 1. Used by multiple parsers 2. Extended for more specific cases Move it to separated file to avoid code duplication. Signed-off-by: Rafał Miłecki <[email protected]> Reviewed-by: Rob Herring <[email protected]> Signed-off-by: Richard Weinberger <[email protected]>
2021-01-04dt-bindings: mtd: partitions: Add binding for Qcom SMEM parserManivannan Sadhasivam1-0/+33
Add YAML binding for Qualcomm Shared Memory (SMEM) Flash partition parser. Signed-off-by: Manivannan Sadhasivam <[email protected]> Reviewed-by: Rob Herring <[email protected]> Signed-off-by: Miquel Raynal <[email protected]> Link: https://lore.kernel.org/linux-mtd/[email protected]
2020-12-10dt-bindings: mtd: convert "fixed-partitions" to the json-schemaRafał Miłecki1-0/+152
This standardizes its documentation, allows validating with Makefile checks and helps writing DTS files. Noticeable changes: 1. Dropped "Partitions can be represented by sub-nodes of a flash device." as we also support subpartitions (don't have to be part of flash device node) 2. Dropped "to Linux" as bindings are meant to be os agnostic. Signed-off-by: Rafał Miłecki <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Rob Herring <[email protected]>
2019-05-06mtd: partitions: Add AFS partitions DT bindingsLinus Walleij1-0/+17
This adds device tree bindings for ARM Firmware Suite flash partitioning used in NOR flashes on ARM reference designs. Cc: [email protected] Reviewed-by: Rob Herring <[email protected]> Signed-off-by: Linus Walleij <[email protected]> Signed-off-by: Richard Weinberger <[email protected]>
2019-05-06dt-bindings: mtd: describe BCM963XX ImageTag format and usageJonas Gorski1-0/+45
Describe how to use the BCM963XX ImageTag format in a mixed flash layout environment. Reviewed-by: Rob Herring <[email protected]> Signed-off-by: Jonas Gorski <[email protected]> Reviewed-by: Florian Fainelli <[email protected]> Signed-off-by: Richard Weinberger <[email protected]>
2019-05-06dt-bindings: mtd: describe the simple BCM963XX NOR flash layoutJonas Gorski1-0/+24
Add binding documentation for the standard CFE based BCM963XX flash layout, found in most devices using a BCM63XX SoC with NOR flash. Reviewed-by: Rob Herring <[email protected]> Signed-off-by: Jonas Gorski <[email protected]> Reviewed-by: Florian Fainelli <[email protected]> Signed-off-by: Richard Weinberger <[email protected]>
2018-11-12mtd: partitions: Add RedBoot FIS DT bindingsLinus Walleij1-0/+27
This adds device tree bindings for the RedBoot FIS partition format. Cc: [email protected] Reviewed-by: Rob Herring <[email protected]> Signed-off-by: Linus Walleij <[email protected]> Signed-off-by: Boris Brezillon <[email protected]>
2018-07-07dt-bindings: mtd: document Broadcom's TRX firmware format bindingRafał Miłecki1-0/+37
Broadcom based home router devices use TRX firmware format. It's a container that can hold few partitions. If operating system is expected to access them it has to understand that format and parse flash data accordingly. Signed-off-by: Rafał Miłecki <[email protected]> Reviewed-by: Rob Herring <[email protected]> Signed-off-by: Boris Brezillon <[email protected]>
2018-05-23dt-bindings: mtd: document Broadcom's BCM47xx partitionsRafał Miłecki1-0/+42
Broadcom based home router devices use partitions which have to be discovered in a specific way. They are not fixed and there is not any standard partition table. This commit adds and describes a new custom binding for such devices. Signed-off-by: Rafał Miłecki <[email protected]> Reviewed-by: Rob Herring <[email protected]> Signed-off-by: Boris Brezillon <[email protected]>