RE: Queries on CAN frame work

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi marc,

> -----Original Message-----
> From: Marc Kleine-Budde <mkl@xxxxxxxxxxxxxx>
> Sent: Sunday, January 16, 2022 4:56 AM
> To: Srinivas Neeli <sneeli@xxxxxxxxxx>
> Cc: Srinivas Goud <sgoud@xxxxxxxxxx>; Naveen Kumar Gaddipati
> <naveenku@xxxxxxxxxx>; Prasad Beer Prasad <prasadbe@xxxxxxxxxx>; linux-
> can <linux-can@xxxxxxxxxxxxxxx>; Stefan Mätje <stefan.maetje@xxxxxx>;
> Vincent MAILHOL <mailhol.vincent@xxxxxxxxxx>
> Subject: Re: Queries on CAN frame work
> 
> On 13.01.2022 22:10:18, Marc Kleine-Budde wrote:
> > On 13.01.2022 21:30:04, Marc Kleine-Budde wrote:
> > > > Recently we did few experiments with our CANFD network. Stuff
> > > > error observed with different Nominal and Dataphase prescaler
> > > > configuration values, which we get from the frame work.
> > > >
> > > > For lower baud rates separate prescalers are working good, but
> > > > when we switch to high baud rates(like 4Mbps and 5Mbps) observed
> > > > the BUSOFF state(Due to stuff errors) on IP(Xilinx).
> > > >
> > > > With shared prescaler(low prescalers) we are not seeing the
> > > > issue..
> 
> Can you please provide me:
> - the bit timing constants of the IP core for the arbitration and data
>   phase
> - the bit rate for the arbitration and data phase
>   (especially where the framework calculates not common prescalers)
> - the clock rate of the CAN bus clock
> 
> Can you also provide the hand calculated bit timing parameters for the
> above scenarios?

Baud rate 1/5Mbps
================
root@xilinx-vck190-2021_1:~# ip link set can6 type can bitrate 1000000 dbitrate 5000000 fd on   
[   26.837057] xilinx_can ff070000.can can6: bitrate error 0.0%
[   26.842731] xilinx_can ff070000.can can6: bitrate error 0.0%
 can6 txqroot@xilinx-vck190-2021_1:~# ifconfig can6 txqueuelen 1000
 root@xilinx-vck190-2021_1:~# ip link set can6 up
[   27.340880] IPv6: ADDRCONF(NETDEV_CHANGE): can6: link becomes ready
root@xilinx-vck190-2021_1:~# ip -d -s link show can6
 can6: <NOARP,UP,LOWER_UP,ECHO> mtu 72 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
    link/can  promiscuity 0 minmtu 0 maxmtu 0 
    can <FD> state ERROR-ACTIVE (berr-counter tx 0 rx 0) restart-ms 0 
	  bitrate 999999 sample-point 0.750 
	  tq 250 prop-seg 1 phase-seg1 1 phase-seg2 1 sjw 1
	  xilinx_can: tseg1 1..256 tseg2 1..128 sjw 1..128 brp 1..256 brp-inc 1
	  dbitrate 4999999 dsample-point 0.750 
	  dtq 50 dprop-seg 1 dphase-seg1 1 dphase-seg2 1 dsjw 1
	  xilinx_can: dtseg1 1..32 dtseg2 1..16 dsjw 1..16 dbrp 1..256 dbrp-inc 1
	  clock 79999999 
	  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   
    0          0        0       0       0       0       
    TX: bytes  packets  errors  dropped carrier collsns 
    0          0        0       0       0       0       
root@xilinx-vck190-2021_1:~# 

Parameters
BPRA -20, TS1 = 2, TS2 =1,sjw =1,
BPRD - 4, TS1 = 2, Ts2 = 1,sjw =1,
Clock ~80Mhz(79999999)

Hand configuration:
--------------------------- 
ip link set can0 type can tq 12 prop-seg 29 phase-seg1 30 phase-seg2 20 sjw 1 dtq 12 dprop-seg 5 dphase-seg1 6 dphase-seg2 4 dsjw 1 fd on  (A/D: 1/5Mbps, Sample point=75%)

Baud rate 1/4Mbps
================
root@xilinx-vck190-2021_1:~# ip link set can6 type can bitrate 1000000 dbitrate 4000000 fd on   
[  209.572938] xilinx_can ff070000.can can6: bitrate error 0.0%
[  209.578627] xilinx_can ff070000.can can6: bitrate error 0.0%
root@xilinx-vck190-2021_1:~# 
root@xilinx-vck190-2021_1:~# ip -d -s link show can6
9: can6: <NOARP,ECHO> mtu 72 qdisc pfifo_fast state DOWN mode DEFAULT group default qlen 1000
    link/can  promiscuity 0 minmtu 0 maxmtu 0 
    can <FD> state STOPPED (berr-counter tx 0 rx 0) restart-ms 0 
	  bitrate 999999 sample-point 0.750 
	  tq 250 prop-seg 1 phase-seg1 1 phase-seg2 1 sjw 1
	  xilinx_can: tseg1 1..256 tseg2 1..128 sjw 1..128 brp 1..256 brp-inc 1
	  dbitrate 3999999 dsample-point 0.750 
	  dtq 62 dprop-seg 1 dphase-seg1 1 dphase-seg2 1 dsjw 1
	  xilinx_can: dtseg1 1..32 dtseg2 1..16 dsjw 1..16 dbrp 1..256 dbrp-inc 1
	  clock 79999999 
	  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   
    0          0        0       0       0       0       
    TX: bytes  packets  errors  dropped carrier collsns 
    0          0        0       0       0       0       
root@xilinx-vck190-2021_1:~# 

Parameters
BPRA -20, TS1 = 2, TS2 =1,sjw =1,
BPRD - 5 , TS1 = 2, Ts2 = 1,sjw =1,
Clock ~80Mhz(79999999)

Hand configuration:
--------------------------
ip link set can0 type can tq 12 prop-seg 29 phase-seg1 30 phase-seg2 20 sjw 1 dtq 12 dprop-seg 7 dphase-seg1 7 dphase-seg2 5 dsjw 1 fd on (A/D: 1/4Mbps, Sample point=75%)
Reference:
https://www.kvaser.com/support/calculators/can-fd-bit-timing-calculator/

is there any plan to implement newsletter recommendations in frame work ?
https://can-newsletter.org/uploads/media/raw/f6a36d1461371a2f86ef0011a


> 
> regards,
> 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 |




[Index of Archives]     [Automotive Discussions]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]     [CAN Bus]

  Powered by Linux