[PATCH] Staging: rtl8723au: os_intfs: fixed case statement is variable issue

Bing Sun
2016-08-11T14:13:04Z

Fixed sparse parse error:
Expected constant expression in case statement.

Signed-off-by: Bing Sun <sunbing@redflag-linux.com>
---
drivers/staging/rtl8723au/os_dep/os_intfs.c | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/drivers/staging/rtl8723au/os_dep/os_intfs.c b/drivers/staging/rtl8723au/os_dep/os_intfs.c
index b8848c2..f30d5d2 100644
--- a/drivers/staging/rtl8723au/os_dep/os_intfs.c
+++ b/drivers/staging/rtl8723au/os_dep/os_intfs.c
@@ -283,14 +283,13 @@ static u32 rtw_classify8021d(struct sk_buff *skb)
*/
if (skb->priority >= 256 && skb->priority <= 263)
return skb->priority - 256;
- switch (skb->protocol) {
- case htons(ETH_P_IP):
+
+ if (skb->protocol == htons(ETH_P_IP)) {
dscp = ip_hdr(skb)->tos & 0xfc;
- break;
- default:
- return 0;
+ return dscp >> 5;
}
- return dscp >> 5;
+
+ return 0;
}

static u16 rtw_select_queue(struct net_device *dev, struct sk_buff *skb,
--
2.1.0