Wednesday, December 9, 2020

Debugging the Cavium Simple Executive for Liquidio

Hi there,

I don't think this one runs afoul of any of the sidebar rules.

I made a perhaps poor choice to acquire some CN6640-SNIC10E-G NICs. According to the linux-firmware git tree logs, these are CN66XX-based NICs which are supported under liquidio using the /lib/firmware/liquidio/lio_210sv_nic.bin firmware file, which is just a Cavium Simple Executive application that's supposed to pass packets from and to the host CPU over PCIe.

Sadly, this doesn't work. In the in-flash version of U-boot, the liquidio driver simply cannot hand the firmware over to the card; when U-boot is built from source (see the SDK here), the firmware transfer succeeds but liquidio claims the card stops responding (even though octeon-top and the serial console disagree).

I'm wondering if anyone here has any experience debugging Simple Executive applications for this or other MIPS OCTEON-based Cavium "Smart NICs" -- or whether this adventure in attempting to rescue older networking hardware is bound to fail.



No comments:

Post a Comment