TMF download page
Are you targeting Windows 8 or Windows Server 2012? You don't need anything from here! These operating systems already include all the TMFs you'll need in the PDB from the Microsoft Symbol Server.
For Windows 7 and Windows Server 2008 R2, here is a copy of the TMF decoders for NDIS.SYS:
This file was last updated on July 24 2015, and includes traces for the following versions of NDIS:
- RTM
- KB977927
- KB981765
- KB2471472
- KB2482122
- SP1
- KB2624668
- KB2697537
- KB2688892
- KB2719857
- KB2729608
- KB2894906
- KB2974617
- KB3014793
NDIS traces messages at the following verbosity levels
Level | Name | Description |
1 | Severe errors | NDIS doesn't use this level much. It's mostly interchangeable with the Errors level. |
2 | Errors | An error that will definitely cause something to break. Example: miniport installation will fail because a registry key is missing. |
3 | Warnings | An unusual condition that might need fixing. Example: miniport indicated a malformed status indication, and NDIS dropped it. |
4 | Info | Informational messages. Example: miniport is going into low power mode now. |
5 | Verbose | NDIS doesn't use this level much. It's reserved for a few messages that aren't usually useful |
NDIS recognizes the following flags:
Flag value | Name | Description |
0x00000001 | Initialization | |
0x00000002 | Configuration | |
0x00000004 | Send | The Send and Receive traces can be very noisy. Only enable them if you have a specific problem with the datapath. If possible, limit the number of packets sent while tracing these. |
0x00000008 | Receive | The Send and Receive traces can be very noisy. Only enable them if you have a specific problem with the datapath. If possible, limit the number of packets sent while tracing these. |
0x00000010 | Protocol | |
0x00000020 | Bind | |
0x00000040 | Bus | Traces miniport's access to underlying hardware, if the miniport uses NDIS APIs to do so. (WDM miniports will not go through NDIS to access their hardware). |
0x00000080 | Registry | Traces how external drivers use the Ndis Configuration APIs |
0x00000100 | PnP Event Memory Allocation | (PnP Event on Windows 7 / Windows Server 2008 R2 and later; Memory Allocation on Windows Vista / Windows Server 2008) |
0x00000200 | Light-Weight Filter | |
0x00000400 | OID Request | |
0x00000800 | Work Item | Traces the occasional maintenance that NDIS needs to do on work items, including miniport reset |
0x00001000 | PNP | |
0x00002000 | Power Management | |
0x00004000 | Protocol Reference Counting | (Windows Vista / Windows Server 2008 only) |
0x00004000 | Selective Suspend | (Windows 8 / Windows Server 2012 and later) |
0x00008000 | Lock | (Windows Vista / Windows Server 2008 only) |
0x00010000 | Reset | |
0x00020000 | WMI | |
0x00040000 | CoNDIS | |
0x00080000 | Reference Counting | |
0x00100000 | Memory Allocation | |
0x00200000 | NDISIF | |
0x00400000 | NDIS Port | |
0x00800000 | Status Indication | |
0x01000000 | Receive Queues (VMQ) | (Windows 7 / Windows Server 2008 R2 and later) |
0x02000000 | SR-IOV | (Windows 8 / Windows Server 2012 and later) |
0x04000000 | Miscellaneous | Features that are not generally of interest to third party developers, like CEIP bookkeeping. (Windows 8 / Windows Server 2012 and later) |
0x08000000 | Bind Engine | State changes for protocol and filter bind, unbind, pause, and restart (Windows 8.1 / Windows Server 2012 R2 and later) |