-
Type:
Task
-
Resolution: Unresolved
-
Priority:
Major
-
Component/s: None
-
None
-
Environment:
Kernel Driver Version : 6.9.0-9-gcd6724a (latest pre-release)
Rogue Version: v6.8.0
build server: rdsrv403
FW target: XilinxVariumC1100PrbsTester
Python Script: PrbsTesting.py
If I use "/sbin/insmod /u1/aes-stream-drivers/data_dev/driver/datadev.ko cfgSize=0x200000 cfgRxCount=256 cfgTxCount=16" (using default cfgMode=1) then the data looks correct and no errors detected in PRBS testing:
ruckman@rdsrv403:~$ cat /proc/datadev_0
PCIe[BUS:NUM:SLOT.FUNC] : 0000:01:00.0
---------- Firmware Axi Version -----------
Firmware Version : 0x3010000
ScratchPad : 0x0
Up Time Count : 383
Git Hash : dirty (uncommitted code)
DNA Value : 0x0000000040020000015668e81590c505
Build String : XilinxVariumC1100PrbsTester: Vivado v2025.2, rdsrv411 (Ubuntu 22.04.5 LTS), Built Mon Jan 5 03:32:26 PM PST 2026 by ruckman
Hardware Type : XilinxVariumC1100 (0x010)
Bifurcation Index : 0
---------- DMA Firmware General ----------
IRQ : 162
Int Req Count : 0
Continue Count : 0
Address Count : 4096
Hw Write Buff Count : 256
Hw Read Buff Count : 0
Cache Config : 0x0
Desc 128 En : 1
Enable Ver : 0x5010101
Driver Load Count : 1
IRQ Hold : 10000
BG Enable : 0x0
GPU Async En : 0
DMA Timeout : 65535
-------- DMA Kernel Driver General --------
DMA Driver's Git Version : 6.9.0-9-gcd6724a
DMA Driver's API Version : 0x6
GPUAsync Support : Disabled
---- Read Buffers (Firmware->Software) ----
Buffer Count : 256
Buffer Size : 2097152
Buffer Mode : 1
Buffers In User : 0
Buffers In Hw : 256
Buffers In Pre-Hw Q : 0
Buffers In Rx Queue : 0
Tot Buffer Use : 50906682
---- Write Buffers (Software->Firmware) ---
Buffer Count : 16
Buffer Size : 2097152
Buffer Mode : 1
Buffers In User : 0
Buffers In Hw : 0
Buffers In Pre-Hw Q : 0
Buffers In Sw Queue : 16
Tot Buffer Use : 0

But if I use cfgMode=0x2 ("/sbin/insmod /u1/aes-stream-drivers/data_dev/driver/datadev.ko cfgSize=0x200000 cfgRxCount=256 cfgTxCount=16 cfgMode=0x2") then I am getting PRBS errors in my testing
ruckman@rdsrv403:~$ cat /proc/datadev_0
PCIe[BUS:NUM:SLOT.FUNC] : 0000:01:00.0
---------- Firmware Axi Version -----------
Firmware Version : 0x3010000
ScratchPad : 0x0
Up Time Count : 533
Git Hash : dirty (uncommitted code)
DNA Value : 0x0000000040020000015668e81590c505
Build String : XilinxVariumC1100PrbsTester: Vivado v2025.2, rdsrv411 (Ubuntu 22.04.5 LTS), Built Mon Jan 5 03:32:26 PM PST 2026 by ruckman
Hardware Type : XilinxVariumC1100 (0x010)
Bifurcation Index : 0
---------- DMA Firmware General ----------
IRQ : 162
Int Req Count : 1
Continue Count : 0
Address Count : 4096
Hw Write Buff Count : 1
Hw Read Buff Count : 0
Cache Config : 0x0
Desc 128 En : 1
Enable Ver : 0x5010101
Driver Load Count : 1
IRQ Hold : 10000
BG Enable : 0x0
GPU Async En : 0
DMA Timeout : 65535
-------- DMA Kernel Driver General --------
DMA Driver's Git Version : 6.9.0-9-gcd6724a
DMA Driver's API Version : 0x6
GPUAsync Support : Disabled
---- Read Buffers (Firmware->Software) ----
Buffer Count : 256
Buffer Size : 2097152
Buffer Mode : 2
Buffers In User : 78
Buffers In Hw : 1
Buffers In Pre-Hw Q : 0
Buffers In Rx Queue : 177
Tot Buffer Use : 13044874
---- Write Buffers (Software->Firmware) ---
Buffer Count : 16
Buffer Size : 2097152
Buffer Mode : 2
Buffers In User : 0
Buffers In Hw : 0
Buffers In Pre-Hw Q : 0
Buffers In Sw Queue : 16
Tot Buffer Use : 0

It's the same FW used in both tests. The only difference is changing cfgMode=0x1 (default) to cfgMode=0x2. So I think there is a bug in the kernel driver code when cfgMode=0x2