devcan-flexcan

CAN driver for FlexCAN Controller

Syntax:

devcan-flexcan [options] ["can_num"[,sysirq[,sysirq[,sysirq]]]]
can_num is can 0|1|2|3
sysirq is CAN system interrupt number, up to 3 IRQ numbers
                  [-a]
                  [-b string]
                  [-B presdiv,propseg,pseg1,pseg2,rjw]
                  [-c number]
                  [-d string]
                  [-D presdiv,propseg,pseg1,pseg2,rjw]
                  [-f]
                  [-h]
                  [-i midrx[,midtx]]
                  [-I]
                  [-l]
                  [-m number]
                  [-M]
                  [-n number]
                  [-o]
                  [-p port]
                  [-q number]
                  [-r number[,number[,number]]
                  [-R]
                  [-s]
                  [-S]
                  [-t]
                  [-u number]
                  [-v]
                  [-w]
                  [-x]
                  [-z]
              

Runs on:

QNX OS

Options:

These are the options available for this driver.

can_num
The CAN number to use, which can be can0, can1, can2, or can3.
sysirg
The CAN system interrupt number, up to 3 IRQ numbers
-a
Disable the AUTOBUS. By default, the AUTOBUS is enabled.
-b bitrate
Use a predefined bitrate. The valid values you can specify are 50K, 125K, 250K, 1M or 500K. The default is 50K.
-B presdiv,propseg,pseg1,pseg2,rjw
Manually define the bitrate rate as a hexadecimal value. For each value, these conditions apply:
  • presdiv specifies the bitrate prescaler.
  • propseg specifies the propagation segment time.
  • pseg1 specifies the bitrate time segment 1 must be less than or equal to 0x7.
  • pseg2 specifies the bitrate time segment 2 must be less than or equal to 0x7 but can't be zero (0x0).
  • rjw specifies the sync jump rate must be less than or equal to 0x3.
-c
Set and enable TDC offset (available for CAN-FD drivers)
-d
Predefined data bitrate for CAN-FD (50K, 125K, 250K, 500K, 1M, 5M, default 50K)
-D presdiv,propseg,pseg1,pseg2,rjw
Manually define the bitrate rate for CAN-FD as a hexadecimal value. For each value, these conditions apply:
  • presdiv, specifies the bitrate prescaler.
  • propseg specifies the propagation segment time.
  • pseg1 specifies the bitrate time segment 1 must be less than or equal to 0x7.
  • pseg2 specifies the bitrate time segment 2 must be less than or equal to 0x7 but can't be zero (0x0).
  • rjw specifies the sync jump rate must be less than or equal to 0x3.
-f
CAN-FD mode
Note:
"-f" option shouldn't be used on old FlexCAN controller(eg. the one found on imx8qm/qxp SOC).
-h
Single message buffer (14MB), default dual buffer (28MB).
Note:
"-h" option is mandatory if the FlexCAN controller(eg. the one found on imx8qm/qxp SOC) doesn't support dual buffer
-i midrx[,midtx]
The starting receive and transmit message ID. The starting default ID is 0x100C0000.
-I
Enable IO privity
-l
Listen only Mode
-m timestamp
Set the initial local timestamp as a hexadecimal number. The default initial timestamp is 0x00000008.
-M
Disable MECR
Note:
"-M" is mandatory for certain FlexCAN controllers(eg. the one found on the i.MX8M Plus SOC)
-n number
Number of each device mailbox message buffer (default 128 for CAN, 28 for CAN-FD).
-o
Enable CAN FD ISO
-p port
Base address of FlexCAN
-q number
Client wait queue length for each mailbox
-r number[,number[,number]]
IRQ number, up to 3 IRQ numbers
-R
Enable raw mode, send and receive both standard and extended messages (doesn't require the -x option).
-s
Enable triple bitrate sample (default single sample).
-S
Message data endian swap
-t
Enable the self-test loopback mode. By default, the self-test loopback mode is disabled.
-u can_unit_num
CAN unit number. The default is 1.
-v
Increase driver verbosity
-w
The lowest buffer is transmitted first.
-x
Enable extended 29-bit CAN message ID. The default is 11-bit MID.
-z
Enable the timer synchronization. By default, it's disabled.
Page updated: