@@ -44,13 +44,13 @@ static void print_usage(FILE *f)
"\n"
"\t[ termination { 0..65535 } ]\n"
"\n"
- "\tWhere: BITRATE := { 1..1000000 }\n"
+ "\tWhere: BITRATE := { NUMBER }\n"
"\t SAMPLE-POINT := { 0.000..0.999 }\n"
"\t TQ := { NUMBER }\n"
- "\t PROP-SEG := { 1..8 }\n"
- "\t PHASE-SEG1 := { 1..8 }\n"
- "\t PHASE-SEG2 := { 1..8 }\n"
- "\t SJW := { 1..4 }\n"
+ "\t PROP-SEG := { NUMBER }\n"
+ "\t PHASE-SEG1 := { NUMBER }\n"
+ "\t PHASE-SEG2 := { NUMBER }\n"
+ "\t SJW := { NUMBER }\n"
"\t RESTART-MS := { 0 | NUMBER }\n"
);
}
The configuration ranges in print_usage() are taken from "Table 8 - Time segments' minimum configuration ranges" in section 11.3.1.2 "Configuration of the bit time parameters" of ISO 11898-1. The standard clearly specifies that "implementations may allow time segments that exceed the minimum required configuration ranges specified in Table 8". Because no maximum ranges are given, all given ranges { a..b } are simply replaced with { NUMBER }. The actual ranges are specific to earch device and should be confirmed doing: $ ip --details link show can0 1: can0: <NOARP,ECHO> mtu 16 qdisc noop state DOWN mode DEFAULT group default qlen 10 link/can promiscuity 0 minmtu 0 maxmtu 0 can state STOPPED restart-ms 0 ES582.1/ES584.1: tseg1 2..256 tseg2 2..128 sjw 1..128 brp 1..512 brp-inc 1 ES582.1/ES584.1: dtseg1 2..32 dtseg2 1..16 dsjw 1..8 dbrp 1..32 dbrp-inc 1 clock 80000000 numtxqueues 1 numrxqueues 1 gso_max_size 65536 gso_max_segs 65535 Signed-off-by: Vincent Mailhol <mailhol.vincent@wanadoo.fr> --- ip/iplink_can.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-)