Open engnfrc opened 3 years ago
Is anyone able to investigate further into this issue?
Your setup is too specialised to expect others to reproduce it, but there are a few things you could try to narrow down the problem:
$ sudo dtoverlay hel-wm8782 alsaname=mic
$ sudo dtoverlay mcp251xfd spi0-0 interrupt=24 oscillator=40000000 speed=20000000
e.g. start with a working CAN bus, then load the wm8782 overlay.
On an RPi 4 running Raspbian Buster and Kernel 5.10.44-v7l+ I'm finding that if I enable I2S that it's breaking SPI0, this is apparent through trying to setup can0 (MCP251XFD driver) using ip link commands which respond with
RTNETLINK answers: Connection timed out
and using dmesg I see:To date the only thing I've been able to do that gives me working CAN all the time is to remove from /boot/config.txt the line
dtparam=i2s=on
. The original MCP25XXFD (predecessor to MCP251XFD) and I2S worked OK together on Kernel 4.19.73, it's only since moving to 5.10.Y that I see this conflict. My original forum post is located here: https://www.raspberrypi.org/forums/viewtopic.php?f=29&t=314191&p=1885817#p1879426 but I don't think the right people are seeing it. I've also been in communication with the developers on linux-can@vger.kernel.org who were helping me troubleshoot the possibility of the MCP251XFD driver having an issue, but I'm stuck with where to go next, especially if it's a problem with either the I2S or SPI subsystems.My current /boot/config.txt with I2S and a custom WM8782 driver that requires I2S removed:
Anyone have any ideas where to go from here? Was there a major change in I2S from 4.19.Y to 5.10.Y that could be a factor? Or could there be something misconfigured in the CAN driver that's causing it to be adversely affected by changes to I2S?