[PATCH] mtd/maps: add mtd-ram support to physmap_of
Grant Likely
grant.likely at secretlab.ca
Sat Aug 8 15:43:32 EST 2009
On Fri, Jul 17, 2009 at 6:39 AM, Wolfram Sang<w.sang at pengutronix.de> wrote:
> Use physmap_of to access RAMs as mtd and add documenation for it. This approach
> is a lot less intrusive as adding an of-wrapper around plat-ram.c. As most
> extensions of plat-ram.c (e.g. custom map-functions) can't be mapped to the
> device tree anyhow, extending physmap_of seems to be the cleanest approach.
>
> Tested with a phyCORE-MPC5121e.
>
> Signed-off-by: Wolfram Sang <w.sang at pengutronix.de>
Looks good to me.
Acked-by: Grant Likely <grant.likely at secretlab.ca>
> Cc: Vitaly Wool <vwool at ru.mvista.com>
> Cc: Artem Bityutskiy <dedekind at infradead.org>
> Cc: David Woodhouse <dwmw2 at infradead.org>
> Cc: Ken MacLeod <ken at bitsko.slc.ut.us>
> Cc: Albrecht Dreß <albrecht.dress at arcor.de>
> ---
> Documentation/powerpc/dts-bindings/mtd-physmap.txt | 42 ++++++++++++-------
> 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 667c9bd..80152cb 100644
> --- a/Documentation/powerpc/dts-bindings/mtd-physmap.txt
> +++ b/Documentation/powerpc/dts-bindings/mtd-physmap.txt
> @@ -1,18 +1,19 @@
> -CFI or JEDEC memory-mapped NOR flash
> +CFI or JEDEC memory-mapped NOR flash, MTD-RAM (NVRAM...)
>
> Flash chips (Memory Technology Devices) are often used for solid state
> file systems on embedded devices.
>
> - - compatible : should contain the specific model of flash chip(s)
> - used, if known, followed by either "cfi-flash" or "jedec-flash"
> - - reg : Address range(s) of the flash chip(s)
> + - compatible : should contain the specific model of mtd chip(s)
> + used, if known, followed by either "cfi-flash", "jedec-flash"
> + or "mtd-ram".
> + - reg : Address range(s) of the mtd chip(s)
> It's possible to (optionally) define multiple "reg" tuples so that
> - non-identical NOR chips can be described in one flash node.
> - - bank-width : Width (in bytes) of the flash bank. Equal to the
> + non-identical chips can be described in one node.
> + - bank-width : Width (in bytes) of the bank. Equal to the
> device width times the number of interleaved chips.
> - - device-width : (optional) Width of a single flash chip. If
> + - device-width : (optional) Width of a single mtd chip. If
> omitted, assumed to be equal to 'bank-width'.
> - - #address-cells, #size-cells : Must be present if the flash has
> + - #address-cells, #size-cells : Must be present if the device has
> sub-nodes representing partitions (see below). In this case
> both #address-cells and #size-cells must be equal to 1.
>
> @@ -22,24 +23,24 @@ are defined:
> - vendor-id : Contains the flash chip's vendor id (1 byte).
> - device-id : Contains the flash chip's device id (1 byte).
>
> -In addition to the information on the flash bank itself, the
> +In addition to the information on the mtd bank itself, the
> device tree may optionally contain additional information
> -describing partitions of the flash address space. This can be
> +describing partitions of the address space. This can be
> used on platforms which have strong conventions about which
> -portions of the flash are used for what purposes, but which don't
> +portions of a flash are used for what purposes, but which don't
> use an on-flash partition table such as RedBoot.
>
> -Each partition is represented as a sub-node of the flash device.
> +Each partition is represented as a sub-node of the mtd device.
> Each node's name represents the name of the corresponding
> -partition of the flash device.
> +partition of the mtd device.
>
> Flash partitions
> - - reg : The partition's offset and size within the flash bank.
> - - label : (optional) The label / name for this flash partition.
> + - reg : The partition's offset and size within the mtd bank.
> + - label : (optional) The label / name for this partition.
> If omitted, the label is taken from the node name (excluding
> the unit address).
> - read-only : (optional) This parameter, if present, is a hint to
> - Linux that this flash partition should only be mounted
> + Linux that this partition should only be mounted
> read-only. This is usually used for flash partitions
> containing early-boot firmware images or data which should not
> be clobbered.
> @@ -78,3 +79,12 @@ Here an example with multiple "reg" tuples:
> reg = <0 0x04000000>;
> };
> };
> +
> +An example using SRAM:
> +
> + sram at 2,0 {
> + compatible = "samsung,k6f1616u6a", "mtd-ram";
> + reg = <2 0 0x00200000>;
> + bank-width = <2>;
> + };
> +
> diff --git a/drivers/mtd/maps/physmap_of.c b/drivers/mtd/maps/physmap_of.c
> index 39d357b..45eee20 100644
> --- a/drivers/mtd/maps/physmap_of.c
> +++ b/drivers/mtd/maps/physmap_of.c
> @@ -360,6 +360,10 @@ static struct of_device_id of_flash_match[] = {
> .data = (void *)"jedec_probe",
> },
> {
> + .compatible = "mtd-ram",
> + .data = (void *)"map_ram",
> + },
> + {
> .type = "rom",
> .compatible = "direct-mapped"
> },
> --
> 1.6.3.1
>
> _______________________________________________
> Linuxppc-dev mailing list
> Linuxppc-dev at lists.ozlabs.org
> https://lists.ozlabs.org/listinfo/linuxppc-dev
--
Grant Likely, B.Sc., P.Eng.
Secret Lab Technologies Ltd.
More information about the devicetree-discuss
mailing list