@@ -336,6 +336,7 @@ static void can_print_opt(struct link_util *lu, FILE *f, struct rtattr *tb[])
print_uint(PRINT_ANY, "phase_seg2", " phase-seg2 %u",
bt->phase_seg2);
print_uint(PRINT_ANY, "sjw", " sjw %u", bt->sjw);
+ print_uint(PRINT_ANY, "brp", " brp %u", bt->brp);
close_json_object();
}
@@ -411,6 +412,7 @@ static void can_print_opt(struct link_util *lu, FILE *f, struct rtattr *tb[])
print_uint(PRINT_ANY, "phase_seg2", " dphase-seg2 %u",
dbt->phase_seg2);
print_uint(PRINT_ANY, "sjw", " dsjw %u", dbt->sjw);
+ print_uint(PRINT_ANY, "brp", " dbrp %u", dbt->brp);
close_json_object();
}
Report the value of the bit-rate prescaler (brp) for both the nominal and the data bittiming. Currently, only the constant brp values (brp_{min,max,inc}) are being reported. Also, brp is the only member of struct can_bittiming not being reported. Noticeably, brp is not used as an input for bittiming calculation and although it could be calculated by hand from the other bittiming parameters with below formula: brp = clock * tq / 1000000000 with clock in hertz and tq in nano second (thus the need of a 1 billion factor to convert it back to second). But because above formula is not so trivial to remember and is subjected to rounding errors, it makes sense to directly output {d,}bpr. Signed-off-by: Vincent Mailhol <mailhol.vincent@wanadoo.fr> --- ip/iplink_can.c | 2 ++ 1 file changed, 2 insertions(+)