From: Yan-Hsuan Chuang Date: Wed, 5 Feb 2020 07:08:53 +0000 (+0800) Subject: rtw88: add rtw_read8_mask and rtw_read16_mask X-Git-Tag: block-5.7-2020-04-09~9^2~240^2~14 X-Git-Url: https://git.kernel.dk/?a=commitdiff_plain;h=9e01c07069dbd0e025352d958c873a6504f8ce1b;p=linux-block.git rtw88: add rtw_read8_mask and rtw_read16_mask Both are missing but could be used sometimes. Signed-off-by: Yan-Hsuan Chuang Signed-off-by: Kalle Valo --- diff --git a/drivers/net/wireless/realtek/rtw88/hci.h b/drivers/net/wireless/realtek/rtw88/hci.h index 85a81a578fd5..cad56389182c 100644 --- a/drivers/net/wireless/realtek/rtw88/hci.h +++ b/drivers/net/wireless/realtek/rtw88/hci.h @@ -193,6 +193,32 @@ rtw_read32_mask(struct rtw_dev *rtwdev, u32 addr, u32 mask) return ret; } +static inline u16 +rtw_read16_mask(struct rtw_dev *rtwdev, u32 addr, u32 mask) +{ + u32 shift = __ffs(mask); + u32 orig; + u32 ret; + + orig = rtw_read16(rtwdev, addr); + ret = (orig & mask) >> shift; + + return ret; +} + +static inline u8 +rtw_read8_mask(struct rtw_dev *rtwdev, u32 addr, u32 mask) +{ + u32 shift = __ffs(mask); + u32 orig; + u32 ret; + + orig = rtw_read8(rtwdev, addr); + ret = (orig & mask) >> shift; + + return ret; +} + static inline void rtw_write32_mask(struct rtw_dev *rtwdev, u32 addr, u32 mask, u32 data) {