I've been using CAN on mine for a while, it's pretty solid. Though I made my own overlay (I'm still running a testing image which doesn't seem to have come with the can overlays)
For the can1-m1 pins:
/dts-v1/;
/plugin/;
/ {
fragment@0 {
target = <&can1>;
__overlay__ {
status = "okay";
pinctrl-0 = <&can1m1_pins>;
assigned-clock-rates = <0x1dcd6500>;
};
};
};
(note I increased the clockrate to 500MHz there, the default is 200MHz. Dunno if there's any harm, but I've been running like that for a few months without issue)