You said you were able to get it working on the Pi without using an interrupt. I haven’t tried that, but if that’s supported you may need to delete the interrupt-parent and interrupts line from your DTS so it isn’t trying to use that for the input.
At this point it would be helpful to have a logic analyzer or oscilloscope to see what the SPI is while the board is trying to probe the MCP2515.
Here’s the source too, you may be able to find what that specific error means:
Mostly the same, especially the kernel compilation and configuration steps.
The device tree steps will have different addresses, e.g. spi0 will probably not be at address spi@3210000. You’ll need use dmesg to find the path of the DTS file your board uses and go from there.
Once you find the proper DTS and hardware addresses the can and clocks blocks should be the same.