mtd: nand: cmx270: use the mtd instance embedded in struct nand_chip
struct nand_chip now embeds an mtd device. Make use of this mtd instance. Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com> [Brian: dropped a defunct comment] Signed-off-by: Brian Norris <computersforpeace@gmail.com>
This commit is contained in:
Родитель
8cd65d1a63
Коммит
2afd14f927
|
@ -160,10 +160,8 @@ static int __init cmx270_init(void)
|
|||
gpio_direction_input(GPIO_NAND_RB);
|
||||
|
||||
/* Allocate memory for MTD device structure and private data */
|
||||
cmx270_nand_mtd = kzalloc(sizeof(struct mtd_info) +
|
||||
sizeof(struct nand_chip),
|
||||
GFP_KERNEL);
|
||||
if (!cmx270_nand_mtd) {
|
||||
this = kzalloc(sizeof(struct nand_chip), GFP_KERNEL);
|
||||
if (!this) {
|
||||
ret = -ENOMEM;
|
||||
goto err_kzalloc;
|
||||
}
|
||||
|
@ -175,8 +173,7 @@ static int __init cmx270_init(void)
|
|||
goto err_ioremap;
|
||||
}
|
||||
|
||||
/* Get pointer to private data */
|
||||
this = (struct nand_chip *)(&cmx270_nand_mtd[1]);
|
||||
cmx270_nand_mtd = nand_to_mtd(this);
|
||||
|
||||
/* Link the private data with the MTD structure */
|
||||
cmx270_nand_mtd->owner = THIS_MODULE;
|
||||
|
@ -216,7 +213,7 @@ static int __init cmx270_init(void)
|
|||
err_scan:
|
||||
iounmap(cmx270_nand_io);
|
||||
err_ioremap:
|
||||
kfree(cmx270_nand_mtd);
|
||||
kfree(this);
|
||||
err_kzalloc:
|
||||
gpio_free(GPIO_NAND_RB);
|
||||
err_gpio_request:
|
||||
|
@ -240,8 +237,7 @@ static void __exit cmx270_cleanup(void)
|
|||
|
||||
iounmap(cmx270_nand_io);
|
||||
|
||||
/* Free the MTD device structure */
|
||||
kfree (cmx270_nand_mtd);
|
||||
kfree(mtd_to_nand(cmx270_nand_mtd));
|
||||
}
|
||||
module_exit(cmx270_cleanup);
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче