[PATCH net-next v2 1/2] dt-bindings: net: airoha: npu: Add EN7581-7996 support
Lorenzo Bianconi
lorenzo at kernel.org
Sat Jan 17 09:53:09 PST 2026
> > On Wed, Jan 14, 2026 at 11:35:10PM +0100, Lorenzo Bianconi wrote:
> > > > > In the current codebase the NPU driver does not need to access the WiFi PCIe
> > > > > slot (or any other external device) since the offloading (wired and wireless)
> > > > > is fully managed by the NPU chip (hw + firmware binaries).
> > > >
> > > > Are you saying the NPU itself enumerates the PCI busses and finds the
> > > > WiFi device? If it can do that, why not ask it which PCI device it is
> > > > using?
> > >
> > > nope, we do not need any PCI enumeration in the NPU driver at the moment
> > > (please see below).
> > >
> > > >
> > > > Or this the PCI slot to use somehow embedded within the firmware?
> > >
> > > in the current implementation the NPU driver does not need any reference to
> > > WiFi or Ethernet devices. The NPU exports offloading APIs to consumer devices
> > > (e.g. WiFi or Ethernet devices). In particular,
> > > 1- during NPU module probe, the NPU driver configures NPU hw registers and
> > > loads the NPU firmware binaries.
> > > 2- NPU consumers (ethernet and/or wifi devices) get a reference to the NPU
> > > device via device-tree in order to consume NPU APIs for offloading.
> > > 3- netfilter flowtable offloads traffic to the selected ethernet and/or WiFi
> > > device that runs the NPU APIs accessible via the NPU reference obtained via
> > > dts.
> > >
> > > The issue here is the NPU firmware binaries for EN7581, loaded by the NPU
> > > driver during NPU probe and used for offloading, depend on the WiFi chipset
> > > (e.g. MT7996 or MT7992) available on the EN7581 board (we have two different
> > > NPU binaries for MT7996 offloading and for MT7992 offloading).
> >
> > Maybe i'm getting the NPU wrong, but i assumed it was directly talking
> > to the Ethernet and WiFi device on the PCIe bus, bypassing the host?
>
> correct
>
> > If so, it most somehow know what PCIe slots these devices use?
>
> I have low visibility on the NPU hw internals but I do not think there are
> any registers in NPU mmio memory where we can read this info, but I will
> confirm it (please remember the fw binaries are not load yet).
Airoha folks reported the NPU hw can't provide the PCIe Vendor/Device ID info
of the connected WiFi chip.
I guess we have the following options here:
- Rely on the firmware-name property as proposed in v1
- Access the PCIe bus from the NPU driver during probe in order to enumerate
the PCIe devices and verify WiFi chip PCIe Vendor/Device ID
- During mt76 probe trigger the NPU fw reload if required. This approach would
require adding a new callback in airoha_npu ops struct (please note I have
not tested this approach and I not sure this is really doable).
What do you think? Which one do you prefer?
Regards,
Lorenzo
>
> Regards,
> Lorenzo
>
> >
> > Andrew
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 228 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20260117/9aa72859/attachment.sig>
More information about the linux-arm-kernel
mailing list