s390: remove driver_data direct access of struct device
In the near future, the driver core is going to not allow direct access to the driver_data pointer in struct device. Instead, the functions dev_get_drvdata() and dev_set_drvdata() should be used. These functions have been around since the beginning, so are backwards compatible with all older kernel versions. Thanks to Sebastian Ott <sebott@linux.vnet.ibm.com> for fixing a few typos in my original version of this patch. Cc: Martin Schwidefsky <schwidefsky@de.ibm.com> Cc: Heiko Carstens <heiko.carstens@de.ibm.com> Cc: Sebastian Ott <sebott@linux.vnet.ibm.com> Cc: linux-s390@vger.kernel.org Cc: linux390@de.ibm.com Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
@@ -368,7 +368,7 @@ raw3215_irq(struct ccw_device *cdev, unsigned long intparm, struct irb *irb)
|
||||
int cstat, dstat;
|
||||
int count;
|
||||
|
||||
raw = cdev->dev.driver_data;
|
||||
raw = dev_get_drvdata(&cdev->dev);
|
||||
req = (struct raw3215_req *) intparm;
|
||||
cstat = irb->scsw.cmd.cstat;
|
||||
dstat = irb->scsw.cmd.dstat;
|
||||
@@ -635,7 +635,7 @@ raw3215_probe (struct ccw_device *cdev)
|
||||
int line;
|
||||
|
||||
/* Console is special. */
|
||||
if (raw3215[0] && (cdev->dev.driver_data == raw3215[0]))
|
||||
if (raw3215[0] && (raw3215[0] == dev_get_drvdata(&cdev->dev)))
|
||||
return 0;
|
||||
raw = kmalloc(sizeof(struct raw3215_info) +
|
||||
RAW3215_INBUF_SIZE, GFP_KERNEL|GFP_DMA);
|
||||
@@ -669,7 +669,7 @@ raw3215_probe (struct ccw_device *cdev)
|
||||
}
|
||||
init_waitqueue_head(&raw->empty_wait);
|
||||
|
||||
cdev->dev.driver_data = raw;
|
||||
dev_set_drvdata(&cdev->dev, raw);
|
||||
cdev->handler = raw3215_irq;
|
||||
|
||||
return 0;
|
||||
@@ -681,9 +681,9 @@ raw3215_remove (struct ccw_device *cdev)
|
||||
struct raw3215_info *raw;
|
||||
|
||||
ccw_device_set_offline(cdev);
|
||||
raw = cdev->dev.driver_data;
|
||||
raw = dev_get_drvdata(&cdev->dev);
|
||||
if (raw) {
|
||||
cdev->dev.driver_data = NULL;
|
||||
dev_set_drvdata(&cdev->dev, NULL);
|
||||
kfree(raw->buffer);
|
||||
kfree(raw);
|
||||
}
|
||||
@@ -694,7 +694,7 @@ raw3215_set_online (struct ccw_device *cdev)
|
||||
{
|
||||
struct raw3215_info *raw;
|
||||
|
||||
raw = cdev->dev.driver_data;
|
||||
raw = dev_get_drvdata(&cdev->dev);
|
||||
if (!raw)
|
||||
return -ENODEV;
|
||||
|
||||
@@ -706,7 +706,7 @@ raw3215_set_offline (struct ccw_device *cdev)
|
||||
{
|
||||
struct raw3215_info *raw;
|
||||
|
||||
raw = cdev->dev.driver_data;
|
||||
raw = dev_get_drvdata(&cdev->dev);
|
||||
if (!raw)
|
||||
return -ENODEV;
|
||||
|
||||
@@ -848,7 +848,7 @@ con3215_init(void)
|
||||
raw->buffer = (char *) alloc_bootmem_low(RAW3215_BUFFER_SIZE);
|
||||
raw->inbuf = (char *) alloc_bootmem_low(RAW3215_INBUF_SIZE);
|
||||
raw->cdev = cdev;
|
||||
cdev->dev.driver_data = raw;
|
||||
dev_set_drvdata(&cdev->dev, raw);
|
||||
cdev->handler = raw3215_irq;
|
||||
|
||||
raw->flags |= RAW3215_FIXED;
|
||||
|
Reference in New Issue
Block a user