can: peak_usb: add adapter BEC callback definition
authorStephane Grosjean <s.grosjean@peak-system.com>
Fri, 23 Jan 2015 10:31:20 +0000 (11:31 +0100)
committerMarc Kleine-Budde <mkl@pengutronix.de>
Wed, 28 Jan 2015 13:47:05 +0000 (14:47 +0100)
Add the definition of a new callback that enable any PEAK-System CAN USB
adapter to grant read access to its Bus Error Counters value. This ability is
not supported by all the PEAK-System adapters, thus, for those, the callback
pointer will be initiaized to NULL, which is correct regarding the linux-can
device driver specs.

Signed-off-by: Stephane Grosjean <s.grosjean@peak-system.com>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
drivers/net/can/usb/peak_usb/pcan_usb_core.c
drivers/net/can/usb/peak_usb/pcan_usb_core.h

index 2768399a52fa99dadfdf615056d4efda668da3db..38634323ec51c21dec0d507e2cf815967a84f80d 100644 (file)
@@ -750,6 +750,7 @@ static int peak_usb_create_dev(const struct peak_usb_adapter *peak_usb_adapter,
        dev->can.bittiming_const = &peak_usb_adapter->bittiming_const;
        dev->can.do_set_bittiming = peak_usb_set_bittiming;
        dev->can.do_set_mode = peak_usb_set_mode;
+       dev->can.do_get_berr_counter = peak_usb_adapter->do_get_berr_counter;
        dev->can.ctrlmode_supported = peak_usb_adapter->ctrlmode_supported;
 
        netdev->netdev_ops = &peak_usb_netdev_ops;
index 54fdb5978a057471c49ca8b93f2f2a8f7e6b30dd..739a344427a200e9e82e8e95a10ce10a3e15d81e 100644 (file)
@@ -67,6 +67,8 @@ struct peak_usb_adapter {
        int (*dev_stop)(struct peak_usb_device *dev);
        int (*dev_restart_async)(struct peak_usb_device *dev, struct urb *urb,
                                        u8 *buf);
+       int (*do_get_berr_counter)(const struct net_device *netdev,
+                                  struct can_berr_counter *bec);
        u8 ep_msg_in;
        u8 ep_msg_out[PCAN_USB_MAX_CHANNEL];
        u8 ts_used_bits;