diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2013-09-09 13:33:19 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2013-09-09 13:33:19 -0400 |
commit | ef9a61bef917e38f8e096f6df303329aed6cf467 (patch) | |
tree | 31cfe2444d0270e77ff8ef792df11591fed6075c /Documentation | |
parent | b5f0998cae3d7ea56d3d8377e46328fe972b9546 (diff) | |
parent | 6c3b88970175e18a67eb8e55c4eba10614d0d5dc (diff) |
Merge tag 'for-linus-20130909' of git://git.infradead.org/linux-mtd
Pull mtd updates from David Woodhouse:
- factor out common code from MTD tests
- nand-gpio cleanup and portability to non-ARM
- m25p80 support for 4-byte addressing chips, other new chips
- pxa3xx cleanup and support for new platforms
- remove obsolete alauda, octagon-5066 drivers
- erase/write support for bcm47xxsflash
- improve detection of ECC requirements for NAND, controller setup
- NFC acceleration support for atmel-nand, read/write via SRAM
- etc
* tag 'for-linus-20130909' of git://git.infradead.org/linux-mtd: (184 commits)
mtd: chips: Add support for PMC SPI Flash chips in m25p80.c
mtd: ofpart: use for_each_child_of_node() macro
mtd: mtdswap: replace strict_strtoul() with kstrtoul()
mtd cs553x_nand: use kzalloc() instead of memset
mtd: atmel_nand: fix error return code in atmel_nand_probe()
mtd: bcm47xxsflash: writing support
mtd: bcm47xxsflash: implement erasing support
mtd: bcm47xxsflash: convert to module_platform_driver instead of init/exit
mtd: bcm47xxsflash: convert kzalloc to avoid invalid access
mtd: remove alauda driver
mtd: nand: mxc_nand: mark 'const' properly
mtd: maps: cfi_flagadm: add missing __iomem annotation
mtd: spear_smi: add missing __iomem annotation
mtd: r852: Staticize local symbols
mtd: nandsim: Staticize local symbols
mtd: impa7: add missing __iomem annotation
mtd: sm_ftl: Staticize local symbols
mtd: m25p80: add support for mr25h10
mtd: m25p80: make CONFIG_M25PXX_USE_FAST_READ safe to enable
mtd: m25p80: Pass flags through CAT25_INFO macro
...
Diffstat (limited to 'Documentation')
-rw-r--r-- | Documentation/ABI/testing/sysfs-class-mtd | 17 | ||||
-rw-r--r-- | Documentation/DocBook/mtdnand.tmpl | 2 | ||||
-rw-r--r-- | Documentation/devicetree/bindings/mtd/atmel-nand.txt | 28 | ||||
-rw-r--r-- | Documentation/devicetree/bindings/mtd/fsmc-nand.txt | 25 | ||||
-rw-r--r-- | Documentation/devicetree/bindings/mtd/partition.txt | 1 |
5 files changed, 67 insertions, 6 deletions
diff --git a/Documentation/ABI/testing/sysfs-class-mtd b/Documentation/ABI/testing/sysfs-class-mtd index 3105644b3bfc..bfd119ace6ad 100644 --- a/Documentation/ABI/testing/sysfs-class-mtd +++ b/Documentation/ABI/testing/sysfs-class-mtd | |||
@@ -128,9 +128,8 @@ KernelVersion: 3.4 | |||
128 | Contact: linux-mtd@lists.infradead.org | 128 | Contact: linux-mtd@lists.infradead.org |
129 | Description: | 129 | Description: |
130 | Maximum number of bit errors that the device is capable of | 130 | Maximum number of bit errors that the device is capable of |
131 | correcting within each region covering an ecc step. This will | 131 | correcting within each region covering an ECC step (see |
132 | always be a non-negative integer. Note that some devices will | 132 | ecc_step_size). This will always be a non-negative integer. |
133 | have multiple ecc steps within each writesize region. | ||
134 | 133 | ||
135 | In the case of devices lacking any ECC capability, it is 0. | 134 | In the case of devices lacking any ECC capability, it is 0. |
136 | 135 | ||
@@ -173,3 +172,15 @@ Description: | |||
173 | This is generally applicable only to NAND flash devices with ECC | 172 | This is generally applicable only to NAND flash devices with ECC |
174 | capability. It is ignored on devices lacking ECC capability; | 173 | capability. It is ignored on devices lacking ECC capability; |
175 | i.e., devices for which ecc_strength is zero. | 174 | i.e., devices for which ecc_strength is zero. |
175 | |||
176 | What: /sys/class/mtd/mtdX/ecc_step_size | ||
177 | Date: May 2013 | ||
178 | KernelVersion: 3.10 | ||
179 | Contact: linux-mtd@lists.infradead.org | ||
180 | Description: | ||
181 | The size of a single region covered by ECC, known as the ECC | ||
182 | step. Devices may have several equally sized ECC steps within | ||
183 | each writesize region. | ||
184 | |||
185 | It will always be a non-negative integer. In the case of | ||
186 | devices lacking any ECC capability, it is 0. | ||
diff --git a/Documentation/DocBook/mtdnand.tmpl b/Documentation/DocBook/mtdnand.tmpl index fe122d6e686f..a248f42a121e 100644 --- a/Documentation/DocBook/mtdnand.tmpl +++ b/Documentation/DocBook/mtdnand.tmpl | |||
@@ -1224,8 +1224,6 @@ in this page</entry> | |||
1224 | #define NAND_BBT_CREATE 0x00000200 | 1224 | #define NAND_BBT_CREATE 0x00000200 |
1225 | /* Search good / bad pattern through all pages of a block */ | 1225 | /* Search good / bad pattern through all pages of a block */ |
1226 | #define NAND_BBT_SCANALLPAGES 0x00000400 | 1226 | #define NAND_BBT_SCANALLPAGES 0x00000400 |
1227 | /* Scan block empty during good / bad block scan */ | ||
1228 | #define NAND_BBT_SCANEMPTY 0x00000800 | ||
1229 | /* Write bbt if neccecary */ | 1227 | /* Write bbt if neccecary */ |
1230 | #define NAND_BBT_WRITE 0x00001000 | 1228 | #define NAND_BBT_WRITE 0x00001000 |
1231 | /* Read and write back block contents when writing bbt */ | 1229 | /* Read and write back block contents when writing bbt */ |
diff --git a/Documentation/devicetree/bindings/mtd/atmel-nand.txt b/Documentation/devicetree/bindings/mtd/atmel-nand.txt index d555421ea49f..c4728839d0c1 100644 --- a/Documentation/devicetree/bindings/mtd/atmel-nand.txt +++ b/Documentation/devicetree/bindings/mtd/atmel-nand.txt | |||
@@ -15,6 +15,7 @@ Required properties: | |||
15 | optional gpio and may be set to 0 if not present. | 15 | optional gpio and may be set to 0 if not present. |
16 | 16 | ||
17 | Optional properties: | 17 | Optional properties: |
18 | - atmel,nand-has-dma : boolean to support dma transfer for nand read/write. | ||
18 | - nand-ecc-mode : String, operation mode of the NAND ecc mode, soft by default. | 19 | - nand-ecc-mode : String, operation mode of the NAND ecc mode, soft by default. |
19 | Supported values are: "none", "soft", "hw", "hw_syndrome", "hw_oob_first", | 20 | Supported values are: "none", "soft", "hw", "hw_syndrome", "hw_oob_first", |
20 | "soft_bch". | 21 | "soft_bch". |
@@ -29,6 +30,14 @@ Optional properties: | |||
29 | sector size 1024. | 30 | sector size 1024. |
30 | - nand-bus-width : 8 or 16 bus width if not present 8 | 31 | - nand-bus-width : 8 or 16 bus width if not present 8 |
31 | - nand-on-flash-bbt: boolean to enable on flash bbt option if not present false | 32 | - nand-on-flash-bbt: boolean to enable on flash bbt option if not present false |
33 | - Nand Flash Controller(NFC) is a slave driver under Atmel nand flash | ||
34 | - Required properties: | ||
35 | - compatible : "atmel,sama5d3-nfc". | ||
36 | - reg : should specify the address and size used for NFC command registers, | ||
37 | NFC registers and NFC Sram. NFC Sram address and size can be absent | ||
38 | if don't want to use it. | ||
39 | - Optional properties: | ||
40 | - atmel,write-by-sram: boolean to enable NFC write by sram. | ||
32 | 41 | ||
33 | Examples: | 42 | Examples: |
34 | nand0: nand@40000000,0 { | 43 | nand0: nand@40000000,0 { |
@@ -77,3 +86,22 @@ nand0: nand@40000000 { | |||
77 | ... | 86 | ... |
78 | }; | 87 | }; |
79 | }; | 88 | }; |
89 | |||
90 | /* for NFC supported chips */ | ||
91 | nand0: nand@40000000 { | ||
92 | compatible = "atmel,at91rm9200-nand"; | ||
93 | #address-cells = <1>; | ||
94 | #size-cells = <1>; | ||
95 | ranges; | ||
96 | ... | ||
97 | nfc@70000000 { | ||
98 | compatible = "atmel,sama5d3-nfc"; | ||
99 | #address-cells = <1>; | ||
100 | #size-cells = <1>; | ||
101 | reg = < | ||
102 | 0x70000000 0x10000000 /* NFC Command Registers */ | ||
103 | 0xffffc000 0x00000070 /* NFC HSMC regs */ | ||
104 | 0x00200000 0x00100000 /* NFC SRAM banks */ | ||
105 | >; | ||
106 | }; | ||
107 | }; | ||
diff --git a/Documentation/devicetree/bindings/mtd/fsmc-nand.txt b/Documentation/devicetree/bindings/mtd/fsmc-nand.txt index 2240ac09f6ba..ec42935f3908 100644 --- a/Documentation/devicetree/bindings/mtd/fsmc-nand.txt +++ b/Documentation/devicetree/bindings/mtd/fsmc-nand.txt | |||
@@ -1,4 +1,5 @@ | |||
1 | * FSMC NAND | 1 | ST Microelectronics Flexible Static Memory Controller (FSMC) |
2 | NAND Interface | ||
2 | 3 | ||
3 | Required properties: | 4 | Required properties: |
4 | - compatible : "st,spear600-fsmc-nand", "stericsson,fsmc-nand" | 5 | - compatible : "st,spear600-fsmc-nand", "stericsson,fsmc-nand" |
@@ -9,6 +10,26 @@ Optional properties: | |||
9 | - bank-width : Width (in bytes) of the device. If not present, the width | 10 | - bank-width : Width (in bytes) of the device. If not present, the width |
10 | defaults to 1 byte | 11 | defaults to 1 byte |
11 | - nand-skip-bbtscan: Indicates the the BBT scanning should be skipped | 12 | - nand-skip-bbtscan: Indicates the the BBT scanning should be skipped |
13 | - timings: array of 6 bytes for NAND timings. The meanings of these bytes | ||
14 | are: | ||
15 | byte 0 TCLR : CLE to RE delay in number of AHB clock cycles, only 4 bits | ||
16 | are valid. Zero means one clockcycle, 15 means 16 clock | ||
17 | cycles. | ||
18 | byte 1 TAR : ALE to RE delay, 4 bits are valid. Same format as TCLR. | ||
19 | byte 2 THIZ : number of HCLK clock cycles during which the data bus is | ||
20 | kept in Hi-Z (tristate) after the start of a write access. | ||
21 | Only valid for write transactions. Zero means zero cycles, | ||
22 | 255 means 255 cycles. | ||
23 | byte 3 THOLD : number of HCLK clock cycles to hold the address (and data | ||
24 | when writing) after the command deassertation. Zero means | ||
25 | one cycle, 255 means 256 cycles. | ||
26 | byte 4 TWAIT : number of HCLK clock cycles to assert the command to the | ||
27 | NAND flash in response to SMWAITn. Zero means 1 cycle, | ||
28 | 255 means 256 cycles. | ||
29 | byte 5 TSET : number of HCLK clock cycles to assert the address before the | ||
30 | command is asserted. Zero means one cycle, 255 means 256 | ||
31 | cycles. | ||
32 | - bank: default NAND bank to use (0-3 are valid, 0 is the default). | ||
12 | 33 | ||
13 | Example: | 34 | Example: |
14 | 35 | ||
@@ -24,6 +45,8 @@ Example: | |||
24 | 45 | ||
25 | bank-width = <1>; | 46 | bank-width = <1>; |
26 | nand-skip-bbtscan; | 47 | nand-skip-bbtscan; |
48 | timings = /bits/ 8 <0 0 0 2 3 0>; | ||
49 | bank = <1>; | ||
27 | 50 | ||
28 | partition@0 { | 51 | partition@0 { |
29 | ... | 52 | ... |
diff --git a/Documentation/devicetree/bindings/mtd/partition.txt b/Documentation/devicetree/bindings/mtd/partition.txt index 9315ac96b49b..8e5557da1955 100644 --- a/Documentation/devicetree/bindings/mtd/partition.txt +++ b/Documentation/devicetree/bindings/mtd/partition.txt | |||
@@ -4,6 +4,7 @@ Partitions can be represented by sub-nodes of an mtd device. This can be used | |||
4 | on platforms which have strong conventions about which portions of a flash are | 4 | on platforms which have strong conventions about which portions of a flash are |
5 | used for what purposes, but which don't use an on-flash partition table such | 5 | used for what purposes, but which don't use an on-flash partition table such |
6 | as RedBoot. | 6 | as RedBoot. |
7 | NOTE: if the sub-node has a compatible string, then it is not a partition. | ||
7 | 8 | ||
8 | #address-cells & #size-cells must both be present in the mtd device. There are | 9 | #address-cells & #size-cells must both be present in the mtd device. There are |
9 | two valid values for both: | 10 | two valid values for both: |