Attached is a small patch that will add support for
 ethtool -i
to the prism54 driver.

ethtool -i queries the specified ethernet device for associated driver information.

This helps tools like Fedora's system-config-network to provide GUI management of network devices.
I learned how to write this patch by reading the ipw2100 driver code.

Thanks for considering to take it.
Kai

--- linux-2.6.16/drivers/net/wireless/prism54/islpci_dev.h.preke        
2006-03-20 06:53:29.000000000 +0100
+++ linux-2.6.16/drivers/net/wireless/prism54/islpci_dev.h      2006-04-12 
15:12:30.000000000 +0200
@@ -210,4 +210,8 @@
 
 int islpci_free_memory(islpci_private *);
 struct net_device *islpci_setup(struct pci_dev *);
+
+#define DRV_NAME       "prism54"
+#define DRV_VERSION    "1.2"
+
 #endif                         /* _ISLPCI_DEV_H */
--- linux-2.6.16/drivers/net/wireless/prism54/islpci_dev.c.preke        
2006-04-12 14:56:12.000000000 +0200
+++ linux-2.6.16/drivers/net/wireless/prism54/islpci_dev.c      2006-04-13 
01:39:27.000000000 +0200
@@ -22,6 +22,7 @@
 #include <linux/module.h>
 
 #include <linux/netdevice.h>
+#include <linux/ethtool.h>
 #include <linux/pci.h>
 #include <linux/etherdevice.h>
 #include <linux/delay.h>
@@ -788,6 +789,17 @@
 }
 #endif
 
+static void islpci_ethtool_get_drvinfo(struct net_device *dev,
+                                       struct ethtool_drvinfo *info)
+{
+       strcpy(info->driver, DRV_NAME);
+       strcpy(info->version, DRV_VERSION);
+}
+
+static struct ethtool_ops islpci_ethtool_ops = {
+       .get_drvinfo = islpci_ethtool_get_drvinfo,
+};
+
 struct net_device *
 islpci_setup(struct pci_dev *pdev)
 {
@@ -814,6 +826,7 @@
        ndev->do_ioctl = &prism54_ioctl;
        ndev->wireless_handlers =
            (struct iw_handler_def *) &prism54_handler_def;
+       ndev->ethtool_ops = &islpci_ethtool_ops;
 
        ndev->hard_start_xmit = &islpci_eth_transmit;
        /* ndev->set_multicast_list = &islpci_set_multicast_list; */
--- linux-2.6.16/drivers/net/wireless/prism54/islpci_hotplug.c.preke    
2006-04-12 14:56:22.000000000 +0200
+++ linux-2.6.16/drivers/net/wireless/prism54/islpci_hotplug.c  2006-04-12 
15:14:16.000000000 +0200
@@ -28,9 +28,6 @@
 #include "islpci_mgt.h"                /* for pc_debug */
 #include "isl_oid.h"
 
-#define DRV_NAME       "prism54"
-#define DRV_VERSION    "1.2"
-
 MODULE_AUTHOR("[Intersil] R.Bastings and W.Termorshuizen, The prism54.org 
Development Team <[EMAIL PROTECTED]>");
 MODULE_DESCRIPTION("The Prism54 802.11 Wireless LAN adapter");
 MODULE_LICENSE("GPL");

Reply via email to