CVSROOT:        /cvs
Module name:    src
Changes by:     [email protected]  2026/04/21 13:43:47

Modified files:
        sys/arch/octeon/dev: octpcie.c 

Log message:
sys/octeon: fix PCIe config tag layout

Octeon PCIe config-space MMIO uses a 12-bit register field; function,
device, and bus begin at bits 12, 15, and 20.

octpcie_make_tag() and octpcie_decompose_tag() used the conventional PCI
tag layout instead, so config accesses to non-zero device or function
numbers used the wrong MMIO offset.

On SRX300 this breaks enumeration of the second Broadcom switch function
at 0:0:1, which reads back garbage until the tag layout is corrected.

OK: kettenis@, visa@

Reply via email to