CVSROOT:        /cvs
Module name:    src
Changes by:     [email protected]        2026/03/12 04:29:46

Modified files:
        sys/dev/pci    : if_bnxt.c 

Log message:
Add support for BCM575xx devices, variously known as Thor or P5.
There are a few significant differences to earlier devices.

The nic now requires some host memory to use as backing store for its queues,
and for now we're overallocating to some extent.  It's not a noticeable amount
of memory for a system with one of these nics in it, so this isn't a huge
concern.

P5 devices have notification queues to act as an indirection between tx/rx
completion rings and msi-x vectors.  We set up one per queue and statically
map them to msi-x vectors in turn according to the intrmap.

The doorbell structures are now 64 bits, and all written to through the same
memory address.

Ring groups are not used, so the functions to allocate and free ring groups
don't do anything for P5 devices; instead, rings are directly associated
with each other on creation, and aggregation rings are identified by a
different ring type.

tested by stsp@ and bluhm@ with BCM5741x and by me on BCM57404, BCM5741x
and BCM57504 devices

Reply via email to