Subject: Re: [PATCH net-next-2.6 v5 1/1] can: c_can: Added support for Bosch C_CAN controller

From: Wolfgang Grandegger <[email-masked]>
Date: Tue, 25 Jan 2011 08:51:52 +0100

On 01/25/2011 05:36 AM, Bhupesh SHARMA wrote:
> Hi Wolfgang,
...
>>> +		/* handle error on the bus */
>>> +		lec_type = c_can_has_and_handle_berr(priv);
>>> +		if (lec_type && (error_type != C_CAN_NO_ERROR))
>>> +			work_done += c_can_err(dev, error_type, lec_type);
>>
>> State changes are only reported if berr_reporting is enabled and a bus
>> error occured. This needs to be fixed.
> 
> As I mentioned earlier in a response to a review comment, the Bus Error
> reporting for C_CAN seems different from sja1000 and flexcan approaches.
> Do you think it will be useful to drop CAN_CTRLMODE_BERR_REPORTING from
> priv->can.ctrlmode_supported as done by *pch* driver? Or do you have
> a better idea..

You bus error reporting is OK. The problem is that it does not only
affect bus errors but also state changes. State change messages should
alway be send independent of priv->can.ctrlmode. It's just a matter of
moving code to the right location. E.g. the code snippet above inside
c_can_err() before you check for bus errors.

>> Feel free to send the output of "candump any,0:0,#FFFFFFFF" when
>> sending
>> messages without cable connected and with a bus error provocuted.
> 
> OK. I will try to cross-compile candump for my arm-v7 architecture
> and will send the output.

Thanks,

Wolfgang.