[PATCH] powerpc: don't duplicate name between vio_driver and device_driver
Stephen Rothwell
sfr at canb.auug.org.au
Mon Oct 24 16:05:03 EST 2005
There has been a discussion on LKML about the duplication of the name and
owner fields in struct pci_driver which concluded that we should just set
the embedded device_driver fields instead. This does the same for the
name field of struct vio_driver.
Signed-off-by: Stephen Rothwell <sfr at canb.auug.org.au>
---
arch/powerpc/kernel/vio.c | 3 +--
drivers/block/viodasd.c | 6 ++++--
drivers/cdrom/viocd.c | 6 ++++--
drivers/char/hvc_vio.c | 2 +-
drivers/char/hvcs.c | 4 +++-
drivers/char/viotape.c | 6 ++++--
drivers/net/ibmveth.c | 10 ++++++----
drivers/net/iseries_veth.c | 6 ++++--
drivers/scsi/ibmvscsi/ibmvscsi.c | 6 ++++--
include/asm-powerpc/vio.h | 1 -
10 files changed, 31 insertions(+), 19 deletions(-)
This patch depends on Michael Ellerman's patches merging vio.[ch] int the
merge tree.
--
Cheers,
Stephen Rothwell sfr at canb.auug.org.au
http://www.canb.auug.org.au/~sfr/
e787d14a6d87d4963c91a176139d1e83d0c845fa
diff --git a/arch/powerpc/kernel/vio.c b/arch/powerpc/kernel/vio.c
--- a/arch/powerpc/kernel/vio.c
+++ b/arch/powerpc/kernel/vio.c
@@ -76,10 +76,9 @@ static int vio_bus_remove(struct device
int vio_register_driver(struct vio_driver *viodrv)
{
printk(KERN_DEBUG "%s: driver %s registering\n", __FUNCTION__,
- viodrv->name);
+ viodrv->driver.name);
/* fill in 'struct driver' fields */
- viodrv->driver.name = viodrv->name;
viodrv->driver.bus = &vio_bus_type;
viodrv->driver.probe = vio_bus_probe;
viodrv->driver.remove = vio_bus_remove;
diff --git a/drivers/block/viodasd.c b/drivers/block/viodasd.c
--- a/drivers/block/viodasd.c
+++ b/drivers/block/viodasd.c
@@ -781,10 +781,12 @@ static struct vio_device_id viodasd_devi
MODULE_DEVICE_TABLE(vio, viodasd_device_table);
static struct vio_driver viodasd_driver = {
- .name = "viodasd",
.id_table = viodasd_device_table,
.probe = viodasd_probe,
- .remove = viodasd_remove
+ .remove = viodasd_remove,
+ .driver = {
+ .name = "viodasd",
+ }
};
/*
diff --git a/drivers/cdrom/viocd.c b/drivers/cdrom/viocd.c
--- a/drivers/cdrom/viocd.c
+++ b/drivers/cdrom/viocd.c
@@ -739,10 +739,12 @@ static struct vio_device_id viocd_device
MODULE_DEVICE_TABLE(vio, viocd_device_table);
static struct vio_driver viocd_driver = {
- .name = "viocd",
.id_table = viocd_device_table,
.probe = viocd_probe,
- .remove = viocd_remove
+ .remove = viocd_remove,
+ .driver = {
+ .name = "viocd",
+ }
};
static int __init viocd_init(void)
diff --git a/drivers/char/hvc_vio.c b/drivers/char/hvc_vio.c
--- a/drivers/char/hvc_vio.c
+++ b/drivers/char/hvc_vio.c
@@ -95,11 +95,11 @@ static int __devexit hvc_vio_remove(stru
}
static struct vio_driver hvc_vio_driver = {
- .name = hvc_driver_name,
.id_table = hvc_driver_table,
.probe = hvc_vio_probe,
.remove = hvc_vio_remove,
.driver = {
+ .name = hvc_driver_name,
.owner = THIS_MODULE,
}
};
diff --git a/drivers/char/hvcs.c b/drivers/char/hvcs.c
--- a/drivers/char/hvcs.c
+++ b/drivers/char/hvcs.c
@@ -720,10 +720,12 @@ static int __devexit hvcs_remove(struct
};
static struct vio_driver hvcs_vio_driver = {
- .name = hvcs_driver_name,
.id_table = hvcs_driver_table,
.probe = hvcs_probe,
.remove = hvcs_remove,
+ .driver = {
+ .name = hvcs_driver_name,
+ }
};
/* Only called from hvcs_get_pi please */
diff --git a/drivers/char/viotape.c b/drivers/char/viotape.c
--- a/drivers/char/viotape.c
+++ b/drivers/char/viotape.c
@@ -996,10 +996,12 @@ static struct vio_device_id viotape_devi
MODULE_DEVICE_TABLE(vio, viotape_device_table);
static struct vio_driver viotape_driver = {
- .name = "viotape",
.id_table = viotape_device_table,
.probe = viotape_probe,
- .remove = viotape_remove
+ .remove = viotape_remove,
+ .driver = {
+ .name = "viotape",
+ }
};
diff --git a/drivers/net/ibmveth.c b/drivers/net/ibmveth.c
--- a/drivers/net/ibmveth.c
+++ b/drivers/net/ibmveth.c
@@ -1150,10 +1150,12 @@ static struct vio_device_id ibmveth_devi
MODULE_DEVICE_TABLE(vio, ibmveth_device_table);
static struct vio_driver ibmveth_driver = {
- .name = (char *)ibmveth_driver_name,
- .id_table = ibmveth_device_table,
- .probe = ibmveth_probe,
- .remove = ibmveth_remove
+ .id_table = ibmveth_device_table,
+ .probe = ibmveth_probe,
+ .remove = ibmveth_remove,
+ .driver = {
+ .name = ibmveth_driver_name,
+ }
};
static int __init ibmveth_module_init(void)
diff --git a/drivers/net/iseries_veth.c b/drivers/net/iseries_veth.c
--- a/drivers/net/iseries_veth.c
+++ b/drivers/net/iseries_veth.c
@@ -1648,10 +1648,12 @@ static struct vio_device_id veth_device_
MODULE_DEVICE_TABLE(vio, veth_device_table);
static struct vio_driver veth_driver = {
- .name = DRV_NAME,
.id_table = veth_device_table,
.probe = veth_probe,
- .remove = veth_remove
+ .remove = veth_remove,
+ .driver = {
+ .name = DRV_NAME,
+ }
};
/*
diff --git a/drivers/scsi/ibmvscsi/ibmvscsi.c b/drivers/scsi/ibmvscsi/ibmvscsi.c
--- a/drivers/scsi/ibmvscsi/ibmvscsi.c
+++ b/drivers/scsi/ibmvscsi/ibmvscsi.c
@@ -1546,10 +1546,12 @@ static struct vio_device_id ibmvscsi_dev
MODULE_DEVICE_TABLE(vio, ibmvscsi_device_table);
static struct vio_driver ibmvscsi_driver = {
- .name = "ibmvscsi",
.id_table = ibmvscsi_device_table,
.probe = ibmvscsi_probe,
- .remove = ibmvscsi_remove
+ .remove = ibmvscsi_remove,
+ .driver = {
+ .name = "ibmvscsi",
+ }
};
int __init ibmvscsi_module_init(void)
diff --git a/include/asm-powerpc/vio.h b/include/asm-powerpc/vio.h
--- a/include/asm-powerpc/vio.h
+++ b/include/asm-powerpc/vio.h
@@ -55,7 +55,6 @@ struct vio_dev {
struct vio_driver {
struct list_head node;
- char *name;
const struct vio_device_id *id_table;
int (*probe)(struct vio_dev *dev, const struct vio_device_id *id);
int (*remove)(struct vio_dev *dev);
More information about the Linuxppc64-dev
mailing list