From: Mateusz Kulikowski Date: Sun, 20 Sep 2015 19:04:32 +0000 (+0200) Subject: staging: rtl8192e: Simplify _rtl92e_calculate_bit_shift X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=77b6c42e0278decff0c98999fb835f36048415ab;p=openwrt%2Fstaging%2Fblogic.git staging: rtl8192e: Simplify _rtl92e_calculate_bit_shift Use ffs instead of iteration. Behaviour of function doesn't change. Signed-off-by: Mateusz Kulikowski Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/staging/rtl8192e/rtl8192e/r8192E_phy.c b/drivers/staging/rtl8192e/rtl8192e/r8192E_phy.c index b3a10f9f01cd..0b407feb5407 100644 --- a/drivers/staging/rtl8192e/rtl8192e/r8192E_phy.c +++ b/drivers/staging/rtl8192e/rtl8192e/r8192E_phy.c @@ -13,6 +13,7 @@ * wlanfae ******************************************************************************/ +#include #include "rtl_core.h" #include "r8192E_hw.h" #include "r8192E_phyreg.h" @@ -50,13 +51,9 @@ static void _rtl92e_phy_rf_fw_write(struct net_device *dev, static u32 _rtl92e_calculate_bit_shift(u32 dwBitMask) { - u32 i; - - for (i = 0; i <= 31; i++) { - if (((dwBitMask >> i) & 0x1) == 1) - break; - } - return i; + if (!dwBitMask) + return 32; + return ffs(dwBitMask) - 1; } u8 rtl92e_is_legal_rf_path(struct net_device *dev, u32 eRFPath)