[PATCH 1/3] usbatm: Allow sub-drivers to handle calls to atm_proc_read.

From: Simon Arlott
Date: Tue Jan 30 2007 - 16:27:37 EST


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 <simon@xxxxxxxxxxx>

---
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 majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/