Lines Matching full:gpmi
3 * Freescale GPMI NAND Flash Driver
19 #include "gpmi-nand.h"
20 #include "gpmi-regs.h"
23 /* Resource names for the GPMI NAND driver. */
24 #define GPMI_NAND_GPMI_REGS_ADDR_RES_NAME "gpmi-nand"
46 * SFTRST needs 3 GPMI clocks to settle, the reference manual in clear_poll_bit()
202 dev_err(this->dev, "Show GPMI registers :\n"); in gpmi_dump_info()
767 * <1> Firstly, we should know what's the GPMI-clock means.
768 * The GPMI-clock is the internal clock in the gpmi nand controller.
769 * If you set 100MHz to gpmi nand controller, the GPMI-clock's period
770 * is 10ns. Mark the GPMI-clock's period as GPMI-clock-period.
773 * The frequency on the nand chip pins is derived from the GPMI-clock.
779 * G : the GPMI clock, such as 100MHz.
785 * The GPMI implements a feedback read strobe to sample the read data.
819 * tRP = (GPMI-clock-period) * DATA_SETUP
821 * 4.2) From the aspect of the GPMI nand controller:
825 * if (GPMI-clock-period > DLL_THRETHOLD)
826 * RP = GPMI-clock-period / 2;
828 * RP = GPMI-clock-period;
830 * Set the HW_GPMI_CTRL1:HALF_PERIOD if GPMI-clock-period
962 /* Wait 64 clock cycles before using the GPMI after enabling the DLL */ in gpmi_nfc_apply_timings()
985 /* Only MX28/MX6 GPMI controller can reach EDO timings */ in gpmi_setup_interface()
1818 * The tricky part in the GPMI/BCH controller is that it stores ECC bits
1825 * of the layout used by the GPMI controller.
1903 * The tricky part in the GPMI/BCH controller is that it stores ECC bits
1910 * of the layout used by the GPMI controller.
1937 * beginning of the page, as imposed by the GPMI layout. in gpmi_ecc_write_page_raw()
2685 mtd->name = "gpmi-nand"; in gpmi_nand_init()
2736 { .compatible = "fsl,imx23-gpmi-nand", .data = &gpmi_devdata_imx23, },
2737 { .compatible = "fsl,imx28-gpmi-nand", .data = &gpmi_devdata_imx28, },
2738 { .compatible = "fsl,imx6q-gpmi-nand", .data = &gpmi_devdata_imx6q, },
2739 { .compatible = "fsl,imx6sx-gpmi-nand", .data = &gpmi_devdata_imx6sx, },
2740 { .compatible = "fsl,imx7d-gpmi-nand", .data = &gpmi_devdata_imx7d,},
2741 { .compatible = "fsl,imx8qxp-gpmi-nand", .data = &gpmi_devdata_imx8qxp, },
2832 /* re-init the GPMI registers */ in gpmi_pm_resume()
2835 dev_err(this->dev, "Error setting GPMI : %d\n", ret); in gpmi_pm_resume()
2875 .name = "gpmi-nand",
2885 MODULE_DESCRIPTION("i.MX GPMI NAND Flash Controller Driver");