^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) * Samsung S3C2410 and compatible NAND flash controller
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) Required properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) - compatible : The possible values are:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) "samsung,s3c2410-nand"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) "samsung,s3c2412-nand"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) "samsung,s3c2440-nand"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) - reg : register's location and length.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) - #address-cells, #size-cells : see nand-controller.yaml
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) - clocks : phandle to the nand controller clock
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) - clock-names : must contain "nand"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) Optional child nodes:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) Child nodes representing the available nand chips.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) Optional child properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) - nand-ecc-mode : see nand-controller.yaml
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) - nand-on-flash-bbt : see nand-controller.yaml
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) Each child device node may optionally contain a 'partitions' sub-node,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) which further contains sub-nodes describing the flash partition mapping.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) See partition.txt for more detail.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) Example:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) nand-controller@4e000000 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) compatible = "samsung,s3c2440-nand";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) reg = <0x4e000000 0x40>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) #address-cells = <1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) #size-cells = <0>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) clocks = <&clocks HCLK_NAND>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) clock-names = "nand";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) nand {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) nand-ecc-mode = "soft";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) nand-on-flash-bbt;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) partitions {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) compatible = "fixed-partitions";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) #address-cells = <1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) #size-cells = <1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) partition@0 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) label = "u-boot";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) reg = <0 0x040000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) partition@40000 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) label = "kernel";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) reg = <0x040000 0x500000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) };