* Qualcomm NAND controller

Required properties:
- compatible:		"qcom,ipq806x-nand" for IPQ8064 which uses
			ADM DMA. You'll also need a compatible string for
			u-boots which populate the devicetree with flash
			partitions, such as "qcom,qcom_nand".

			"qcom,ebi2-nandc-bam" - nand drivers using BAM DMA
			like IPQ4019.
			"qcom,ebi2-nandc-bam-v1.5.0" - nand drivers using BAM
			DMA and NAND controller v1.5.0 like IPQ807x.
- reg:			MMIO address range
- clocks:		must contain core clock and always on clock
- clock-names:		must contain "core" for the core clock and "aon" for the
			always on clock
- dmas:			DMA specifier, consisting of a phandle to the ADM DMA
			or BAM DMA controller node and the channel number to
			be used for NAND. Refer to dma.txt, qcom_adm.txt(ADM)
			and qcom_bam_dma.txt(BAM) for more details
- dma-names:		"rxtx" - ADM
			"tx", "rx", "cmd" - BAM
- qcom,cmd-crci:	Only required for ADM DMA. must contain the ADM command
			type CRCI block instance number specified for the NAND
			controller on the given platform.
- qcom,data-crci:	Only required for ADM DMA. must contain the ADM data
			type CRCI block instance number specified for the NAND
			controller on the given platform.
- #address-cells:	<1> - subnodes give the chip-select number
- #size-cells:		<0>

* NAND chip-select

Each controller may contain one or more subnodes to represent enabled
chip-selects which (may) contain NAND flash chips. Their properties are as
follows.

Required properties:
- compatible:		should contain "qcom,nandcs"
- reg:			a single integer representing the chip-select
			number (e.g., 0, 1, 2, etc.)
- #address-cells:	see partition.txt
- #size-cells:		see partition.txt
- nand-ecc-strength:	see nand.txt
- nand-ecc-step-size:	must be 512. see nand.txt for more details.

Optional properties:
- nand-bus-width:	see nand.txt

Each nandcs device node may optionally contain a 'partitions' sub-node, which
further contains sub-nodes describing the flash partition mapping. See
partition.txt for more detail.

Example:

nand@1ac00000 {
	compatible = "qcom,ipq806x-nand","qcom.qcom_nand";
	reg = <0x1ac00000 0x800>;

	clocks = <&gcc EBI2_CLK>,
		 <&gcc EBI2_AON_CLK>;
	clock-names = "core", "aon";

	dmas = <&adm_dma 3>;
	dma-names = "rxtx";
	qcom,cmd-crci = <15>;
	qcom,data-crci = <3>;

	#address-cells = <1>;
	#size-cells = <0>;

	nandcs@0 {
		compatible = "qcom,nandcs";
		reg = <0>;

		nand-ecc-strength = <4>;
		nand-ecc-step-size = <512>;
		nand-bus-width = <8>;

		partitions {
			compatible = "fixed-partitions";
			#address-cells = <1>;
			#size-cells = <1>;

			partition@0 {
				label = "boot-nand";
				reg = <0 0x58a0000>;
			};

			partition@58a0000 {
				label = "fs-nand";
				reg = <0x58a0000 0x4000000>;
			};
		};
	};
};

nand@79B0000 {
	compatible = "qcom,ebi2-nandc-bam";
	reg = <0x79B0000 0x1000>;

	clocks = <&gcc EBI2_CLK>,
		 <&gcc EBI2_AON_CLK>;
	clock-names = "core", "aon";

	dmas = <&qpicbam 0>,
		<&qpicbam 1>,
		<&qpicbam 2>;
	dma-names = "tx", "rx", "cmd";

	#address-cells = <1>;
	#size-cells = <0>;

	nandcs@0 {
		compatible = "qcom,nandcs";
		reg = <0>;

		nand-ecc-strength = <4>;
		nand-ecc-step-size = <512>;
		nand-bus-width = <8>;

		partitions {
			compatible = "fixed-partitions";
			#address-cells = <1>;
			#size-cells = <1>;

			partition@0 {
				label = "boot-nand";
				reg = <0 0x58a0000>;
			};

			partition@58a0000 {
				label = "fs-nand";
				reg = <0x58a0000 0x4000000>;
			};
		};
	};
};

nand@79B0000 {
	compatible = "qcom,ebi2-nandc-bam-v1.5.0";
	reg = <0x79B0000 0x1000>;

	clocks = <&gcc EBI2_CLK>,
		 <&gcc EBI2_AON_CLK>;
	clock-names = "core", "aon";

	dmas = <&qpicbam 0>,
		<&qpicbam 1>,
		<&qpicbam 2>;
	dma-names = "tx", "rx", "cmd";

	#address-cells = <1>;
	#size-cells = <0>;

	nandcs@0 {
		compatible = "qcom,nandcs";
		reg = <0>;

		nand-ecc-strength = <4>;
		nand-ecc-step-size = <512>;
		nand-bus-width = <8>;

		partitions {
			compatible = "fixed-partitions";
			#address-cells = <1>;
			#size-cells = <1>;

			partition@0 {
				label = "boot-nand";
				reg = <0 0x58a0000>;
			};

			partition@58a0000 {
				label = "fs-nand";
				reg = <0x58a0000 0x4000000>;
			};
		};
	};
};
