diff options
Diffstat (limited to 'drivers/mtd/nand/bf5xx_nand.c')
| -rw-r--r-- | drivers/mtd/nand/bf5xx_nand.c | 15 | 
1 files changed, 4 insertions, 11 deletions
diff --git a/drivers/mtd/nand/bf5xx_nand.c b/drivers/mtd/nand/bf5xx_nand.c index 2c42e125720..722898aea7a 100644 --- a/drivers/mtd/nand/bf5xx_nand.c +++ b/drivers/mtd/nand/bf5xx_nand.c @@ -37,7 +37,6 @@  #include <linux/module.h>  #include <linux/types.h> -#include <linux/init.h>  #include <linux/kernel.h>  #include <linux/string.h>  #include <linux/ioport.h> @@ -680,9 +679,6 @@ static int bf5xx_nand_remove(struct platform_device *pdev)  	peripheral_free_list(bfin_nfc_pin_req);  	bf5xx_nand_dma_remove(info); -	/* free the common resources */ -	kfree(info); -  	return 0;  } @@ -743,11 +739,10 @@ static int bf5xx_nand_probe(struct platform_device *pdev)  		return -EFAULT;  	} -	info = kzalloc(sizeof(*info), GFP_KERNEL); +	info = devm_kzalloc(&pdev->dev, sizeof(*info), GFP_KERNEL);  	if (info == NULL) { -		dev_err(&pdev->dev, "no memory for flash info\n");  		err = -ENOMEM; -		goto out_err_kzalloc; +		goto out_err;  	}  	platform_set_drvdata(pdev, info); @@ -792,7 +787,7 @@ static int bf5xx_nand_probe(struct platform_device *pdev)  	/* initialise the hardware */  	err = bf5xx_nand_hw_init(info);  	if (err) -		goto out_err_hw_init; +		goto out_err;  	/* setup hardware ECC data struct */  	if (hardware_ecc) { @@ -829,9 +824,7 @@ static int bf5xx_nand_probe(struct platform_device *pdev)  out_err_nand_scan:  	bf5xx_nand_dma_remove(info); -out_err_hw_init: -	kfree(info); -out_err_kzalloc: +out_err:  	peripheral_free_list(bfin_nfc_pin_req);  	return err;  | 
