[PATCH] mv643xx_eth: provide sysfs class device symlink

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



 On Sat, Mar 11, Olaf Hering wrote:

> Why is the /sys/class/net/eth0/device symlink not created for the
> mv643xx_eth driver? Does this work for other platform device drivers?
> Seems to work for the ps2 keyboard at least.

The SET_NETDEV_DEV has to be done before a call to register_netdev. With
the new patch below, the device symlink for the platform device was created.
Unfortunately, after the 4 ls commands, the network connection died. No
idea if the box crashed or if something else broke, lost remote access.



Provide sysfs 'device' in /class/net/ethN
Also, set module owner field, like pcnet32 driver does.

Signed-off-by: Olaf Hering <[email protected]>

---
 drivers/net/mv643xx_eth.c |    2 ++
 1 file changed, 2 insertions(+)

Index: linux-2.6.17-rc2/drivers/net/mv643xx_eth.c
===================================================================
--- linux-2.6.17-rc2.orig/drivers/net/mv643xx_eth.c
+++ linux-2.6.17-rc2/drivers/net/mv643xx_eth.c
@@ -1419,6 +1419,8 @@ static int mv643xx_eth_probe(struct plat
 	mv643xx_eth_update_pscr(dev, &cmd);
 	mv643xx_set_settings(dev, &cmd);
 
+	SET_MODULE_OWNER(dev);
+	SET_NETDEV_DEV(dev, &pdev->dev);
 	err = register_netdev(dev);
 	if (err)
 		goto out;




-- 

olaf@cantaloupe:~> l /sys/class/net/
total 0
drwxr-xr-x 3 root root 0 2006-04-21 17:14 eth0/
drwxr-xr-x 3 root root 0 2006-04-21 17:14 eth1/
drwxr-xr-x 3 root root 0 2006-04-21 17:14 lo/
drwxr-xr-x 3 root root 0 2006-04-21 17:15 sit0/
olaf@cantaloupe:~> l /sys/class/net/eth0/
total 0
-r--r--r-- 1 root root 4096 2006-04-21 17:14 addr_len
-r--r--r-- 1 root root 4096 2006-04-21 17:14 address
-r--r--r-- 1 root root 4096 2006-04-21 17:14 broadcast
-r--r--r-- 1 root root 4096 2006-04-21 17:14 carrier
lrwxrwxrwx 1 root root    0 2006-04-21 17:14 device -> ../../../devices/platform/mv643xx_eth.1/
-r--r--r-- 1 root root 4096 2006-04-21 17:14 features
-rw-r--r-- 1 root root 4096 2006-04-21 17:14 flags
-r--r--r-- 1 root root 4096 2006-04-21 17:14 ifindex
-r--r--r-- 1 root root 4096 2006-04-21 17:14 iflink
-rw-r--r-- 1 root root 4096 2006-04-21 17:14 mtu
drwxr-xr-x 2 root root    0 2006-04-21 17:14 statistics/
-rw-r--r-- 1 root root 4096 2006-04-21 17:14 tx_queue_len
-r--r--r-- 1 root root 4096 2006-04-21 17:14 type
--w------- 1 root root 4096 2006-04-21 17:14 uevent
-rw-r--r-- 1 root root 4096 2006-04-21 17:14 weight
olaf@cantaloupe:~> l /sys/class/net/eth1/
total 0
-r--r--r-- 1 root root 4096 2006-04-21 17:14 addr_len
-r--r--r-- 1 root root 4096 2006-04-21 17:14 address
-r--r--r-- 1 root root 4096 2006-04-21 17:14 broadcast
-r--r--r-- 1 root root 4096 2006-04-21 17:14 carrier
lrwxrwxrwx 1 root root    0 2006-04-21 17:14 device -> ../../../devices/pci0000:00/0000:00:0d.0/
-r--r--r-- 1 root root 4096 2006-04-21 17:14 features
-rw-r--r-- 1 root root 4096 2006-04-21 17:14 flags
-r--r--r-- 1 root root 4096 2006-04-21 17:14 ifindex
-r--r--r-- 1 root root 4096 2006-04-21 17:14 iflink
-rw-r--r-- 1 root root 4096 2006-04-21 17:14 mtu
drwxr-xr-x 2 root root    0 2006-04-21 17:14 statistics/
-rw-r--r-- 1 root root 4096 2006-04-21 17:14 tx_queue_len
-r--r--r-- 1 root root 4096 2006-04-21 17:14 type
--w------- 1 root root 4096 2006-04-21 17:14 uevent
-rw-r--r-- 1 root root 4096 2006-04-21 17:14 weight
olaf@cantaloupe:~> l /sys/class/net/eth*/device
lrwxrwxrwx 1 root root 0 2006-04-21 17:14 /sys/class/net/eth0/device -> ../../../devices/platform/mv643xx_eth.1/
lrwxrwxrwx 1 root root 0 2006-04-21 17:14 /sys/class/net/eth1/device -> ../../../devices/pci0000:00/0000:00:0d.0/
olaf@cantaloupe:~> 




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

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux