[PATCH 2/5] scsi: sun: use module_platform_driver() and platform_{set,get}_drvdata

From: Kefeng Wang
Date: Thu May 30 2013 - 08:11:04 EST


Use helper macro and wrapper functions to simpily code. Meanwhile,
remove unnecessary drvdata set to null due to commint 0998d0631
(device-core: Ensure drvdata = NULL when no driver is bound).

Signed-off-by: Kefeng Wang <wangkefeng.wang@xxxxxxxxxx>
---
drivers/scsi/sun_esp.c | 19 +++----------------
1 file changed, 3 insertions(+), 16 deletions(-)

diff --git a/drivers/scsi/sun_esp.c b/drivers/scsi/sun_esp.c
index f2e6845..b7361a6 100644
--- a/drivers/scsi/sun_esp.c
+++ b/drivers/scsi/sun_esp.c
@@ -538,7 +538,7 @@ static int esp_sbus_probe_one(struct platform_device *op,
dma_write32(val & ~DMA_RST_SCSI, DMA_CSR);
}

- dev_set_drvdata(&op->dev, esp);
+ platform_set_drvdata(op, esp);

err = scsi_esp_register(esp, &op->dev);
if (err)
@@ -585,7 +585,7 @@ static int esp_sbus_probe(struct platform_device *op)

static int esp_sbus_remove(struct platform_device *op)
{
- struct esp *esp = dev_get_drvdata(&op->dev);
+ struct esp *esp = platform_get_drvdata(op);
struct platform_device *dma_of = esp->dma;
unsigned int irq = esp->host->irq;
bool is_hme;
@@ -611,8 +611,6 @@ static int esp_sbus_remove(struct platform_device *op)

scsi_host_put(esp->host);

- dev_set_drvdata(&op->dev, NULL);
-
return 0;
}

@@ -640,20 +638,9 @@ static struct platform_driver esp_sbus_driver = {
.remove = esp_sbus_remove,
};

-static int __init sunesp_init(void)
-{
- return platform_driver_register(&esp_sbus_driver);
-}
-
-static void __exit sunesp_exit(void)
-{
- platform_driver_unregister(&esp_sbus_driver);
-}
+module_platform_driver(esp_sbus_driver);

MODULE_DESCRIPTION("Sun ESP SCSI driver");
MODULE_AUTHOR("David S. Miller (davem@xxxxxxxxxxxxx)");
MODULE_LICENSE("GPL");
MODULE_VERSION(DRV_VERSION);
-
-module_init(sunesp_init);
-module_exit(sunesp_exit);
--
1.8.2.1


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/