• Alexander Bersenev's avatar
    cdc_ncm: Implement the 32-bit version of NCM Transfer Block · 0fa81b30
    Alexander Bersenev authored
    The NCM specification defines two formats of transfer blocks: with 16-bit
    fields (NTB-16) and with 32-bit fields (NTB-32). Currently only NTB-16 is
    implemented.
    
    This patch adds the support of NTB-32. The motivation behind this is that
    some devices such as E5785 or E5885 from the current generation of Huawei
    LTE routers do not support NTB-16. The previous generations of Huawei
    devices are also use NTB-32 by default.
    
    Also this patch enables NTB-32 by default for Huawei devices.
    
    During the 2019 ValdikSS made five attempts to contact Huawei to add the
    NTB-16 support to their router firmware, but they were unsuccessful.
    Signed-off-by: default avatarAlexander Bersenev <bay@hackerdom.ru>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    0fa81b30
cdc_ncm.c 60.7 KB