On 09/27/2011 07:32 PM, Oliver Hartkopp wrote:
On 09/24/11 09:22, Wolfgang Grandegger wrote:
quoted
On 09/23/2011 11:32 AM, Pavel Pisa wrote:
quoted
quoted
On base of above analysis, I think that blindly set SJW
on maximum is not good idea. It should be at least limited
to 5% of bit time.
(..)
quoted
quoted
SJW is more problematic, but may it be use of 2 or 5%
of bittime by default with assurance that zero is
replaced by one, would serve to most people pleasure.
(..)
quoted
quoted
But there is still unknown parameter
capacity/length of connected wires so there is still
something left to user consideration.
Thanks for your detailed explanation. It clearly shows that adjusting
SJW is non-trivial and nothing a normal CAN user should deal with. When
adjusting SJW, do you also need to tweek other bit-timing parameters,
e.g. tq? I mean, would "ip link set can0 type can bitrate x
sampling-point y sjw z" work for your setup or do you need to use the
expert mode setting via "ip link set can0 type can tq ..." anyway?
Hello Wolfgang,
i double checked a specification where i got my requirement to influence the
SJW value from. It says (non literally):
"Put the SJW to the highest possible value only reduced by tseg2."
The fact that this requirement might no fit to any CAN setup or may not be in
best academical shape is not my problem. My requirement is to provide an easy
way to move the SJW away from it's default value, which is currently
hard-coded to 1 in the can-dev framework when using it's bittiming calculation
function.
OK.
As almost everything is already done (only the provided SJW is not evaluated
in dev.c) this patch is IMO an valid option to support it. If Joe user can
tune the sampling point, why should he not be able to influence the SJW if he
thinks, he knows what he's doing?
Especially as the good working bittiming calculation is not touched in any way
and the default SJW remains 1 (even if '0' is provided as user input).
Still not sure if it's useful. Anyway, just added my acked-by to your patch.
Thanks,
Wolfgang.