OSDN Git Service

rtw88: add rtw_read8_mask and rtw_read16_mask
authorYan-Hsuan Chuang <yhchuang@realtek.com>
Wed, 5 Feb 2020 07:08:53 +0000 (15:08 +0800)
committerKalle Valo <kvalo@codeaurora.org>
Wed, 12 Feb 2020 16:18:24 +0000 (18:18 +0200)
Both are missing but could be used sometimes.

Signed-off-by: Yan-Hsuan Chuang <yhchuang@realtek.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/realtek/rtw88/hci.h

index 85a81a5..cad5638 100644 (file)
@@ -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)
 {