1*c66ec88fSEmmanuel VadotAmlogic NAND Flash Controller (NFC) for GXBB/GXL/AXG family SoCs 2*c66ec88fSEmmanuel Vadot 3*c66ec88fSEmmanuel VadotThis file documents the properties in addition to those available in 4*c66ec88fSEmmanuel Vadotthe MTD NAND bindings. 5*c66ec88fSEmmanuel Vadot 6*c66ec88fSEmmanuel VadotRequired properties: 7*c66ec88fSEmmanuel Vadot- compatible : contains one of: 8*c66ec88fSEmmanuel Vadot - "amlogic,meson-gxl-nfc" 9*c66ec88fSEmmanuel Vadot - "amlogic,meson-axg-nfc" 10*c66ec88fSEmmanuel Vadot- clocks : 11*c66ec88fSEmmanuel Vadot A list of phandle + clock-specifier pairs for the clocks listed 12*c66ec88fSEmmanuel Vadot in clock-names. 13*c66ec88fSEmmanuel Vadot 14*c66ec88fSEmmanuel Vadot- clock-names: Should contain the following: 15*c66ec88fSEmmanuel Vadot "core" - NFC module gate clock 16*c66ec88fSEmmanuel Vadot "device" - device clock from eMMC sub clock controller 17*c66ec88fSEmmanuel Vadot "rx" - rx clock phase 18*c66ec88fSEmmanuel Vadot "tx" - tx clock phase 19*c66ec88fSEmmanuel Vadot 20*c66ec88fSEmmanuel Vadot- amlogic,mmc-syscon : Required for NAND clocks, it's shared with SD/eMMC 21*c66ec88fSEmmanuel Vadot controller port C 22*c66ec88fSEmmanuel Vadot 23*c66ec88fSEmmanuel VadotOptional children nodes: 24*c66ec88fSEmmanuel VadotChildren nodes represent the available nand chips. 25*c66ec88fSEmmanuel Vadot 26*c66ec88fSEmmanuel VadotOther properties: 27*c66ec88fSEmmanuel Vadotsee Documentation/devicetree/bindings/mtd/nand-controller.yaml for generic bindings. 28*c66ec88fSEmmanuel Vadot 29*c66ec88fSEmmanuel VadotExample demonstrate on AXG SoC: 30*c66ec88fSEmmanuel Vadot 31*c66ec88fSEmmanuel Vadot sd_emmc_c_clkc: mmc@7000 { 32*c66ec88fSEmmanuel Vadot compatible = "amlogic,meson-axg-mmc-clkc", "syscon"; 33*c66ec88fSEmmanuel Vadot reg = <0x0 0x7000 0x0 0x800>; 34*c66ec88fSEmmanuel Vadot }; 35*c66ec88fSEmmanuel Vadot 36*c66ec88fSEmmanuel Vadot nand-controller@7800 { 37*c66ec88fSEmmanuel Vadot compatible = "amlogic,meson-axg-nfc"; 38*c66ec88fSEmmanuel Vadot reg = <0x0 0x7800 0x0 0x100>; 39*c66ec88fSEmmanuel Vadot #address-cells = <1>; 40*c66ec88fSEmmanuel Vadot #size-cells = <0>; 41*c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 34 IRQ_TYPE_EDGE_RISING>; 42*c66ec88fSEmmanuel Vadot 43*c66ec88fSEmmanuel Vadot clocks = <&clkc CLKID_SD_EMMC_C>, 44*c66ec88fSEmmanuel Vadot <&sd_emmc_c_clkc CLKID_MMC_DIV>, 45*c66ec88fSEmmanuel Vadot <&sd_emmc_c_clkc CLKID_MMC_PHASE_RX>, 46*c66ec88fSEmmanuel Vadot <&sd_emmc_c_clkc CLKID_MMC_PHASE_TX>; 47*c66ec88fSEmmanuel Vadot clock-names = "core", "device", "rx", "tx"; 48*c66ec88fSEmmanuel Vadot amlogic,mmc-syscon = <&sd_emmc_c_clkc>; 49*c66ec88fSEmmanuel Vadot 50*c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 51*c66ec88fSEmmanuel Vadot pinctrl-0 = <&nand_pins>; 52*c66ec88fSEmmanuel Vadot 53*c66ec88fSEmmanuel Vadot nand@0 { 54*c66ec88fSEmmanuel Vadot reg = <0>; 55*c66ec88fSEmmanuel Vadot #address-cells = <1>; 56*c66ec88fSEmmanuel Vadot #size-cells = <1>; 57*c66ec88fSEmmanuel Vadot 58*c66ec88fSEmmanuel Vadot nand-on-flash-bbt; 59*c66ec88fSEmmanuel Vadot }; 60*c66ec88fSEmmanuel Vadot }; 61