1*e3cfeefcSBjørn MorkWhat: /sys/class/net/<iface>/cdc_ncm/min_tx_pkt 2*e3cfeefcSBjørn MorkDate: May 2014 3*e3cfeefcSBjørn MorkKernelVersion: 3.16 4*e3cfeefcSBjørn MorkContact: Bjørn Mork <bjorn@mork.no> 5*e3cfeefcSBjørn MorkDescription: 6*e3cfeefcSBjørn Mork The driver will pad NCM Transfer Blocks (NTBs) longer 7*e3cfeefcSBjørn Mork than this to tx_max, allowing the device to receive 8*e3cfeefcSBjørn Mork tx_max sized frames with no terminating short 9*e3cfeefcSBjørn Mork packet. NTBs shorter than this limit are transmitted 10*e3cfeefcSBjørn Mork as-is, without any padding, and are terminated with a 11*e3cfeefcSBjørn Mork short USB packet. 12*e3cfeefcSBjørn Mork 13*e3cfeefcSBjørn Mork Padding to tx_max allows the driver to transmit NTBs 14*e3cfeefcSBjørn Mork back-to-back without any interleaving short USB 15*e3cfeefcSBjørn Mork packets. This reduces the number of short packet 16*e3cfeefcSBjørn Mork interrupts in the device, and represents a tradeoff 17*e3cfeefcSBjørn Mork between USB bus bandwidth and device DMA optimization. 18*e3cfeefcSBjørn Mork 19*e3cfeefcSBjørn Mork Set to 0 to pad all frames. Set greater than tx_max to 20*e3cfeefcSBjørn Mork disable all padding. 21*e3cfeefcSBjørn Mork 22*e3cfeefcSBjørn MorkWhat: /sys/class/net/<iface>/cdc_ncm/rx_max 23*e3cfeefcSBjørn MorkDate: May 2014 24*e3cfeefcSBjørn MorkKernelVersion: 3.16 25*e3cfeefcSBjørn MorkContact: Bjørn Mork <bjorn@mork.no> 26*e3cfeefcSBjørn MorkDescription: 27*e3cfeefcSBjørn Mork The maximum NTB size for RX. Cannot exceed the 28*e3cfeefcSBjørn Mork maximum value supported by the device. Must allow at 29*e3cfeefcSBjørn Mork least one max sized datagram plus headers. 30*e3cfeefcSBjørn Mork 31*e3cfeefcSBjørn Mork The actual limits are device dependent. See 32*e3cfeefcSBjørn Mork dwNtbInMaxSize. 33*e3cfeefcSBjørn Mork 34*e3cfeefcSBjørn Mork Note: Some devices will silently ignore changes to 35*e3cfeefcSBjørn Mork this value, resulting in oversized NTBs and 36*e3cfeefcSBjørn Mork corresponding framing errors. 37*e3cfeefcSBjørn Mork 38*e3cfeefcSBjørn MorkWhat: /sys/class/net/<iface>/cdc_ncm/tx_max 39*e3cfeefcSBjørn MorkDate: May 2014 40*e3cfeefcSBjørn MorkKernelVersion: 3.16 41*e3cfeefcSBjørn MorkContact: Bjørn Mork <bjorn@mork.no> 42*e3cfeefcSBjørn MorkDescription: 43*e3cfeefcSBjørn Mork The maximum NTB size for TX. Cannot exceed the 44*e3cfeefcSBjørn Mork maximum value supported by the device. Must allow at 45*e3cfeefcSBjørn Mork least one max sized datagram plus headers. 46*e3cfeefcSBjørn Mork 47*e3cfeefcSBjørn Mork The actual limits are device dependent. See 48*e3cfeefcSBjørn Mork dwNtbOutMaxSize. 49*e3cfeefcSBjørn Mork 50*e3cfeefcSBjørn MorkWhat: /sys/class/net/<iface>/cdc_ncm/tx_timer_usecs 51*e3cfeefcSBjørn MorkDate: May 2014 52*e3cfeefcSBjørn MorkKernelVersion: 3.16 53*e3cfeefcSBjørn MorkContact: Bjørn Mork <bjorn@mork.no> 54*e3cfeefcSBjørn MorkDescription: 55*e3cfeefcSBjørn Mork Datagram aggregation timeout in µs. The driver will 56*e3cfeefcSBjørn Mork wait up to 3 times this timeout for more datagrams to 57*e3cfeefcSBjørn Mork aggregate before transmitting an NTB frame. 58*e3cfeefcSBjørn Mork 59*e3cfeefcSBjørn Mork Valid range: 5 to 4000000 60*e3cfeefcSBjørn Mork 61*e3cfeefcSBjørn Mork Set to 0 to disable aggregation. 62*e3cfeefcSBjørn Mork 63*e3cfeefcSBjørn MorkThe following read-only attributes all represent fields of the 64*e3cfeefcSBjørn Morkstructure defined in section 6.2.1 "GetNtbParameters" of "Universal 65*e3cfeefcSBjørn MorkSerial Bus Communications Class Subclass Specifications for Network 66*e3cfeefcSBjørn MorkControl Model Devices" (CDC NCM), Revision 1.0 (Errata 1), November 67*e3cfeefcSBjørn Mork24, 2010 from USB Implementers Forum, Inc. The descriptions are 68*e3cfeefcSBjørn Morkquoted from table 6-3 of CDC NCM: "NTB Parameter Structure". 69*e3cfeefcSBjørn Mork 70*e3cfeefcSBjørn MorkWhat: /sys/class/net/<iface>/cdc_ncm/bmNtbFormatsSupported 71*e3cfeefcSBjørn MorkDate: May 2014 72*e3cfeefcSBjørn MorkKernelVersion: 3.16 73*e3cfeefcSBjørn MorkContact: Bjørn Mork <bjorn@mork.no> 74*e3cfeefcSBjørn MorkDescription: 75*e3cfeefcSBjørn Mork Bit 0: 16-bit NTB supported (set to 1) 76*e3cfeefcSBjørn Mork Bit 1: 32-bit NTB supported 77*e3cfeefcSBjørn Mork Bits 2 – 15: reserved (reset to zero; must be ignored by host) 78*e3cfeefcSBjørn Mork 79*e3cfeefcSBjørn MorkWhat: /sys/class/net/<iface>/cdc_ncm/dwNtbInMaxSize 80*e3cfeefcSBjørn MorkDate: May 2014 81*e3cfeefcSBjørn MorkKernelVersion: 3.16 82*e3cfeefcSBjørn MorkContact: Bjørn Mork <bjorn@mork.no> 83*e3cfeefcSBjørn MorkDescription: 84*e3cfeefcSBjørn Mork IN NTB Maximum Size in bytes 85*e3cfeefcSBjørn Mork 86*e3cfeefcSBjørn MorkWhat: /sys/class/net/<iface>/cdc_ncm/wNdpInDivisor 87*e3cfeefcSBjørn MorkDate: May 2014 88*e3cfeefcSBjørn MorkKernelVersion: 3.16 89*e3cfeefcSBjørn MorkContact: Bjørn Mork <bjorn@mork.no> 90*e3cfeefcSBjørn MorkDescription: 91*e3cfeefcSBjørn Mork Divisor used for IN NTB Datagram payload alignment 92*e3cfeefcSBjørn Mork 93*e3cfeefcSBjørn MorkWhat: /sys/class/net/<iface>/cdc_ncm/wNdpInPayloadRemainder 94*e3cfeefcSBjørn MorkDate: May 2014 95*e3cfeefcSBjørn MorkKernelVersion: 3.16 96*e3cfeefcSBjørn MorkContact: Bjørn Mork <bjorn@mork.no> 97*e3cfeefcSBjørn MorkDescription: 98*e3cfeefcSBjørn Mork Remainder used to align input datagram payload within 99*e3cfeefcSBjørn Mork the NTB: (Payload Offset) mod (wNdpInDivisor) = 100*e3cfeefcSBjørn Mork wNdpInPayloadRemainder 101*e3cfeefcSBjørn Mork 102*e3cfeefcSBjørn MorkWhat: /sys/class/net/<iface>/cdc_ncm/wNdpInAlignment 103*e3cfeefcSBjørn MorkDate: May 2014 104*e3cfeefcSBjørn MorkKernelVersion: 3.16 105*e3cfeefcSBjørn MorkContact: Bjørn Mork <bjorn@mork.no> 106*e3cfeefcSBjørn MorkDescription: 107*e3cfeefcSBjørn Mork NDP alignment modulus for NTBs on the IN pipe. Shall 108*e3cfeefcSBjørn Mork be a power of 2, and shall be at least 4. 109*e3cfeefcSBjørn Mork 110*e3cfeefcSBjørn MorkWhat: /sys/class/net/<iface>/cdc_ncm/dwNtbOutMaxSize 111*e3cfeefcSBjørn MorkDate: May 2014 112*e3cfeefcSBjørn MorkKernelVersion: 3.16 113*e3cfeefcSBjørn MorkContact: Bjørn Mork <bjorn@mork.no> 114*e3cfeefcSBjørn MorkDescription: 115*e3cfeefcSBjørn Mork OUT NTB Maximum Size 116*e3cfeefcSBjørn Mork 117*e3cfeefcSBjørn MorkWhat: /sys/class/net/<iface>/cdc_ncm/wNdpOutDivisor 118*e3cfeefcSBjørn MorkDate: May 2014 119*e3cfeefcSBjørn MorkKernelVersion: 3.16 120*e3cfeefcSBjørn MorkContact: Bjørn Mork <bjorn@mork.no> 121*e3cfeefcSBjørn MorkDescription: 122*e3cfeefcSBjørn Mork OUT NTB Datagram alignment modulus 123*e3cfeefcSBjørn Mork 124*e3cfeefcSBjørn MorkWhat: /sys/class/net/<iface>/cdc_ncm/wNdpOutPayloadRemainder 125*e3cfeefcSBjørn MorkDate: May 2014 126*e3cfeefcSBjørn MorkKernelVersion: 3.16 127*e3cfeefcSBjørn MorkContact: Bjørn Mork <bjorn@mork.no> 128*e3cfeefcSBjørn MorkDescription: 129*e3cfeefcSBjørn Mork Remainder used to align output datagram payload 130*e3cfeefcSBjørn Mork offsets within the NTB: Padding, shall be transmitted 131*e3cfeefcSBjørn Mork as zero by function, and ignored by host. (Payload 132*e3cfeefcSBjørn Mork Offset) mod (wNdpOutDivisor) = wNdpOutPayloadRemainder 133*e3cfeefcSBjørn Mork 134*e3cfeefcSBjørn MorkWhat: /sys/class/net/<iface>/cdc_ncm/wNdpOutAlignment 135*e3cfeefcSBjørn MorkDate: May 2014 136*e3cfeefcSBjørn MorkKernelVersion: 3.16 137*e3cfeefcSBjørn MorkContact: Bjørn Mork <bjorn@mork.no> 138*e3cfeefcSBjørn MorkDescription: 139*e3cfeefcSBjørn Mork NDP alignment modulus for use in NTBs on the OUT 140*e3cfeefcSBjørn Mork pipe. Shall be a power of 2, and shall be at least 4. 141*e3cfeefcSBjørn Mork 142*e3cfeefcSBjørn MorkWhat: /sys/class/net/<iface>/cdc_ncm/wNtbOutMaxDatagrams 143*e3cfeefcSBjørn MorkDate: May 2014 144*e3cfeefcSBjørn MorkKernelVersion: 3.16 145*e3cfeefcSBjørn MorkContact: Bjørn Mork <bjorn@mork.no> 146*e3cfeefcSBjørn MorkDescription: 147*e3cfeefcSBjørn Mork Maximum number of datagrams that the host may pack 148*e3cfeefcSBjørn Mork into a single OUT NTB. Zero means that the device 149*e3cfeefcSBjørn Mork imposes no limit. 150