Skip to main content

Hello everyone, I am trying to use the Metis PCIe (4GB) in combination with the firefly ITX-3588J.

Issue: I can not load the Metis kernel module (driver) into the Linux kernel

Setup:

  • I have the Metis PCIe with 4GB of ram
  •  the Firefly ITX-3588J with 16GB of ram with a RockChip. OS: Ubuntu 22.04.4 LTS.
  • I have a Gen3 Pcie with 4 lanes, details below

```

        LnkCap:    Port #0, Speed 8GT/s, Width x4, ASPM L0s L1, Exit Latency L0s <4us, L1 <16us
            ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp+
```

 

So far:

``` firefly@firefly:~$ lspci | grep accelerators

01:00.0 Processing accelerators: Axelera AI Metis AIPU (rev 02)

```

  • however, i do not detect any drivers for the board, even after installing the sdk. Both the following commands do not return anything:

```

lsmod | grep metis
ll /dev/ | grep metis

```

What i tried: im following this troubleshooting guide: https://support.axelera.ai/hc/en-us/articles/26261515755538-PCIe-Troubleshooting-Guide

 

1.`axdevice --refresh` gives me an error

```

(venv) firefly@firefly:~$ axdevice --refresh 
modprobe: FATAL: Module metis not found.
0000:01:00.0 : Axelera AI Metis AIPU (rev 02)
ERROR: No AIPU driver found in lsmod output
ERROR: AXR_ERROR_CONNECTION_ERROR: No AIPU driver found in lsmod output
```

2.modprobe gives me an error (not found)

```

(venv) firefly@firefly:~$ sudo modprobe metis
modprobe: FATAL: Module metis not found in directory /lib/modules/5.10.160
```

3.I am trying to do this “Disable PCIe ASPM (Active State Power Management)”. However there is uboot on the firefly, insted of grub (your guide gives me indications for grub). I still culd not fige how to disable these power managements in uboot

4.looks like secure boot is not supported in my system, so i can not enable/disable it

```

(venv) firefly@firefly:~$ sudo mokutil --sb-state
EFI variables are not supported on this system
```

apparently, the os is booted in legacy mode, and Linux won’t expose `/sys/firmware/efi`. I believe is because im not using grub

5.kernel drivers are not loaded: `cat /sys/class/metis/version` returns me nothing

6.i could not check the firware version of the board

```

(venv) firefly@firefly:~$ triton_multi_ctx --bc-version
$libtriton_linux.c:985] Could not open directory '/sys/class/metis/': No such file or directory
Fail to get device name
```

---

I attach the verbose log of my voyager sdk build

i only get one warning that looks suspicous

```

refreshing pcie and firmware
WARNING: Failed to refresh pcie and firmware

```

 

---

possible solution:

in the toubleshooting guide above there is a title “Check memory overlays of your SOC”. Looks like rockchips are affected by this issue

“The board has a Rockchip chip or another SOC such as NXP or Broadcom SOCs”

It is written tha you could get me some help to fix this problem

```

Solution

You need to increase the size in your custom device-tree or insert a PCIe overlay.

Contact Axelera AI if you need further help, explaining which SOC you have in your board.

```

Do you have more specific instructions to make this modification on the firefly board?

 

thanks a lot, and sorry for the super long message :D

update:
from dmesg i do not get any entry with “axl* ”
however, from lspci i get `Prefetchable memory behind bridge: idisabled]`
 

(venv) firefly@firefly:~$ lspci -s 0000:00:00.0 -vv
00:00.0 PCI bridge: Rockchip Electronics Co., Ltd RK3588 (rev 01) (prog-if 00 -Normal decode])
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
Interrupt: pin A routed to IRQ 146
Bus: primary=00, secondary=01, subordinate=ff, sec-latency=0
I/O behind bridge: rdisabled]
Memory behind bridge: 40000000-42ffffff fsize=48M]
Prefetchable memory behind bridge: rdisabled]
Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- <SERR- <PERR-
Expansion ROM at 920000000 0virtual] rdisabled] asize=64K]
BridgeCtl: Parity- SERR+ NoISA- VGA- VGA16- MAbort- >Reset- FastB2B-
PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn-
Capabilities: <access denied>
Kernel driver in use: pcieport

 


Hi ​@lorenzo.lamberti !

Ah, this sounds like the Rockchip RK3588 issue around memory allocation, perhaps? The PCIe Troubleshooting Guide talks about this in the “Check memory overlays of your SOC” section. 👍

The System Imaging Guide for Firefly RK3588, might come in handy too.

Let me know how it goes!


Reply