25 #include <linux/module.h>
26 #include <linux/types.h>
33 #include <linux/slab.h>
56 .oobfree = { {0x08, 0x08}, {0x18, 0x08}, {0x28, 0x08}, {0x38, 0x08} },
59 static void nomadik_ecc_control(
struct mtd_info *mtd,
int mode)
64 static void nomadik_cmd_ctrl(
struct mtd_info *mtd,
int cmd,
unsigned int ctrl)
90 dev_err(&pdev->
dev,
"Failed to allocate device structure.\n");
146 nand->
ecc.layout = &nomadik_ecc_layout;
147 nand->
ecc.hwctl = nomadik_ecc_control;
148 nand->
ecc.size = 512;
163 platform_set_drvdata(pdev, host);
199 static int nomadik_nand_suspend(
struct device *
dev)
204 ret = mtd_suspend(&host->
mtd);
208 static int nomadik_nand_resume(
struct device *dev)
212 mtd_resume(&host->
mtd);
216 static const struct dev_pm_ops nomadik_nand_pm_ops = {
217 .suspend = nomadik_nand_suspend,
218 .resume = nomadik_nand_resume,
222 .probe = nomadik_nand_probe,
223 .remove = nomadik_nand_remove,
226 .name =
"nomadik_nand",
227 .pm = &nomadik_nand_pm_ops,