From: Dario Binacchi <dario.binacchi@amarulasolutions.com>
To: Marc Kleine-Budde <mkl@pengutronix.de>
Cc: linux-kernel@vger.kernel.org,
Amarula patchwork <linux-amarula@amarulasolutions.com>,
michael@amarulasolutions.com,
"David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
Wolfgang Grandegger <wg@grandegger.com>,
linux-can@vger.kernel.org, netdev@vger.kernel.org
Subject: Re: [RFC PATCH 04/13] can: slcan: use CAN network device driver API
Date: Wed, 8 Jun 2022 18:42:09 +0200 [thread overview]
Message-ID: <CABGWkvotv4Ebm7OSbp=oQ7vwHhR_=sXfAAEkngjLm2faYrUFPw@mail.gmail.com> (raw)
In-Reply-To: <20220607111330.tkpaplzeupfq3peh@pengutronix.de>
Hi Marc,
On Tue, Jun 7, 2022 at 1:13 PM Marc Kleine-Budde <mkl@pengutronix.de> wrote:
>
> On 07.06.2022 11:47:43, Dario Binacchi wrote:
> > As suggested by commit [1], now the driver uses the functions and the
> > data structures provided by the CAN network device driver interface.
> >
> > There is no way to set bitrate for SLCAN based devices via ip tool, so
> ^^^^^^^^^^^^^^^
> Currently the driver doesn't implement a way
Ok, I'll do it.
>
> > you'll have to do this by slcand/slcan_attach invocation through the
> > -sX parameter:
> >
> > - slcan_attach -f -s6 -o /dev/ttyACM0
> > - slcand -f -s8 -o /dev/ttyUSB0
> >
> > where -s6 in will set adapter's bitrate to 500 Kbit/s and -s8 to
> > 1Mbit/s.
> > See the table below for further CAN bitrates:
> > - s0 -> 10 Kbit/s
> > - s1 -> 20 Kbit/s
> > - s2 -> 50 Kbit/s
> > - s3 -> 100 Kbit/s
> > - s4 -> 125 Kbit/s
> > - s5 -> 250 Kbit/s
> > - s6 -> 500 Kbit/s
> > - s7 -> 800 Kbit/s
> > - s8 -> 1000 Kbit/s
> >
> > In doing so, the struct can_priv::bittiming.bitrate of the driver is not
> > set and since the open_candev() checks that the bitrate has been set, it
> > must be a non-zero value, the bitrate is set to a fake value (-1) before
> > it is called.
>
> What does
>
> | ip --details -s -s link show
>
> show as the bit rate?
# ip --details -s -s link show dev can0
can0: <NOARP,UP,LOWER_UP> mtu 16 qdisc pfifo_fast state UP mode
DEFAULT group default qlen 10
link/can promiscuity 0 minmtu 0 maxmtu 0
can state ERROR-ACTIVE restart-ms 0
bitrate 500000 sample-point 0.875
tq 41 prop-seg 20 phase-seg1 21 phase-seg2 6 sjw 1
slcan: tseg1 2..256 tseg2 1..128 sjw 1..128 brp 1..256 brp-inc 1
clock 24000000
re-started bus-errors arbit-lost error-warn error-pass bus-off
0 0 0 0 0 0
numtxqueues 1 numrxqueues 1 gso_max_size 65536 gso_max_segs 65535
RX: bytes packets errors dropped overrun mcast
292 75 0 0 0 0
RX errors: length crc frame fifo missed
0 0 0 0 0
TX: bytes packets errors dropped carrier collsns
0 0 0 0 0 0
TX errors: aborted fifo window heartbeat transns
0 0 0 0 1
And after applying your suggestions about using the CAN framework
support for setting the fixed bit rates (you'll
find it in V2), this is the output instead:
# ip --details -s -s link show dev can0
5: can0: <NOARP,UP,LOWER_UP> mtu 16 qdisc pfifo_fast state UP mode
DEFAULT group default qlen 10
link/can promiscuity 0 minmtu 0 maxmtu 0
can state ERROR-ACTIVE restart-ms 0
bitrate 500000
[ 10000, 20000, 50000, 100000, 125000, 250000,
500000, 800000, 1000000 ]
clock 0
re-started bus-errors arbit-lost error-warn error-pass bus-off
0 0 0 0 0 0
numtxqueues 1 numrxqueues 1 gso_max_size 65536 gso_max_segs 65535
RX: bytes packets errors dropped overrun mcast
37307 4789 0 0 0 0
RX errors: length crc frame fifo missed
0 0 0 0 0
TX: bytes packets errors dropped carrier collsns
7276 988 0 0 0 0
TX errors: aborted fifo window heartbeat transns
0 0 0 0 1
Thanks and regards,
Dario
>
> Marc
>
> --
> Pengutronix e.K. | Marc Kleine-Budde |
> Embedded Linux | https://www.pengutronix.de |
> Vertretung West/Dortmund | Phone: +49-231-2826-924 |
> Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
--
Dario Binacchi
Embedded Linux Developer
dario.binacchi@amarulasolutions.com
__________________________________
Amarula Solutions SRL
Via Le Canevare 30, 31100 Treviso, Veneto, IT
T. +39 042 243 5310
info@amarulasolutions.com
www.amarulasolutions.com
next prev parent reply other threads:[~2022-06-08 16:42 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-06-07 9:47 [RFC PATCH 00/13] can: slcan: extend supported features Dario Binacchi
2022-06-07 9:47 ` [RFC PATCH 01/13] can: slcan: use the BIT() helper Dario Binacchi
2022-06-07 9:47 ` [RFC PATCH 02/13] can: slcan: use netdev helpers to print out messages Dario Binacchi
2022-06-07 9:47 ` [RFC PATCH 03/13] can: slcan: use the alloc_can_skb() helper Dario Binacchi
2022-06-07 10:15 ` Marc Kleine-Budde
2022-06-07 9:47 ` [RFC PATCH 04/13] can: slcan: use CAN network device driver API Dario Binacchi
2022-06-07 11:13 ` Marc Kleine-Budde
2022-06-08 16:42 ` Dario Binacchi [this message]
2022-06-09 7:07 ` Marc Kleine-Budde
2022-06-12 21:24 ` Dario Binacchi
2022-06-07 9:47 ` [RFC PATCH 05/13] can: slcan: simplify the device de-allocation Dario Binacchi
2022-06-07 20:45 ` Oliver Hartkopp
2022-06-07 9:47 ` [RFC PATCH 06/13] can: slcan: allow to send commands to the adapter Dario Binacchi
2022-06-09 7:16 ` Marc Kleine-Budde
2022-06-11 21:43 ` Dario Binacchi
2022-06-12 10:39 ` Marc Kleine-Budde
2022-06-07 9:47 ` [RFC PATCH 07/13] can: slcan: set bitrate by CAN device driver API Dario Binacchi
2022-06-07 10:09 ` Marc Kleine-Budde
2022-06-07 9:47 ` [RFC PATCH 08/13] can: slcan: send the open command to the adapter Dario Binacchi
2022-06-07 11:00 ` Marc Kleine-Budde
2022-06-07 9:47 ` [RFC PATCH 09/13] can: slcan: send the close " Dario Binacchi
2022-06-07 9:47 ` [RFC PATCH 10/13] can: slcan: move driver into separate sub directory Dario Binacchi
2022-06-07 9:47 ` [RFC PATCH 11/13] can: slcan: add ethtool support to reset adapter errors Dario Binacchi
2022-06-07 10:52 ` Marc Kleine-Budde
2022-06-08 16:33 ` Dario Binacchi
2022-06-09 6:38 ` Marc Kleine-Budde
2022-06-09 7:24 ` Dario Binacchi
2022-06-09 8:01 ` Marc Kleine-Budde
2022-06-09 8:52 ` Dario Binacchi
2022-06-10 10:51 ` Marc Kleine-Budde
2022-06-07 9:47 ` [RFC PATCH 12/13] can: slcan: extend the protocol with error info Dario Binacchi
2022-06-07 10:56 ` Marc Kleine-Budde
2022-06-07 9:47 ` [RFC PATCH 13/13] can: slcan: extend the protocol with CAN state info Dario Binacchi
2022-06-07 10:13 ` Marc Kleine-Budde
2022-06-07 10:27 ` [RFC PATCH 00/13] can: slcan: extend supported features Vincent MAILHOL
2022-06-07 10:39 ` Marc Kleine-Budde
2022-06-07 12:20 ` Vincent MAILHOL
2022-06-07 12:19 ` Vincent MAILHOL
2022-06-07 23:55 ` Max Staudt
2022-06-08 0:15 ` Max Staudt
2022-06-08 7:19 ` Marc Kleine-Budde
2022-06-08 12:55 ` Max Staudt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='CABGWkvotv4Ebm7OSbp=oQ7vwHhR_=sXfAAEkngjLm2faYrUFPw@mail.gmail.com' \
--to=dario.binacchi@amarulasolutions.com \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=kuba@kernel.org \
--cc=linux-amarula@amarulasolutions.com \
--cc=linux-can@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=michael@amarulasolutions.com \
--cc=mkl@pengutronix.de \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=wg@grandegger.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.