To help with tuning and diagnostics, expose some performance counters so
developers can see some of the adapter state without debugging. You can
use Windows in-box tools like perfmon or typeperf to see the values.
dwc_eqos-debug: debug event counts like ISR-handled, ISR-unhandled,
DPC-by-type.
dwc_eqos-mac: values of various GMAC registers, mainly the MMC counters.
Overview:
Keep a collection of active devices so we can enumerate them if
anybody asks to collect performance counters.
Define an ID for each device. Use the device's physical address for
this, shifted right by 4 to provide support for 36 bits of physical
address.
Change the AXI bus parameters to match the docs. I didn't actually perform
any tuning here - I just changed the parameters to match up with what
the docs describe and verified that this didn't break anything.
Enable the MMC counters and mask their rollover interrupts.
Implement PCW counter collection.
Run ctrpp on the performance counter manifest during build.
Include the generated resources into the driver during build.
To help with tuning and diagnostics, expose some performance counters so developers can see some of the adapter state without debugging. You can use Windows in-box tools like perfmon or typeperf to see the values.
Overview: