[PATCHv6 2/2] mt7601u: use linux/bitfield.h

2016-08-16 Thread Jakub Kicinski
Use the newly added linux/bitfield.h.

Signed-off-by: Jakub Kicinski 
Reviewed-by: Dinan Gunawardena 
---
 drivers/net/wireless/mediatek/mt7601u/dma.c |  2 +-
 drivers/net/wireless/mediatek/mt7601u/dma.h | 10 ++--
 drivers/net/wireless/mediatek/mt7601u/eeprom.c  | 12 ++--
 drivers/net/wireless/mediatek/mt7601u/init.c|  9 +--
 drivers/net/wireless/mediatek/mt7601u/mac.c | 38 ++--
 drivers/net/wireless/mediatek/mt7601u/mcu.c | 18 +++---
 drivers/net/wireless/mediatek/mt7601u/mt7601u.h |  4 +-
 drivers/net/wireless/mediatek/mt7601u/phy.c | 36 ++--
 drivers/net/wireless/mediatek/mt7601u/tx.c  | 16 ++---
 drivers/net/wireless/mediatek/mt7601u/util.h| 77 -
 10 files changed, 72 insertions(+), 150 deletions(-)
 delete mode 100644 drivers/net/wireless/mediatek/mt7601u/util.h

diff --git a/drivers/net/wireless/mediatek/mt7601u/dma.c 
b/drivers/net/wireless/mediatek/mt7601u/dma.c
index 57a80cfa39b1..a8bc064bc14f 100644
--- a/drivers/net/wireless/mediatek/mt7601u/dma.c
+++ b/drivers/net/wireless/mediatek/mt7601u/dma.c
@@ -103,7 +103,7 @@ static void mt7601u_rx_process_seg(struct mt7601u_dev *dev, 
u8 *data,
 
if (unlikely(rxwi->zero[0] || rxwi->zero[1] || rxwi->zero[2]))
dev_err_once(dev->dev, "Error: RXWI zero fields are set\n");
-   if (unlikely(MT76_GET(MT_RXD_INFO_TYPE, fce_info)))
+   if (unlikely(FIELD_GET(MT_RXD_INFO_TYPE, fce_info)))
dev_err_once(dev->dev, "Error: RX path seen a non-pkt urb\n");
 
trace_mt_rx(dev, rxwi, fce_info);
diff --git a/drivers/net/wireless/mediatek/mt7601u/dma.h 
b/drivers/net/wireless/mediatek/mt7601u/dma.h
index 978e8a90b87f..46c6a7860c38 100644
--- a/drivers/net/wireless/mediatek/mt7601u/dma.h
+++ b/drivers/net/wireless/mediatek/mt7601u/dma.h
@@ -18,8 +18,6 @@
 #include 
 #include 
 
-#include "util.h"
-
 #define MT_DMA_HDR_LEN 4
 #define MT_RX_INFO_LEN 4
 #define MT_FCE_INFO_LEN4
@@ -79,9 +77,9 @@ static inline int mt7601u_dma_skb_wrap(struct sk_buff *skb,
 */
 
info = flags |
-   MT76_SET(MT_TXD_INFO_LEN, round_up(skb->len, 4)) |
-   MT76_SET(MT_TXD_INFO_D_PORT, d_port) |
-   MT76_SET(MT_TXD_INFO_TYPE, type);
+   FIELD_PUT(MT_TXD_INFO_LEN, round_up(skb->len, 4)) |
+   FIELD_PUT(MT_TXD_INFO_D_PORT, d_port) |
+   FIELD_PUT(MT_TXD_INFO_TYPE, type);
 
put_unaligned_le32(info, skb_push(skb, sizeof(info)));
return skb_put_padto(skb, round_up(skb->len, 4) + 4);
@@ -90,7 +88,7 @@ static inline int mt7601u_dma_skb_wrap(struct sk_buff *skb,
 static inline int
 mt7601u_dma_skb_wrap_pkt(struct sk_buff *skb, enum mt76_qsel qsel, u32 flags)
 {
-   flags |= MT76_SET(MT_TXD_PKT_INFO_QSEL, qsel);
+   flags |= FIELD_PUT(MT_TXD_PKT_INFO_QSEL, qsel);
return mt7601u_dma_skb_wrap(skb, WLAN_PORT, DMA_PACKET, flags);
 }
 
diff --git a/drivers/net/wireless/mediatek/mt7601u/eeprom.c 
b/drivers/net/wireless/mediatek/mt7601u/eeprom.c
index 8d8ee0344f7b..14ac2c0f8838 100644
--- a/drivers/net/wireless/mediatek/mt7601u/eeprom.c
+++ b/drivers/net/wireless/mediatek/mt7601u/eeprom.c
@@ -45,8 +45,8 @@ mt7601u_efuse_read(struct mt7601u_dev *dev, u16 addr, u8 
*data,
val = mt76_rr(dev, MT_EFUSE_CTRL);
val &= ~(MT_EFUSE_CTRL_AIN |
 MT_EFUSE_CTRL_MODE);
-   val |= MT76_SET(MT_EFUSE_CTRL_AIN, addr & ~0xf) |
-  MT76_SET(MT_EFUSE_CTRL_MODE, mode) |
+   val |= FIELD_PUT(MT_EFUSE_CTRL_AIN, addr & ~0xf) |
+  FIELD_PUT(MT_EFUSE_CTRL_MODE, mode) |
   MT_EFUSE_CTRL_KICK;
mt76_wr(dev, MT_EFUSE_CTRL, val);
 
@@ -128,8 +128,8 @@ mt7601u_set_chip_cap(struct mt7601u_dev *dev, u8 *eeprom)
if (!field_valid(nic_conf0 >> 8))
return;
 
-   if (MT76_GET(MT_EE_NIC_CONF_0_RX_PATH, nic_conf0) > 1 ||
-   MT76_GET(MT_EE_NIC_CONF_0_TX_PATH, nic_conf0) > 1)
+   if (FIELD_GET(MT_EE_NIC_CONF_0_RX_PATH, nic_conf0) > 1 ||
+   FIELD_GET(MT_EE_NIC_CONF_0_TX_PATH, nic_conf0) > 1)
dev_err(dev->dev,
"Error: device has more than 1 RX/TX stream!\n");
 }
@@ -150,7 +150,7 @@ mt7601u_set_macaddr(struct mt7601u_dev *dev, const u8 
*eeprom)
 
mt76_wr(dev, MT_MAC_ADDR_DW0, get_unaligned_le32(dev->macaddr));
mt76_wr(dev, MT_MAC_ADDR_DW1, get_unaligned_le16(dev->macaddr + 4) |
-   MT76_SET(MT_MAC_ADDR_DW1_U2ME_MASK, 0xff));
+   FIELD_PUT(MT_MAC_ADDR_DW1_U2ME_MASK, 0xff));
 
return 0;
 }
@@ -176,7 +176,7 @@ mt7601u_set_channel_power(struct mt7601u_dev *dev, u8 
*eeprom)
u8 max_pwr;
 
val = mt7601u_rr(dev, MT_TX_ALC_CFG_0);
-   max_pwr = MT76_GET(MT_TX_ALC_CFG_0_LIMIT_0, val);
+   max_pwr = FIELD_GET(MT_TX_ALC_CFG_0_LIMIT_0, val);
 
if 

[PATCHv6 2/2] mt7601u: use linux/bitfield.h

2016-08-16 Thread Jakub Kicinski
Use the newly added linux/bitfield.h.

Signed-off-by: Jakub Kicinski 
Reviewed-by: Dinan Gunawardena 
---
 drivers/net/wireless/mediatek/mt7601u/dma.c |  2 +-
 drivers/net/wireless/mediatek/mt7601u/dma.h | 10 ++--
 drivers/net/wireless/mediatek/mt7601u/eeprom.c  | 12 ++--
 drivers/net/wireless/mediatek/mt7601u/init.c|  9 +--
 drivers/net/wireless/mediatek/mt7601u/mac.c | 38 ++--
 drivers/net/wireless/mediatek/mt7601u/mcu.c | 18 +++---
 drivers/net/wireless/mediatek/mt7601u/mt7601u.h |  4 +-
 drivers/net/wireless/mediatek/mt7601u/phy.c | 36 ++--
 drivers/net/wireless/mediatek/mt7601u/tx.c  | 16 ++---
 drivers/net/wireless/mediatek/mt7601u/util.h| 77 -
 10 files changed, 72 insertions(+), 150 deletions(-)
 delete mode 100644 drivers/net/wireless/mediatek/mt7601u/util.h

diff --git a/drivers/net/wireless/mediatek/mt7601u/dma.c 
b/drivers/net/wireless/mediatek/mt7601u/dma.c
index 57a80cfa39b1..a8bc064bc14f 100644
--- a/drivers/net/wireless/mediatek/mt7601u/dma.c
+++ b/drivers/net/wireless/mediatek/mt7601u/dma.c
@@ -103,7 +103,7 @@ static void mt7601u_rx_process_seg(struct mt7601u_dev *dev, 
u8 *data,
 
if (unlikely(rxwi->zero[0] || rxwi->zero[1] || rxwi->zero[2]))
dev_err_once(dev->dev, "Error: RXWI zero fields are set\n");
-   if (unlikely(MT76_GET(MT_RXD_INFO_TYPE, fce_info)))
+   if (unlikely(FIELD_GET(MT_RXD_INFO_TYPE, fce_info)))
dev_err_once(dev->dev, "Error: RX path seen a non-pkt urb\n");
 
trace_mt_rx(dev, rxwi, fce_info);
diff --git a/drivers/net/wireless/mediatek/mt7601u/dma.h 
b/drivers/net/wireless/mediatek/mt7601u/dma.h
index 978e8a90b87f..46c6a7860c38 100644
--- a/drivers/net/wireless/mediatek/mt7601u/dma.h
+++ b/drivers/net/wireless/mediatek/mt7601u/dma.h
@@ -18,8 +18,6 @@
 #include 
 #include 
 
-#include "util.h"
-
 #define MT_DMA_HDR_LEN 4
 #define MT_RX_INFO_LEN 4
 #define MT_FCE_INFO_LEN4
@@ -79,9 +77,9 @@ static inline int mt7601u_dma_skb_wrap(struct sk_buff *skb,
 */
 
info = flags |
-   MT76_SET(MT_TXD_INFO_LEN, round_up(skb->len, 4)) |
-   MT76_SET(MT_TXD_INFO_D_PORT, d_port) |
-   MT76_SET(MT_TXD_INFO_TYPE, type);
+   FIELD_PUT(MT_TXD_INFO_LEN, round_up(skb->len, 4)) |
+   FIELD_PUT(MT_TXD_INFO_D_PORT, d_port) |
+   FIELD_PUT(MT_TXD_INFO_TYPE, type);
 
put_unaligned_le32(info, skb_push(skb, sizeof(info)));
return skb_put_padto(skb, round_up(skb->len, 4) + 4);
@@ -90,7 +88,7 @@ static inline int mt7601u_dma_skb_wrap(struct sk_buff *skb,
 static inline int
 mt7601u_dma_skb_wrap_pkt(struct sk_buff *skb, enum mt76_qsel qsel, u32 flags)
 {
-   flags |= MT76_SET(MT_TXD_PKT_INFO_QSEL, qsel);
+   flags |= FIELD_PUT(MT_TXD_PKT_INFO_QSEL, qsel);
return mt7601u_dma_skb_wrap(skb, WLAN_PORT, DMA_PACKET, flags);
 }
 
diff --git a/drivers/net/wireless/mediatek/mt7601u/eeprom.c 
b/drivers/net/wireless/mediatek/mt7601u/eeprom.c
index 8d8ee0344f7b..14ac2c0f8838 100644
--- a/drivers/net/wireless/mediatek/mt7601u/eeprom.c
+++ b/drivers/net/wireless/mediatek/mt7601u/eeprom.c
@@ -45,8 +45,8 @@ mt7601u_efuse_read(struct mt7601u_dev *dev, u16 addr, u8 
*data,
val = mt76_rr(dev, MT_EFUSE_CTRL);
val &= ~(MT_EFUSE_CTRL_AIN |
 MT_EFUSE_CTRL_MODE);
-   val |= MT76_SET(MT_EFUSE_CTRL_AIN, addr & ~0xf) |
-  MT76_SET(MT_EFUSE_CTRL_MODE, mode) |
+   val |= FIELD_PUT(MT_EFUSE_CTRL_AIN, addr & ~0xf) |
+  FIELD_PUT(MT_EFUSE_CTRL_MODE, mode) |
   MT_EFUSE_CTRL_KICK;
mt76_wr(dev, MT_EFUSE_CTRL, val);
 
@@ -128,8 +128,8 @@ mt7601u_set_chip_cap(struct mt7601u_dev *dev, u8 *eeprom)
if (!field_valid(nic_conf0 >> 8))
return;
 
-   if (MT76_GET(MT_EE_NIC_CONF_0_RX_PATH, nic_conf0) > 1 ||
-   MT76_GET(MT_EE_NIC_CONF_0_TX_PATH, nic_conf0) > 1)
+   if (FIELD_GET(MT_EE_NIC_CONF_0_RX_PATH, nic_conf0) > 1 ||
+   FIELD_GET(MT_EE_NIC_CONF_0_TX_PATH, nic_conf0) > 1)
dev_err(dev->dev,
"Error: device has more than 1 RX/TX stream!\n");
 }
@@ -150,7 +150,7 @@ mt7601u_set_macaddr(struct mt7601u_dev *dev, const u8 
*eeprom)
 
mt76_wr(dev, MT_MAC_ADDR_DW0, get_unaligned_le32(dev->macaddr));
mt76_wr(dev, MT_MAC_ADDR_DW1, get_unaligned_le16(dev->macaddr + 4) |
-   MT76_SET(MT_MAC_ADDR_DW1_U2ME_MASK, 0xff));
+   FIELD_PUT(MT_MAC_ADDR_DW1_U2ME_MASK, 0xff));
 
return 0;
 }
@@ -176,7 +176,7 @@ mt7601u_set_channel_power(struct mt7601u_dev *dev, u8 
*eeprom)
u8 max_pwr;
 
val = mt7601u_rr(dev, MT_TX_ALC_CFG_0);
-   max_pwr = MT76_GET(MT_TX_ALC_CFG_0_LIMIT_0, val);
+   max_pwr = FIELD_GET(MT_TX_ALC_CFG_0_LIMIT_0, val);
 
if (mt7601u_has_tssi(dev, eeprom)) {