18c2ecf20Sopenharmony_ciWhat: /sys/class/net/<iface>/cdc_ncm/min_tx_pkt 28c2ecf20Sopenharmony_ciDate: May 2014 38c2ecf20Sopenharmony_ciKernelVersion: 3.16 48c2ecf20Sopenharmony_ciContact: Bjørn Mork <bjorn@mork.no> 58c2ecf20Sopenharmony_ciDescription: 68c2ecf20Sopenharmony_ci The driver will pad NCM Transfer Blocks (NTBs) longer 78c2ecf20Sopenharmony_ci than this to tx_max, allowing the device to receive 88c2ecf20Sopenharmony_ci tx_max sized frames with no terminating short 98c2ecf20Sopenharmony_ci packet. NTBs shorter than this limit are transmitted 108c2ecf20Sopenharmony_ci as-is, without any padding, and are terminated with a 118c2ecf20Sopenharmony_ci short USB packet. 128c2ecf20Sopenharmony_ci 138c2ecf20Sopenharmony_ci Padding to tx_max allows the driver to transmit NTBs 148c2ecf20Sopenharmony_ci back-to-back without any interleaving short USB 158c2ecf20Sopenharmony_ci packets. This reduces the number of short packet 168c2ecf20Sopenharmony_ci interrupts in the device, and represents a tradeoff 178c2ecf20Sopenharmony_ci between USB bus bandwidth and device DMA optimization. 188c2ecf20Sopenharmony_ci 198c2ecf20Sopenharmony_ci Set to 0 to pad all frames. Set greater than tx_max to 208c2ecf20Sopenharmony_ci disable all padding. 218c2ecf20Sopenharmony_ci 228c2ecf20Sopenharmony_ciWhat: /sys/class/net/<iface>/cdc_ncm/ndp_to_end 238c2ecf20Sopenharmony_ciDate: Dec 2015 248c2ecf20Sopenharmony_ciKernelVersion: 4.5 258c2ecf20Sopenharmony_ciContact: Bjørn Mork <bjorn@mork.no> 268c2ecf20Sopenharmony_ciDescription: 278c2ecf20Sopenharmony_ci Boolean attribute showing the status of the "NDP to 288c2ecf20Sopenharmony_ci end" quirk. Defaults to 'N', except for devices 298c2ecf20Sopenharmony_ci already known to need it enabled. 308c2ecf20Sopenharmony_ci 318c2ecf20Sopenharmony_ci The "NDP to end" quirk makes the driver place the NDP 328c2ecf20Sopenharmony_ci (the packet index table) after the payload. The NCM 338c2ecf20Sopenharmony_ci specification does not mandate this, but some devices 348c2ecf20Sopenharmony_ci are known to be more restrictive. Write 'Y' to this 358c2ecf20Sopenharmony_ci attribute for temporary testing of a suspect device 368c2ecf20Sopenharmony_ci failing to work with the default driver settings. 378c2ecf20Sopenharmony_ci 388c2ecf20Sopenharmony_ci A device entry should be added to the driver if this 398c2ecf20Sopenharmony_ci quirk is found to be required. 408c2ecf20Sopenharmony_ci 418c2ecf20Sopenharmony_ciWhat: /sys/class/net/<iface>/cdc_ncm/rx_max 428c2ecf20Sopenharmony_ciDate: May 2014 438c2ecf20Sopenharmony_ciKernelVersion: 3.16 448c2ecf20Sopenharmony_ciContact: Bjørn Mork <bjorn@mork.no> 458c2ecf20Sopenharmony_ciDescription: 468c2ecf20Sopenharmony_ci The maximum NTB size for RX. Cannot exceed the 478c2ecf20Sopenharmony_ci maximum value supported by the device. Must allow at 488c2ecf20Sopenharmony_ci least one max sized datagram plus headers. 498c2ecf20Sopenharmony_ci 508c2ecf20Sopenharmony_ci The actual limits are device dependent. See 518c2ecf20Sopenharmony_ci dwNtbInMaxSize. 528c2ecf20Sopenharmony_ci 538c2ecf20Sopenharmony_ci Note: Some devices will silently ignore changes to 548c2ecf20Sopenharmony_ci this value, resulting in oversized NTBs and 558c2ecf20Sopenharmony_ci corresponding framing errors. 568c2ecf20Sopenharmony_ci 578c2ecf20Sopenharmony_ciWhat: /sys/class/net/<iface>/cdc_ncm/tx_max 588c2ecf20Sopenharmony_ciDate: May 2014 598c2ecf20Sopenharmony_ciKernelVersion: 3.16 608c2ecf20Sopenharmony_ciContact: Bjørn Mork <bjorn@mork.no> 618c2ecf20Sopenharmony_ciDescription: 628c2ecf20Sopenharmony_ci The maximum NTB size for TX. Cannot exceed the 638c2ecf20Sopenharmony_ci maximum value supported by the device. Must allow at 648c2ecf20Sopenharmony_ci least one max sized datagram plus headers. 658c2ecf20Sopenharmony_ci 668c2ecf20Sopenharmony_ci The actual limits are device dependent. See 678c2ecf20Sopenharmony_ci dwNtbOutMaxSize. 688c2ecf20Sopenharmony_ci 698c2ecf20Sopenharmony_ciWhat: /sys/class/net/<iface>/cdc_ncm/tx_timer_usecs 708c2ecf20Sopenharmony_ciDate: May 2014 718c2ecf20Sopenharmony_ciKernelVersion: 3.16 728c2ecf20Sopenharmony_ciContact: Bjørn Mork <bjorn@mork.no> 738c2ecf20Sopenharmony_ciDescription: 748c2ecf20Sopenharmony_ci Datagram aggregation timeout in µs. The driver will 758c2ecf20Sopenharmony_ci wait up to 3 times this timeout for more datagrams to 768c2ecf20Sopenharmony_ci aggregate before transmitting an NTB frame. 778c2ecf20Sopenharmony_ci 788c2ecf20Sopenharmony_ci Valid range: 5 to 4000000 798c2ecf20Sopenharmony_ci 808c2ecf20Sopenharmony_ci Set to 0 to disable aggregation. 818c2ecf20Sopenharmony_ci 828c2ecf20Sopenharmony_ciThe following read-only attributes all represent fields of the 838c2ecf20Sopenharmony_cistructure defined in section 6.2.1 "GetNtbParameters" of "Universal 848c2ecf20Sopenharmony_ciSerial Bus Communications Class Subclass Specifications for Network 858c2ecf20Sopenharmony_ciControl Model Devices" (CDC NCM), Revision 1.0 (Errata 1), November 868c2ecf20Sopenharmony_ci24, 2010 from USB Implementers Forum, Inc. The descriptions are 878c2ecf20Sopenharmony_ciquoted from table 6-3 of CDC NCM: "NTB Parameter Structure". 888c2ecf20Sopenharmony_ci 898c2ecf20Sopenharmony_ciWhat: /sys/class/net/<iface>/cdc_ncm/bmNtbFormatsSupported 908c2ecf20Sopenharmony_ciDate: May 2014 918c2ecf20Sopenharmony_ciKernelVersion: 3.16 928c2ecf20Sopenharmony_ciContact: Bjørn Mork <bjorn@mork.no> 938c2ecf20Sopenharmony_ciDescription: 948c2ecf20Sopenharmony_ci - Bit 0: 16-bit NTB supported (set to 1) 958c2ecf20Sopenharmony_ci - Bit 1: 32-bit NTB supported 968c2ecf20Sopenharmony_ci - Bits 2 – 15: reserved (reset to zero; must be ignored by host) 978c2ecf20Sopenharmony_ci 988c2ecf20Sopenharmony_ciWhat: /sys/class/net/<iface>/cdc_ncm/dwNtbInMaxSize 998c2ecf20Sopenharmony_ciDate: May 2014 1008c2ecf20Sopenharmony_ciKernelVersion: 3.16 1018c2ecf20Sopenharmony_ciContact: Bjørn Mork <bjorn@mork.no> 1028c2ecf20Sopenharmony_ciDescription: 1038c2ecf20Sopenharmony_ci IN NTB Maximum Size in bytes 1048c2ecf20Sopenharmony_ci 1058c2ecf20Sopenharmony_ciWhat: /sys/class/net/<iface>/cdc_ncm/wNdpInDivisor 1068c2ecf20Sopenharmony_ciDate: May 2014 1078c2ecf20Sopenharmony_ciKernelVersion: 3.16 1088c2ecf20Sopenharmony_ciContact: Bjørn Mork <bjorn@mork.no> 1098c2ecf20Sopenharmony_ciDescription: 1108c2ecf20Sopenharmony_ci Divisor used for IN NTB Datagram payload alignment 1118c2ecf20Sopenharmony_ci 1128c2ecf20Sopenharmony_ciWhat: /sys/class/net/<iface>/cdc_ncm/wNdpInPayloadRemainder 1138c2ecf20Sopenharmony_ciDate: May 2014 1148c2ecf20Sopenharmony_ciKernelVersion: 3.16 1158c2ecf20Sopenharmony_ciContact: Bjørn Mork <bjorn@mork.no> 1168c2ecf20Sopenharmony_ciDescription: 1178c2ecf20Sopenharmony_ci Remainder used to align input datagram payload within 1188c2ecf20Sopenharmony_ci the NTB: (Payload Offset) mod (wNdpInDivisor) = 1198c2ecf20Sopenharmony_ci wNdpInPayloadRemainder 1208c2ecf20Sopenharmony_ci 1218c2ecf20Sopenharmony_ciWhat: /sys/class/net/<iface>/cdc_ncm/wNdpInAlignment 1228c2ecf20Sopenharmony_ciDate: May 2014 1238c2ecf20Sopenharmony_ciKernelVersion: 3.16 1248c2ecf20Sopenharmony_ciContact: Bjørn Mork <bjorn@mork.no> 1258c2ecf20Sopenharmony_ciDescription: 1268c2ecf20Sopenharmony_ci NDP alignment modulus for NTBs on the IN pipe. Shall 1278c2ecf20Sopenharmony_ci be a power of 2, and shall be at least 4. 1288c2ecf20Sopenharmony_ci 1298c2ecf20Sopenharmony_ciWhat: /sys/class/net/<iface>/cdc_ncm/dwNtbOutMaxSize 1308c2ecf20Sopenharmony_ciDate: May 2014 1318c2ecf20Sopenharmony_ciKernelVersion: 3.16 1328c2ecf20Sopenharmony_ciContact: Bjørn Mork <bjorn@mork.no> 1338c2ecf20Sopenharmony_ciDescription: 1348c2ecf20Sopenharmony_ci OUT NTB Maximum Size 1358c2ecf20Sopenharmony_ci 1368c2ecf20Sopenharmony_ciWhat: /sys/class/net/<iface>/cdc_ncm/wNdpOutDivisor 1378c2ecf20Sopenharmony_ciDate: May 2014 1388c2ecf20Sopenharmony_ciKernelVersion: 3.16 1398c2ecf20Sopenharmony_ciContact: Bjørn Mork <bjorn@mork.no> 1408c2ecf20Sopenharmony_ciDescription: 1418c2ecf20Sopenharmony_ci OUT NTB Datagram alignment modulus 1428c2ecf20Sopenharmony_ci 1438c2ecf20Sopenharmony_ciWhat: /sys/class/net/<iface>/cdc_ncm/wNdpOutPayloadRemainder 1448c2ecf20Sopenharmony_ciDate: May 2014 1458c2ecf20Sopenharmony_ciKernelVersion: 3.16 1468c2ecf20Sopenharmony_ciContact: Bjørn Mork <bjorn@mork.no> 1478c2ecf20Sopenharmony_ciDescription: 1488c2ecf20Sopenharmony_ci Remainder used to align output datagram payload 1498c2ecf20Sopenharmony_ci offsets within the NTB: Padding, shall be transmitted 1508c2ecf20Sopenharmony_ci as zero by function, and ignored by host. (Payload 1518c2ecf20Sopenharmony_ci Offset) mod (wNdpOutDivisor) = wNdpOutPayloadRemainder 1528c2ecf20Sopenharmony_ci 1538c2ecf20Sopenharmony_ciWhat: /sys/class/net/<iface>/cdc_ncm/wNdpOutAlignment 1548c2ecf20Sopenharmony_ciDate: May 2014 1558c2ecf20Sopenharmony_ciKernelVersion: 3.16 1568c2ecf20Sopenharmony_ciContact: Bjørn Mork <bjorn@mork.no> 1578c2ecf20Sopenharmony_ciDescription: 1588c2ecf20Sopenharmony_ci NDP alignment modulus for use in NTBs on the OUT 1598c2ecf20Sopenharmony_ci pipe. Shall be a power of 2, and shall be at least 4. 1608c2ecf20Sopenharmony_ci 1618c2ecf20Sopenharmony_ciWhat: /sys/class/net/<iface>/cdc_ncm/wNtbOutMaxDatagrams 1628c2ecf20Sopenharmony_ciDate: May 2014 1638c2ecf20Sopenharmony_ciKernelVersion: 3.16 1648c2ecf20Sopenharmony_ciContact: Bjørn Mork <bjorn@mork.no> 1658c2ecf20Sopenharmony_ciDescription: 1668c2ecf20Sopenharmony_ci Maximum number of datagrams that the host may pack 1678c2ecf20Sopenharmony_ci into a single OUT NTB. Zero means that the device 1688c2ecf20Sopenharmony_ci imposes no limit. 169