mirror of https://gitee.com/openkylin/linux.git
mtd: nand: fsmc: remove fsmc_select_chip()
host->select_chip used to point to the ->select_bank() function provided by the platform data, but the latter no longer exists. Therefore host->select_chip is always NULL. Due to this, the fsmc_select_chip() does nothing, except: chip->cmd_ctrl(mtd, NAND_CMD_NONE, 0 | NAND_CTRL_CHANGE); when chipnr is -1, which is exactly what the default implementation of ->select_chip() does in the NAND framework. So, this commit kills fsmc_select_chip() entirely. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com>
This commit is contained in:
parent
6324fb93a2
commit
a04271a723
|
@ -203,8 +203,6 @@ struct fsmc_nand_data {
|
|||
void __iomem *cmd_va;
|
||||
void __iomem *addr_va;
|
||||
void __iomem *regs_va;
|
||||
|
||||
void (*select_chip)(uint32_t bank, uint32_t busw);
|
||||
};
|
||||
|
||||
static int fsmc_ecc1_ooblayout_ecc(struct mtd_info *mtd, int section,
|
||||
|
@ -296,32 +294,6 @@ static inline struct fsmc_nand_data *mtd_to_fsmc(struct mtd_info *mtd)
|
|||
return container_of(mtd_to_nand(mtd), struct fsmc_nand_data, nand);
|
||||
}
|
||||
|
||||
/* Assert CS signal based on chipnr */
|
||||
static void fsmc_select_chip(struct mtd_info *mtd, int chipnr)
|
||||
{
|
||||
struct nand_chip *chip = mtd_to_nand(mtd);
|
||||
struct fsmc_nand_data *host;
|
||||
|
||||
host = mtd_to_fsmc(mtd);
|
||||
|
||||
switch (chipnr) {
|
||||
case -1:
|
||||
chip->cmd_ctrl(mtd, NAND_CMD_NONE, 0 | NAND_CTRL_CHANGE);
|
||||
break;
|
||||
case 0:
|
||||
case 1:
|
||||
case 2:
|
||||
case 3:
|
||||
if (host->select_chip)
|
||||
host->select_chip(chipnr,
|
||||
chip->options & NAND_BUSWIDTH_16);
|
||||
break;
|
||||
|
||||
default:
|
||||
dev_err(host->dev, "unsupported chip-select %d\n", chipnr);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* fsmc_cmd_ctrl - For facilitaing Hardware access
|
||||
* This routine allows hardware specific access to control-lines(ALE,CLE)
|
||||
|
@ -984,7 +956,6 @@ static int __init fsmc_nand_probe(struct platform_device *pdev)
|
|||
nand->ecc.hwctl = fsmc_enable_hwecc;
|
||||
nand->ecc.size = 512;
|
||||
nand->options = pdata->options;
|
||||
nand->select_chip = fsmc_select_chip;
|
||||
nand->badblockbits = 7;
|
||||
nand_set_flash_node(nand, np);
|
||||
|
||||
|
|
Loading…
Reference in New Issue