• Arnd Bergmann's avatar
    iwlwifi: fix 64-bit division · 688cd8bd
    Arnd Bergmann authored
    do_div() expects unsigned operands and otherwise triggers a warning like:
    
    drivers/net/wireless/intel/iwlwifi/mvm/ftm-initiator.c:465:2: error: comparison of distinct pointer types ('typeof ((rtt_avg)) *' (aka 'long long *') and 'uint64_t *' (aka 'unsigned long long *')) [-Werror,-Wcompare-distinct-pointer-types]
            do_div(rtt_avg, 6666);
            ^~~~~~~~~~~~~~~~~~~~~
    include/asm-generic/div64.h:222:28: note: expanded from macro 'do_div'
            (void)(((typeof((n)) *)0) == ((uint64_t *)0));  \
                   ~~~~~~~~~~~~~~~~~~ ^  ~~~~~~~~~~~~~~~
    1 error generated.
    
    Change the do_div() to the simpler div_s64() that can handle
    negative inputs correctly.
    
    Fixes: 937b10c0 ("iwlwifi: mvm: add debug prints for FTM")
    Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
    Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
    688cd8bd
ftm-initiator.c 18.4 KB