diff options
| author | Marc Kleine-Budde <mkl@pengutronix.de> | 2026-08-17 18:24:58 +0200 |
|---|---|---|
| committer | Marc Kleine-Budde <mkl@pengutronix.de> | 2026-08-17 19:20:37 +0200 |
| commit | b55dcf72a57cd44cd0d518e9c26c2a015d8a3897 (patch) | |
| tree | aa31a9de6bbd553dacf977f340ff6ac758a8c73d /tools/perf/scripts/python | |
| parent | a0d62de8adcea7a4400e2d2a68625f761baf01c1 (diff) | |
| parent | b7d51d9b14eea0eb4f4cf3a8293b2f53539ca96f (diff) | |
Merge patch series "dt-bindings: can: rockchip: add rk3588 CAN-FD compatible"
Cunhao Lu <1579567540@qq.com> says:
Add support for the RK3588 CAN controller.
RK3588 integrates three CAN-FD controllers that are closely related to the
existing Rockchip CAN-FD IP already supported in the kernel. The RK3588
variant is not fully compatible with RK3568v2 because the RX FIFO count
register field has a different layout.
This series therefore:
- extends the existing Rockchip CAN-FD binding with the
rockchip,rk3588-canfd compatible
- adds a dedicated RK3588 match entry and devtype in the driver
RK3588 encodes RX_FIFO_CNT in bits 7:5 instead of 6:4. This difference was
found by comparing Rockchip's vendor kernel 6.1 CAN support for RK3568 and
RK3588, and was also confirmed by runtime testing.
RK3588 uses the existing erratum 5 empty-FIFO workaround. Based on Heiko's
testing, this series also enables the erratum 6 workaround for extended
frames being transmitted as standard frames.
CAN-FD is enabled for RK3588. The BRS bus-off issue seen in earlier testing
was caused by the transmit delay compensation setting. With
RKCANFD_REG_TRANSMIT_DELAY_COMPENSATION programmed to 0 on RK3588, CAN-FD
with BRS works in local testing.
Tested on an embedfire,rk3588-lubancat-5io board with can0/can1 directly
connected, no other device on the bus, 60 Ohm bus termination, and a 300
MHz CAN clock. The test used 500 kbit/s arbitration bitrate and 1, 3 and 5
Mbit/s data bitrates. The 5 Mbit/s data phase test ran for 15 minutes with:
| ip link set can0 type can bitrate 500000 sample-point 0.8 dbitrate 5000000 dsample-point 0.8 fd on berr-reporting on
| ip link set can1 type can bitrate 500000 sample-point 0.8 dbitrate 5000000 dsample-point 0.8 fd on berr-reporting on
| cangen can0 -I 2 -Li -Di -p 10 -f -g 1 -c32 -b
| cansequence -rv can1 -f
The receiver reported continuous sequence wrap-around messages up to
sequence wrap around (37219). Both interfaces reported 9528377 packets and
150667356 bytes, with 0 bus-errors, 0 error-warn, 0 error-pass and 0
bus-off events.
Link: https://patch.msgid.link/tencent_7BAA0052C402BFFD26291A64198084E39107@qq.com
[mkl: adjust commit message: don't merge DT changes]
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Diffstat (limited to 'tools/perf/scripts/python')
0 files changed, 0 insertions, 0 deletions
