Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: [netbsd-10] src/sys/dev/pci



Module Name:    src
Committed By:   martin
Date:           Thu Jun 22 08:14:35 UTC 2023

Modified Files:
        src/sys/dev/pci [netbsd-10]: if_wm.c if_wmreg.h if_wmvar.h

Log Message:
Pull up following revision(s) (requested by msaitoh in ticket #213):

        sys/dev/pci/if_wm.c: revision 1.770
        sys/dev/pci/if_wm.c: revision 1.771
        sys/dev/pci/if_wm.c: revision 1.772
        sys/dev/pci/if_wm.c: revision 1.773
        sys/dev/pci/if_wm.c: revision 1.774
        sys/dev/pci/if_wm.c: revision 1.775
        sys/dev/pci/if_wm.c: revision 1.776
        sys/dev/pci/if_wmreg.h: revision 1.129
        sys/dev/pci/if_wm.c: revision 1.777
        sys/dev/pci/if_wm.c: revision 1.778
        sys/dev/pci/if_wmvar.h: revision 1.49
        sys/dev/pci/if_wm.c: revision 1.779
        sys/dev/pci/if_wm.c: revision 1.768
        sys/dev/pci/if_wm.c: revision 1.769
        sys/dev/pci/if_wmreg.h: revision 1.130
        sys/dev/pci/if_wm.c: revision 1.780
        sys/dev/pci/if_wm.c: revision 1.781

Count some 64bit counters correctly.
 - Fix calculation of GORC, GOTC, TOR and TOT counters correctly.
 - Found by knakahara.

Add note for the TORL register.

The TOR register includes error, flow control and broadcast rejected.

Sort lines. No functional change.

 Rearrange the order of the registers so that they are roughly in ascending
order.

Sort lines. No functional change.

Reorder evcnt_attach_dynamic(), WM_EVCNT_ADD() and evcnt_detach() to match.
IC{TX,RX}*C registers are for older than 82575.

Fix a bug that the transmit underrun counter is incorrectly counted.
 The transmit underrun bit in the transmit status filed is only for 82544
(and older?), so don't use the counter for newer chips. The bit is reserved
for newer chips, but the bit sometimes set on 82575 at least.

Don't add "Count" for event counter's description.

 Some statistics registers were replaced with new counters.
 - 0x403c was CEXTERR(Carrier Extension Error). 82575 and newer except 80003,
   ICHs and PCHs have HTDPMC(Host Tx Discarded Packets by MAC). I don't really
   know for 82575. The 82575 datasheet say nothing about it.
 - The following two are changed for circuit breaker. Only 82576's datasheet
   describes abut it, so the registers might be only for 82576.
   Use those registers for 82575 and newer except 80003, ICHs and PCHs just in
   case.
   - 0x40fc was TSCTFC(TCP Segmentation Context Tx Fail). It was replaced by
     the CBRMPC(Circuit Breaker Rx Manageability Packet) register.
   - 0x4124 was ICRXOC(Interrupt Cause Receiver Overrun). It was replaced by
     the HTCBDPC(Host Tx Circuit Breaker Dropped Packet) register.
 - From 0x4104 to 0x4124:
   - For 0x4124, 82575's datasheet says it's not changed(ICRXOC).
     I don't know if it's correct. We use new HTCBDPC register for 82575.
   - 82576 and newer changed the meaning.
   - I don't know for 80003, ICHs and PCHs. Don't count those registers.
     At least, those registers in PCH2 and PCH_CNP are all zero.

Add some new event counters.

Add the following counters for 82575 and newer except 80003, ICHs and PCHs:
    - Only 82576 document describes about the circuit breaker,
      so the following two might be only for 82575:
        - Circuit Breaker TX Manageability Packet
        - Circuit Breaker RX Dropped Packet
    - 82575's document doesn't describe the following two, but we can see
      the same value as GO{T,R}C have:
        - Host Good Octets RX
        - Host Good Octets TX
    - 82575's document doesn't describe the LENERRS (Length Errors) counter.
      I don't know if it has.
    - Perhaps Non-SerDes/SGMII devices don't have SCVPC
      (SerDes/SGMII Code Violation Packet) register. We don't care if
      it's SerDes/SGMII or not for now.
    - HRMPC (Header Redirection Missed Packet) appears only once
      in 8257[56]'s datasheet. FreeBSD's igb counts it, so we do, too.
    - Count the following two for I350 and newer. I don't know if PCHs have:
        - EEE TX LPI
        - EEE RX LPI

 Move statistics updating code from wm_tick() to new wm_update_stats().
 - To reuse.
 - No functional change.

Add SOICZIFDATA (ifconfig -z) support for evcnt(9).

 First update the statistics data, then clear the event counters,
and finally copy and clear if_data via ether_ioctl().

Fix prc511's comment and description.

 Use WM_IS_ICHPCH(). No functional change.

Fix typo. s/ictxact/ictxatc/. No functional change.


To generate a diff of this commit:
cvs rdiff -u -r1.767 -r1.767.2.1 src/sys/dev/pci/if_wm.c
cvs rdiff -u -r1.128 -r1.128.2.1 src/sys/dev/pci/if_wmreg.h
cvs rdiff -u -r1.48 -r1.48.4.1 src/sys/dev/pci/if_wmvar.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.




Home | Main Index | Thread Index | Old Index