Wolfgang Grandegger wrote:
> Sam Ravnborg wrote:
>> On Wed, Sep 16, 2009 at 11:38:24AM +0200, Wolfgang Grandegger wrote:
>>> I'm going to apply this patch to the trunk later today to fix
>>> version dependencies with 2.6.31. I didn't fix the old drivers,
>>> though. Still, not all drivers use TX_* return codes for the 
>>> xmit function.
>>>
>>> Wolfgang.
>>>
>>> can: Handle netdev->last_rx and netdev_tx_t properly for 2.6.31
>>>
>>> Signed-off-by: Wolfgang Grandegger <[email protected]>
>>> ---
>>>  kernel/2.6/drivers/net/can/cc770/cc770.c          |    8 ++++++++
>>>  kernel/2.6/drivers/net/can/dev.c                  |    2 ++
>>>  kernel/2.6/drivers/net/can/ems_usb.c              |    9 +++++++++
>>>  kernel/2.6/drivers/net/can/esd_pci331.c           |    9 +++++++++
>>>  kernel/2.6/drivers/net/can/mcp251x.c              |    5 +++++
>>>  kernel/2.6/drivers/net/can/mscan/mscan.c          |    6 ++++++
>>>  kernel/2.6/drivers/net/can/sja1000/sja1000.c      |    9 +++++++++
>>>  kernel/2.6/drivers/net/can/slcan.c                |    6 ++++++
>>>  kernel/2.6/drivers/net/can/softing/softing_main.c |    7 +++++++
>>>  9 files changed, 61 insertions(+)
>>>
>>> Index: trunk/kernel/2.6/drivers/net/can/cc770/cc770.c
>>> ===================================================================
>>> --- trunk.orig/kernel/2.6/drivers/net/can/cc770/cc770.c
>>> +++ trunk/kernel/2.6/drivers/net/can/cc770/cc770.c
>>> @@ -422,7 +422,11 @@ static int cc770_set_bittiming(struct ne
>>>     return 0;
>>>  }
>>>  
>>> +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,31)
>>>  static int cc770_start_xmit(struct sk_buff *skb, struct net_device *dev)
>>> +#else
>>> +static netdev_tx_t cc770_start_xmit(struct sk_buff *skb, struct net_device 
>>> *dev)
>>> +#endif
>> If you defined netdev_tx_t in the can compat header if version is less
>> than 2.6.31 then you did not need this.
> 
> We use the script strip-src to retrieve a source file for a defined
> version of the kernel. For that reason, we prefer to use "if
> LINUX_VERSION_CODE < KERNEL_VERSION()" directly.
> 

Btw.

The code might be unconditionally

static netdev_tx_t cc770_start_xmit(..)

and we can add a typedef in socketcan/can/dev.h depending on the kernel
version, right?

Regards,
Oliver

_______________________________________________
Socketcan-core mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/socketcan-core

Reply via email to