I replied to a topic with this problem (viewtopic.php?f=59&t=4189&start=10#p15406), but figure that perhaps it is better to create a new thread since it's a slightly new subject

I am bringing up an embedded linux platform via BusyBox/buildroot. I have the PCAN-miniPCIe 2-channel device. With the non-mainline pcan driver for linux (8.11.0), I am able to write messages to the CAN bus but not receive. I have verified that my CAN bus end-device is terminated correctly by connecting it to a separate CAN-USB dongle and seeing the expected data + data rate on my developer laptop.
I have assumed up to now that my problem in not receiving any messages is with legacy INTA versus MSI, so I have tried to run the driver with `usemsi=1`. With the `DEBUG_MSI` macro set during driver compilation, I can see the following debug data indicating failure and fallback to legacy INTA:
Code: Select all
pcan: Release_20210119_n (le)
pcan: driver config [mod] [isa] [pci] [pec] [dng] [usb] [net]
pcan 0000:10:00.0: using bridge 0000:00:1d.0 INT A to get IRQ 23
pcan 0000:10:00.0: PCI->APIC IRQ transform: INT A -> IRQ 23
pcan 0000:10:00.0: PCAN-miniPCIe sub-system id 5h (2 channels)
pcan: MSI flags=0082h => maxvec=2 vs. msi_max=2
pcan: enabling [1..2] MSI status: 1
pcan: fallback into INTA mode IRQ23 (err 1)
Code: Select all
10:00.0 Network controller: PEAK-System Technik GmbH Device 0008 (rev 02)
Subsystem: PEAK-System Technik GmbH Device 0005
Control: I/O- Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx+
Interrupt: pin A routed to IRQ 23
Region 0: Memory at a1110000 (32-bit, non-prefetchable) [size=64K]
Region 1: Memory at a1100000 (32-bit, non-prefetchable) [size=64K]
Capabilities: [50] Power Management version 0
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [70] MSI: Enable- Count=1/2 Maskable- 64bit+
Address: 00000000fee02004 Data: 4025
Capabilities: [90] Express (v1) Endpoint, MSI 00
DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency L0s <64ns, L1 <1us
ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset- SlotPowerLimit 0.000W
DevCtl: CorrErr- NonFatalErr- FatalErr- UnsupReq-
RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop-
MaxPayload 128 bytes, MaxReadReq 512 bytes
DevSta: CorrErr- NonFatalErr- FatalErr- UnsupReq- AuxPwr- TransPend-
LnkCap: Port #0, Speed 2.5GT/s, Width x1, ASPM L0s, Exit Latency L0s unlimited
ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp-
LnkCtl: ASPM Disabled; RCB 64 bytes, Disabled- CommClk-
ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
LnkSta: Speed 2.5GT/s (ok), Width x1 (ok)
TrErr- Train- SlotClk- DLActive- BWMgmt- ABWMgmt-
Kernel driver in use: pcan