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()
204 dev_err(this->dev, "Show GPMI registers :\n"); in gpmi_dump_info()
574 * <1> Firstly, we should know what's the GPMI-clock means.
575 * The GPMI-clock is the internal clock in the gpmi nand controller.
576 * If you set 100MHz to gpmi nand controller, the GPMI-clock's period
577 * is 10ns. Mark the GPMI-clock's period as GPMI-clock-period.
580 * The frequency on the nand chip pins is derived from the GPMI-clock.
586 * G : the GPMI clock, such as 100MHz.
592 * The GPMI implements a feedback read strobe to sample the read data.
626 * tRP = (GPMI-clock-period) * DATA_SETUP
628 * 4.2) From the aspect of the GPMI nand controller:
632 * if (GPMI-clock-period > DLL_THRETHOLD)
633 * RP = GPMI-clock-period / 2;
635 * RP = GPMI-clock-period;
637 * Set the HW_GPMI_CTRL1:HALF_PERIOD if GPMI-clock-period
735 /* Wait 64 clock cycles before using the GPMI after enabling the DLL */ in gpmi_nfc_apply_timings()
755 /* Only MX6 GPMI controller can reach EDO timings */ in gpmi_setup_interface()
1039 * Set the default value for the gpmi clock. in gpmi_get_clks()
1565 * The tricky part in the GPMI/BCH controller is that it stores ECC bits
1572 * of the layout used by the GPMI controller.
1650 * The tricky part in the GPMI/BCH controller is that it stores ECC bits
1657 * of the layout used by the GPMI controller.
1684 * beginning of the page, as imposed by the GPMI layout. in gpmi_ecc_write_page_raw()
2431 mtd->name = "gpmi-nand"; in gpmi_nand_init()
2482 { .compatible = "fsl,imx23-gpmi-nand", .data = &gpmi_devdata_imx23, },
2483 { .compatible = "fsl,imx28-gpmi-nand", .data = &gpmi_devdata_imx28, },
2484 { .compatible = "fsl,imx6q-gpmi-nand", .data = &gpmi_devdata_imx6q, },
2485 { .compatible = "fsl,imx6sx-gpmi-nand", .data = &gpmi_devdata_imx6sx, },
2486 { .compatible = "fsl,imx7d-gpmi-nand", .data = &gpmi_devdata_imx7d,},
2578 /* re-init the GPMI registers */ in gpmi_pm_resume()
2581 dev_err(this->dev, "Error setting GPMI : %d\n", ret); in gpmi_pm_resume()
2621 .name = "gpmi-nand",
2631 MODULE_DESCRIPTION("i.MX GPMI NAND Flash Controller Driver");