Patchwork [V2,4/6] mtd: bcm47xxnflash: register this as normal driver

login
register
mail settings
Submitter Rafał Miłecki
Date Jan. 28, 2013, 10:25 a.m.
Message ID <1359368750-19763-4-git-send-email-zajec5@gmail.com>
Download mbox | patch
Permalink /patch/216154/
State Accepted
Commit a7bf6543e842e164ec00eb53863d0454200c59d4
Headers show

Comments

Rafał Miłecki - Jan. 28, 2013, 10:25 a.m.
From: Hauke Mehrtens <hauke@hauke-m.de>

When platform_driver_probe() is used and no device is registered for
this driver -ENODEV is returned and and error message is shown. Not all
BCM47xx SoC have a nand flash chip controller and chip and for them an
error message was shown.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
---
V2: rebase after change in V2 of 3/6
---
 drivers/mtd/nand/bcm47xxnflash/main.c |    7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)
Hauke Mehrtens - Jan. 28, 2013, 7:57 p.m.
On 01/28/2013 11:25 AM, Rafał Miłecki wrote:
> From: Hauke Mehrtens <hauke@hauke-m.de>
> 
> When platform_driver_probe() is used and no device is registered for
> this driver -ENODEV is returned and and error message is shown. Not all
> BCM47xx SoC have a nand flash chip controller and chip and for them an
> error message was shown.
> 
> Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
> ---
> V2: rebase after change in V2 of 3/6

Thanks Rafał for taking this up.

Hauke

Patch

diff --git a/drivers/mtd/nand/bcm47xxnflash/main.c b/drivers/mtd/nand/bcm47xxnflash/main.c
index 3e20762..a52acdc 100644
--- a/drivers/mtd/nand/bcm47xxnflash/main.c
+++ b/drivers/mtd/nand/bcm47xxnflash/main.c
@@ -77,6 +77,7 @@  static int bcm47xxnflash_remove(struct platform_device *pdev)
 }
 
 static struct platform_driver bcm47xxnflash_driver = {
+	.probe	= bcm47xxnflash_probe,
 	.remove = bcm47xxnflash_remove,
 	.driver = {
 		.name = "bcma_nflash",
@@ -88,11 +89,7 @@  static int __init bcm47xxnflash_init(void)
 {
 	int err;
 
-	/*
-	 * Platform device "bcma_nflash" exists on SoCs and is registered very
-	 * early, it won't be added during runtime (use platform_driver_probe).
-	 */
-	err = platform_driver_probe(&bcm47xxnflash_driver, bcm47xxnflash_probe);
+	err = platform_driver_register(&bcm47xxnflash_driver);
 	if (err)
 		pr_err("Failed to register bcm47xx nand flash driver: %d\n",
 		       err);