]> git.proxmox.com Git - mirror_ubuntu-kernels.git/commitdiff
net: remove driver_data direct access of struct device from more drivers
authorGreg Kroah-Hartman <gregkh@suse.de>
Tue, 5 May 2009 04:33:19 +0000 (21:33 -0700)
committerDavid S. Miller <davem@davemloft.net>
Tue, 5 May 2009 04:33:19 +0000 (21:33 -0700)
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.

Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ehea/ehea_main.c
drivers/net/ibmveth.c
drivers/net/sb1250-mac.c

index 604c844d07693c0670521d3d26acf236499b9ec5..37a190d85fcd6d467bf2f1314d2266b37e710858 100644 (file)
@@ -3256,7 +3256,7 @@ static ssize_t ehea_probe_port(struct device *dev,
                               struct device_attribute *attr,
                               const char *buf, size_t count)
 {
-       struct ehea_adapter *adapter = dev->driver_data;
+       struct ehea_adapter *adapter = dev_get_drvdata(dev);
        struct ehea_port *port;
        struct device_node *eth_dn = NULL;
        int i;
@@ -3311,7 +3311,7 @@ static ssize_t ehea_remove_port(struct device *dev,
                                struct device_attribute *attr,
                                const char *buf, size_t count)
 {
-       struct ehea_adapter *adapter = dev->driver_data;
+       struct ehea_adapter *adapter = dev_get_drvdata(dev);
        struct ehea_port *port;
        int i;
        u32 logical_port_id;
@@ -3399,7 +3399,7 @@ static int __devinit ehea_probe_adapter(struct of_device *dev,
 
        adapter->pd = EHEA_PD_ID;
 
-       dev->dev.driver_data = adapter;
+       dev_set_drvdata(&dev->dev, adapter);
 
 
        /* initialize adapter and ports */
@@ -3463,7 +3463,7 @@ out:
 
 static int __devexit ehea_remove(struct of_device *dev)
 {
-       struct ehea_adapter *adapter = dev->dev.driver_data;
+       struct ehea_adapter *adapter = dev_get_drvdata(&dev->dev);
        int i;
 
        for (i = 0; i < EHEA_MAX_PORTS; i++)
index 0a51b0bd1e490a00eb82d9ae64b076bf67dc5dff..7902e5e16a1a958e55ef2031686a73ffc5e352cd 100644 (file)
@@ -1255,7 +1255,7 @@ static int __devinit ibmveth_probe(struct vio_dev *dev, const struct vio_device_
                return -ENOMEM;
 
        adapter = netdev_priv(netdev);
-       dev->dev.driver_data = netdev;
+       dev_set_drvdata(&dev->dev, netdev);
 
        adapter->vdev = dev;
        adapter->netdev = netdev;
@@ -1341,7 +1341,7 @@ static int __devinit ibmveth_probe(struct vio_dev *dev, const struct vio_device_
 
 static int __devexit ibmveth_remove(struct vio_dev *dev)
 {
-       struct net_device *netdev = dev->dev.driver_data;
+       struct net_device *netdev = dev_get_drvdata(&dev->dev);
        struct ibmveth_adapter *adapter = netdev_priv(netdev);
        int i;
 
@@ -1474,8 +1474,8 @@ const char * buf, size_t count)
        struct ibmveth_buff_pool *pool = container_of(kobj,
                                                      struct ibmveth_buff_pool,
                                                      kobj);
-       struct net_device *netdev =
-           container_of(kobj->parent, struct device, kobj)->driver_data;
+       struct net_device *netdev = dev_get_drvdata(
+           container_of(kobj->parent, struct device, kobj));
        struct ibmveth_adapter *adapter = netdev_priv(netdev);
        long value = simple_strtol(buf, NULL, 10);
        long rc;
index aaeebf57a9a4b89ec4d1eb8c38b024c8f9638079..7a4b9fbddbaffdb5857222b64980b5a0b4521f72 100644 (file)
@@ -2300,7 +2300,7 @@ static const struct net_device_ops sbmac_netdev_ops = {
 
 static int sbmac_init(struct platform_device *pldev, long long base)
 {
-       struct net_device *dev = pldev->dev.driver_data;
+       struct net_device *dev = dev_get_drvdata(&pldev->dev);
        int idx = pldev->id;
        struct sbmac_softc *sc = netdev_priv(dev);
        unsigned char *eaddr;
@@ -2731,7 +2731,7 @@ static int __init sbmac_probe(struct platform_device *pldev)
                goto out_unmap;
        }
 
-       pldev->dev.driver_data = dev;
+       dev_set_drvdata(&pldev->dev, dev);
        SET_NETDEV_DEV(dev, &pldev->dev);
 
        sc = netdev_priv(dev);
@@ -2756,7 +2756,7 @@ out_out:
 
 static int __exit sbmac_remove(struct platform_device *pldev)
 {
-       struct net_device *dev = pldev->dev.driver_data;
+       struct net_device *dev = dev_get_drvdata(&pldev->dev);
        struct sbmac_softc *sc = netdev_priv(dev);
 
        unregister_netdev(dev);