Hi,
I observed similar behaviour with Arria 10 GX PCIe card (Attila Instant-DevKit). When using altera_cvp driver, the FPGA configuration with .rbf file succeeds.
But BAR access doesn't work, I also read 0xffffffff values instead of some known register bits. After warm restart the BAR access finally works.
A warm restart is not needed if I remove the PCIe device first (e.g. via sysfs by "echo 1 > /sys/bus/pci/devices/0000\:42\:00.0/remove") and then do a bus
rescan (e.g by "echo 1 > /sys/bus/pci/rescan").
Any clue how to debug this? Or did you already find a solution?
Here, some infos from lspci. Before CvP configuration:
$ lspci -d 0x1172:0xe003 -vv
42:00.0 Unassigned class [ff00]: Altera Corporation Device e003 (rev 01)
Subsystem: Device 4e1b:4e0c
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-
Latency: 0, Cache Line Size: 64 bytes
Interrupt: pin A routed to IRQ 31
Region 0: Memory at f8300000 (64-bit, prefetchable)
Region 4: Memory at f8000000 (32-bit, non-prefetchable)
Capabilities: <access denied>
Kernel driver in use: Altera CvP
After CvP configuration (BAR access not working):
$ lspci -d 0x1172:0xe003 -vv
42:00.0 Unassigned class [ff00]: Altera Corporation Device e003 (rev 01)
Subsystem: Device 4e1b:4e0c
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 31
Region 0: Memory at f8300000 (64-bit, prefetchable) [disabled]
Region 4: [virtual] Memory at f8000000 (32-bit, non-prefetchable)
Capabilities: <access denied>
Kernel driver in use: Altera CvP
After PCIe device removal and bus rescan (BAR access working):
$ lspci -d 0x1172:0xe003 -vv
42:00.0 Unassigned class [ff00]: Altera Corporation Device e003 (rev 01)
Subsystem: Device 4e1b:4e0c
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 31
Region 0: Memory at f8300000 (64-bit, prefetchable)
Region 4: Memory at f8000000 (32-bit, non-prefetchable)
Capabilities: <access denied>
Kernel driver in use: Altera CvP
Thanks,
agust