Hi gurus,
I'm using the at91_can driver on a custom board. The following sequence
seems to cause the driver to hit a flood of error frames:
$ ip link set can0 up txqueuelen 1000 \
type can bitrate 1000000 loopback off
$ candump -L any,0:0,#FFFFFFFF > candump.log &
$ cansend can0 00000D01#01020304
$ killall candump
$ ip link set can0 down
$ cat candump.log
The output of this sequence is here:
Setting can0 interface
RTNETLINK answers: Device or resource busy
Dumping can0 receive data
Sending bogus can0 message
Ending can0 data dump
Disabling can0 interface
can0 data:
----------
(1259913144.764113) can0 20000020#0000000000000000
(1259913144.764230) can0 20000020#0000000000000000
(1259913144.764308) can0 20000020#0000000000000000
(1259913144.764425) can0 20000020#0000000000000000
(1259913144.764548) can0 20000020#0000000000000000
(1259913144.764643) can0 20000020#0000000000000000
(1259913144.764775) can0 20000020#0000000000000000
(1259913144.764970) can0 20000020#0000000000000000
(1259913144.765068) can0 20000020#0000000000000000
(1259913144.765144) can0 20000020#0000000000000000
(1259913144.765209) can0 20000020#0000000000000000
(1259913144.765323) can0 20000020#0000000000000000
(1259913144.765521) can0 20000020#0000000000000000
(1259913144.765464) can0 20000004#0008000000000000
(1259913144.765638) can0 20000020#0000000000000000
(1259913144.765705) can0 20000020#0000000000000000
(1259913144.765768) can0 20000004#0020000000000000
(1259913144.765895) can0 20000020#0000000000000000
(1259913144.766016) can0 20000020#0000000000000000
(1259913144.766140) can0 20000020#0000000000000000
...
The syslog output is also revealing, indicating a flood of "AERR irq"
errors.
Some debug output:
$ ip -detail link show can0
2: can0: <NOARP,UP,LOWER_UP,ECHO> mtu 16 qdisc pfifo_fast state UNKNOWN
qlen 100
link/can
can state ERROR-ACTIVE restart-ms 0
bitrate 1003313 sample-point 0.666
tq 110 prop-seg 2 phase-seg1 3 phase-seg2 3 sjw 1
: tseg1 4..16 tseg2 2..8 sjw 1..4 brp 2..128 brp-inc 1
clock 99328000
I've verified that the bus is properly terminated at 120 ohms and
CAN_H/CAN_L are wired properly. Using multiple bitrates (1Mbps vs 40
kbps) doesn't seem to affect it.
Any ideas on what might be going on?
Thanks,
Chris
_______________________________________________
Socketcan-core mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/socketcan-core