• Elina Pasheva's avatar
    USB: serial: sierra driver memory reduction · 3a2b808e
    Elina Pasheva authored
    This patch deals with reducing the memory footprint for sierra driver.
    This optimization is aimed for embedded software customers.
    
    Some sierra modems can expose upwards of 7 USB interfaces, each possibly
    offering different services. In general, interfaces used for the
    exchange of wireless data require much higher throughput, hence require
    more memory (i.e. more URBs) than lower performance interfaces. URBs
    used for the IN direction are pre-allocated by the driver and this patch
    introduces a way to configure the number of IN URBs allocated on a
    per-interface basis. Interfaces with lower throughput requirements
    receive fewer URBs, thereby reducing the RAM memory consumed by the
    driver.
    
    NOTE1: This driver has always pre-allocated URBs for the IN direction.
    
    NOTE2: The number of URBs pre-allocated for the low-performance
    interfaces has already been extensively tested in previous versions of
    this driver.
    
    We also added the capability to log function calls by adding DEBUG flag.
    Please note that  this flag is commented out because this is the default
    state
    for it.
    Signed-off-by: default avatarElina Pasheva <epasheva@sierrawireless.com>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
    3a2b808e
sierra.c 31.2 KB