xref: /linux/Documentation/devicetree/bindings/mtd/ti,gpmc-onenand.yaml (revision 1ac731c529cd4d6adbce134754b51ff7d822b145)
1ed1d0eb0SRoger Quadros# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2ed1d0eb0SRoger Quadros%YAML 1.2
3ed1d0eb0SRoger Quadros---
4ed1d0eb0SRoger Quadros$id: http://devicetree.org/schemas/mtd/ti,gpmc-onenand.yaml#
5ed1d0eb0SRoger Quadros$schema: http://devicetree.org/meta-schemas/core.yaml#
6ed1d0eb0SRoger Quadros
7ed1d0eb0SRoger Quadrostitle: OneNAND over Texas Instruments GPMC bus.
8ed1d0eb0SRoger Quadros
9ed1d0eb0SRoger Quadrosmaintainers:
10ed1d0eb0SRoger Quadros  - Tony Lindgren <tony@atomide.com>
11ed1d0eb0SRoger Quadros  - Roger Quadros <rogerq@kernel.org>
12ed1d0eb0SRoger Quadros
13ed1d0eb0SRoger Quadrosdescription:
14ed1d0eb0SRoger Quadros  GPMC connected OneNAND (found on OMAP boards) are represented
15ed1d0eb0SRoger Quadros  as child nodes of the GPMC controller.
16ed1d0eb0SRoger Quadros
17ed1d0eb0SRoger Quadrosproperties:
18eb6fa336SMiquel Raynal  $nodename:
19eb6fa336SMiquel Raynal    pattern: "^onenand@[0-9],[0,9]$"
20eb6fa336SMiquel Raynal
21ed1d0eb0SRoger Quadros  compatible:
22ed1d0eb0SRoger Quadros    const: ti,omap2-onenand
23ed1d0eb0SRoger Quadros
24ed1d0eb0SRoger Quadros  reg:
25ed1d0eb0SRoger Quadros    items:
26ed1d0eb0SRoger Quadros      - description: |
27ed1d0eb0SRoger Quadros          Chip Select number, register offset and size of
28ed1d0eb0SRoger Quadros          OneNAND register window.
29ed1d0eb0SRoger Quadros
30ed1d0eb0SRoger Quadros  "#address-cells": true
31ed1d0eb0SRoger Quadros
32ed1d0eb0SRoger Quadros  "#size-cells": true
33ed1d0eb0SRoger Quadros
34ed1d0eb0SRoger Quadros  int-gpios:
35ed1d0eb0SRoger Quadros    description: GPIO specifier for the INT pin.
36ed1d0eb0SRoger Quadros
37ed1d0eb0SRoger QuadrospatternProperties:
38ed1d0eb0SRoger Quadros  "@[0-9a-f]+$":
39*1f79a611SRob Herring    $ref: /schemas/mtd/partitions/partition.yaml
40ed1d0eb0SRoger Quadros
41ed1d0eb0SRoger QuadrosallOf:
42*1f79a611SRob Herring  - $ref: /schemas/memory-controllers/ti,gpmc-child.yaml
43ed1d0eb0SRoger Quadros
44ed1d0eb0SRoger Quadrosrequired:
45ed1d0eb0SRoger Quadros  - compatible
46ed1d0eb0SRoger Quadros  - reg
47ed1d0eb0SRoger Quadros  - "#address-cells"
48ed1d0eb0SRoger Quadros  - "#size-cells"
49ed1d0eb0SRoger Quadros
50ed1d0eb0SRoger QuadrosunevaluatedProperties: false
51ed1d0eb0SRoger Quadros
52ed1d0eb0SRoger Quadrosexamples:
53ed1d0eb0SRoger Quadros  - |
54ed1d0eb0SRoger Quadros    gpmc: memory-controller@6e000000 {
55ed1d0eb0SRoger Quadros      compatible = "ti,omap3430-gpmc";
56ed1d0eb0SRoger Quadros      reg = <0x6e000000 0x02d0>;
57ed1d0eb0SRoger Quadros      interrupts = <20>;
58ed1d0eb0SRoger Quadros      gpmc,num-cs = <8>;
59ed1d0eb0SRoger Quadros      gpmc,num-waitpins = <4>;
60ed1d0eb0SRoger Quadros      clocks = <&l3s_clkctrl>;
61ed1d0eb0SRoger Quadros      clock-names = "fck";
62ed1d0eb0SRoger Quadros      #address-cells = <2>;
63ed1d0eb0SRoger Quadros      #size-cells = <1>;
64ed1d0eb0SRoger Quadros
65ed1d0eb0SRoger Quadros      ranges = <0 0 0x01000000 0x01000000>,   /* 16 MB for OneNAND */
66ed1d0eb0SRoger Quadros               <1 0 0x02000000 0x01000000>;   /* 16 MB for smc91c96 */
67ed1d0eb0SRoger Quadros
68ed1d0eb0SRoger Quadros      onenand@0,0 {
69ed1d0eb0SRoger Quadros        compatible = "ti,omap2-onenand";
70ed1d0eb0SRoger Quadros        reg = <0 0 0x20000>;    /* CS0, offset 0, IO size 128K */
71ed1d0eb0SRoger Quadros        #address-cells = <1>;
72ed1d0eb0SRoger Quadros        #size-cells = <1>;
73ed1d0eb0SRoger Quadros
74ed1d0eb0SRoger Quadros        partition@0 {
75ed1d0eb0SRoger Quadros          label = "bootloader";
76ed1d0eb0SRoger Quadros          reg = <0x00000000 0x00100000>;
77ed1d0eb0SRoger Quadros        };
78ed1d0eb0SRoger Quadros
79ed1d0eb0SRoger Quadros        partition@100000 {
80ed1d0eb0SRoger Quadros          label = "config";
81ed1d0eb0SRoger Quadros          reg = <0x00100000 0x002c0000>;
82ed1d0eb0SRoger Quadros        };
83ed1d0eb0SRoger Quadros      };
84ed1d0eb0SRoger Quadros    };
85