Wolfgang Grandegger wrote:
> Oliver Hartkopp wrote:
>> 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?
> 
> But then strip-src will extract netdev_tx_t also for kernel versions <
> 2.6.31, right?
> 

Exactly.

But i forgot to point out that the typedef would also be enabled in dev.h in
kernel versions < 2.6.31 :-)

Oliver

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

Reply via email to