usbatm only outputs basic information via the per-device /proc/net/atm/ file, 
this patch allows the device specific USB ATM drivers to replace the 
atm_proc_read function with their own.

Signed-off-by: Simon Arlott <[EMAIL PROTECTED]>

---
 drivers/usb/atm/usbatm.c |    3 +++
 drivers/usb/atm/usbatm.h |    3 +++
 2 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/drivers/usb/atm/usbatm.c b/drivers/usb/atm/usbatm.c
index ec63b0e..d91ed11 100644
--- a/drivers/usb/atm/usbatm.c
+++ b/drivers/usb/atm/usbatm.c
@@ -761,6 +761,9 @@ static int usbatm_atm_proc_read(struct a
                return -ENODEV;
        }
 
+       if (instance->driver->proc_read != NULL)
+               return instance->driver->proc_read(instance, atm_dev, pos, 
page);
+
        if (!left--)
                return sprintf(page, "%s\n", instance->description);
 
diff --git a/drivers/usb/atm/usbatm.h b/drivers/usb/atm/usbatm.h
index ff8551e..d3c0ee4 100644
--- a/drivers/usb/atm/usbatm.h
+++ b/drivers/usb/atm/usbatm.h
@@ -121,6 +121,9 @@ struct usbatm_driver {
        /* cleanup ATM device ... can sleep, but can't fail */
        void (*atm_stop) (struct usbatm_data *, struct atm_dev *);
 
+       /* called when the proc file is read */
+       int (*proc_read) (struct usbatm_data *, struct atm_dev *, loff_t * pos, 
char *page);
+
         int bulk_in;   /* bulk rx endpoint */
         int isoc_in;   /* isochronous rx endpoint */
         int bulk_out;  /* bulk tx endpoint */
-- 
1.4.3.1


-- 
Simon Arlott (subscribed to lkml, don't CC)
-
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/

Reply via email to