diff options
-rw-r--r-- | Documentation/powerpc/dts-bindings/mtd-physmap.txt | 42 | ||||
-rw-r--r-- | drivers/mtd/maps/physmap_of.c | 4 |
2 files changed, 30 insertions, 16 deletions
diff --git a/Documentation/powerpc/dts-bindings/mtd-physmap.txt b/Documentation/powerpc/dts-bindings/mtd-physmap.txt index 667c9bde8699..80152cb567d9 100644 --- a/Documentation/powerpc/dts-bindings/mtd-physmap.txt +++ b/Documentation/powerpc/dts-bindings/mtd-physmap.txt | |||
@@ -1,18 +1,19 @@ | |||
1 | CFI or JEDEC memory-mapped NOR flash | 1 | CFI or JEDEC memory-mapped NOR flash, MTD-RAM (NVRAM...) |
2 | 2 | ||
3 | Flash chips (Memory Technology Devices) are often used for solid state | 3 | Flash chips (Memory Technology Devices) are often used for solid state |
4 | file systems on embedded devices. | 4 | file systems on embedded devices. |
5 | 5 | ||
6 | - compatible : should contain the specific model of flash chip(s) | 6 | - compatible : should contain the specific model of mtd chip(s) |
7 | used, if known, followed by either "cfi-flash" or "jedec-flash" | 7 | used, if known, followed by either "cfi-flash", "jedec-flash" |
8 | - reg : Address range(s) of the flash chip(s) | 8 | or "mtd-ram". |
9 | - reg : Address range(s) of the mtd chip(s) | ||
9 | It's possible to (optionally) define multiple "reg" tuples so that | 10 | It's possible to (optionally) define multiple "reg" tuples so that |
10 | non-identical NOR chips can be described in one flash node. | 11 | non-identical chips can be described in one node. |
11 | - bank-width : Width (in bytes) of the flash bank. Equal to the | 12 | - bank-width : Width (in bytes) of the bank. Equal to the |
12 | device width times the number of interleaved chips. | 13 | device width times the number of interleaved chips. |
13 | - device-width : (optional) Width of a single flash chip. If | 14 | - device-width : (optional) Width of a single mtd chip. If |
14 | omitted, assumed to be equal to 'bank-width'. | 15 | omitted, assumed to be equal to 'bank-width'. |
15 | - #address-cells, #size-cells : Must be present if the flash has | 16 | - #address-cells, #size-cells : Must be present if the device has |
16 | sub-nodes representing partitions (see below). In this case | 17 | sub-nodes representing partitions (see below). In this case |
17 | both #address-cells and #size-cells must be equal to 1. | 18 | both #address-cells and #size-cells must be equal to 1. |
18 | 19 | ||
@@ -22,24 +23,24 @@ are defined: | |||
22 | - vendor-id : Contains the flash chip's vendor id (1 byte). | 23 | - vendor-id : Contains the flash chip's vendor id (1 byte). |
23 | - device-id : Contains the flash chip's device id (1 byte). | 24 | - device-id : Contains the flash chip's device id (1 byte). |
24 | 25 | ||
25 | In addition to the information on the flash bank itself, the | 26 | In addition to the information on the mtd bank itself, the |
26 | device tree may optionally contain additional information | 27 | device tree may optionally contain additional information |
27 | describing partitions of the flash address space. This can be | 28 | describing partitions of the address space. This can be |
28 | used on platforms which have strong conventions about which | 29 | used on platforms which have strong conventions about which |
29 | portions of the flash are used for what purposes, but which don't | 30 | portions of a flash are used for what purposes, but which don't |
30 | use an on-flash partition table such as RedBoot. | 31 | use an on-flash partition table such as RedBoot. |
31 | 32 | ||
32 | Each partition is represented as a sub-node of the flash device. | 33 | Each partition is represented as a sub-node of the mtd device. |
33 | Each node's name represents the name of the corresponding | 34 | Each node's name represents the name of the corresponding |
34 | partition of the flash device. | 35 | partition of the mtd device. |
35 | 36 | ||
36 | Flash partitions | 37 | Flash partitions |
37 | - reg : The partition's offset and size within the flash bank. | 38 | - reg : The partition's offset and size within the mtd bank. |
38 | - label : (optional) The label / name for this flash partition. | 39 | - label : (optional) The label / name for this partition. |
39 | If omitted, the label is taken from the node name (excluding | 40 | If omitted, the label is taken from the node name (excluding |
40 | the unit address). | 41 | the unit address). |
41 | - read-only : (optional) This parameter, if present, is a hint to | 42 | - read-only : (optional) This parameter, if present, is a hint to |
42 | Linux that this flash partition should only be mounted | 43 | Linux that this partition should only be mounted |
43 | read-only. This is usually used for flash partitions | 44 | read-only. This is usually used for flash partitions |
44 | containing early-boot firmware images or data which should not | 45 | containing early-boot firmware images or data which should not |
45 | be clobbered. | 46 | be clobbered. |
@@ -78,3 +79,12 @@ Here an example with multiple "reg" tuples: | |||
78 | reg = <0 0x04000000>; | 79 | reg = <0 0x04000000>; |
79 | }; | 80 | }; |
80 | }; | 81 | }; |
82 | |||
83 | An example using SRAM: | ||
84 | |||
85 | sram@2,0 { | ||
86 | compatible = "samsung,k6f1616u6a", "mtd-ram"; | ||
87 | reg = <2 0 0x00200000>; | ||
88 | bank-width = <2>; | ||
89 | }; | ||
90 | |||
diff --git a/drivers/mtd/maps/physmap_of.c b/drivers/mtd/maps/physmap_of.c index e828d58910f0..61e4eb48bb2d 100644 --- a/drivers/mtd/maps/physmap_of.c +++ b/drivers/mtd/maps/physmap_of.c | |||
@@ -362,6 +362,10 @@ static struct of_device_id of_flash_match[] = { | |||
362 | .data = (void *)"jedec_probe", | 362 | .data = (void *)"jedec_probe", |
363 | }, | 363 | }, |
364 | { | 364 | { |
365 | .compatible = "mtd-ram", | ||
366 | .data = (void *)"map_ram", | ||
367 | }, | ||
368 | { | ||
365 | .type = "rom", | 369 | .type = "rom", |
366 | .compatible = "direct-mapped" | 370 | .compatible = "direct-mapped" |
367 | }, | 371 | }, |