Commit ac01efeb authored by Boris BREZILLON's avatar Boris BREZILLON Committed by Brian Norris

mtd: nand: atmel: 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: default avatarBoris Brezillon <boris.brezillon@free-electrons.com>
Signed-off-by: default avatarBrian Norris <computersforpeace@gmail.com>
parent 187d6ada
...@@ -116,7 +116,6 @@ static struct atmel_nfc nand_nfc; ...@@ -116,7 +116,6 @@ static struct atmel_nfc nand_nfc;
struct atmel_nand_host { struct atmel_nand_host {
struct nand_chip nand_chip; struct nand_chip nand_chip;
struct mtd_info mtd;
void __iomem *io_base; void __iomem *io_base;
dma_addr_t io_phys; dma_addr_t io_phys;
struct atmel_nand_data board; struct atmel_nand_data board;
...@@ -317,8 +316,10 @@ static int nfc_set_sram_bank(struct atmel_nand_host *host, unsigned int bank) ...@@ -317,8 +316,10 @@ static int nfc_set_sram_bank(struct atmel_nand_host *host, unsigned int bank)
return -EINVAL; return -EINVAL;
if (bank) { if (bank) {
struct mtd_info *mtd = nand_to_mtd(&host->nand_chip);
/* Only for a 2k-page or lower flash, NFC can handle 2 banks */ /* Only for a 2k-page or lower flash, NFC can handle 2 banks */
if (host->mtd.writesize > 2048) if (mtd->writesize > 2048)
return -EINVAL; return -EINVAL;
nfc_writel(host->nfc->hsmc_regs, BANK, ATMEL_HSMC_NFC_BANK1); nfc_writel(host->nfc->hsmc_regs, BANK, ATMEL_HSMC_NFC_BANK1);
} else { } else {
...@@ -1159,8 +1160,8 @@ static uint16_t *create_lookup_table(struct device *dev, int sector_size) ...@@ -1159,8 +1160,8 @@ static uint16_t *create_lookup_table(struct device *dev, int sector_size)
static int atmel_pmecc_nand_init_params(struct platform_device *pdev, static int atmel_pmecc_nand_init_params(struct platform_device *pdev,
struct atmel_nand_host *host) struct atmel_nand_host *host)
{ {
struct mtd_info *mtd = &host->mtd;
struct nand_chip *nand_chip = &host->nand_chip; struct nand_chip *nand_chip = &host->nand_chip;
struct mtd_info *mtd = nand_to_mtd(nand_chip);
struct resource *regs, *regs_pmerr, *regs_rom; struct resource *regs, *regs_pmerr, *regs_rom;
uint16_t *galois_table; uint16_t *galois_table;
int cap, sector_size, err_no; int cap, sector_size, err_no;
...@@ -1586,8 +1587,8 @@ static int atmel_of_init_port(struct atmel_nand_host *host, ...@@ -1586,8 +1587,8 @@ static int atmel_of_init_port(struct atmel_nand_host *host,
static int atmel_hw_nand_init_params(struct platform_device *pdev, static int atmel_hw_nand_init_params(struct platform_device *pdev,
struct atmel_nand_host *host) struct atmel_nand_host *host)
{ {
struct mtd_info *mtd = &host->mtd;
struct nand_chip *nand_chip = &host->nand_chip; struct nand_chip *nand_chip = &host->nand_chip;
struct mtd_info *mtd = nand_to_mtd(nand_chip);
struct resource *regs; struct resource *regs;
regs = platform_get_resource(pdev, IORESOURCE_MEM, 1); regs = platform_get_resource(pdev, IORESOURCE_MEM, 1);
...@@ -2112,8 +2113,8 @@ static int atmel_nand_probe(struct platform_device *pdev) ...@@ -2112,8 +2113,8 @@ static int atmel_nand_probe(struct platform_device *pdev)
} }
host->io_phys = (dma_addr_t)mem->start; host->io_phys = (dma_addr_t)mem->start;
mtd = &host->mtd;
nand_chip = &host->nand_chip; nand_chip = &host->nand_chip;
mtd = nand_to_mtd(nand_chip);
host->dev = &pdev->dev; host->dev = &pdev->dev;
if (IS_ENABLED(CONFIG_OF) && pdev->dev.of_node) { if (IS_ENABLED(CONFIG_OF) && pdev->dev.of_node) {
nand_set_flash_node(nand_chip, pdev->dev.of_node); nand_set_flash_node(nand_chip, pdev->dev.of_node);
...@@ -2283,7 +2284,7 @@ static int atmel_nand_probe(struct platform_device *pdev) ...@@ -2283,7 +2284,7 @@ static int atmel_nand_probe(struct platform_device *pdev)
static int atmel_nand_remove(struct platform_device *pdev) static int atmel_nand_remove(struct platform_device *pdev)
{ {
struct atmel_nand_host *host = platform_get_drvdata(pdev); struct atmel_nand_host *host = platform_get_drvdata(pdev);
struct mtd_info *mtd = &host->mtd; struct mtd_info *mtd = nand_to_mtd(&host->nand_chip);
nand_release(mtd); nand_release(mtd);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment