All of lore.kernel.org
 help / color / mirror / Atom feed
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

  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.