cpu_to_be16 returns a __be16 value. So what it is assigned to needs to
have the same type to avoid warnings.
Signed-off-by: Andrew Lunn <andrew@lunn.ch>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
 {
        struct dsa_port *dp = dsa_slave_to_port(dev);
        struct sk_buff *nskb;
-       u16 *tag;
+       __be16 *tag;
        u8 *addr;
+       u16 val;
 
        nskb = ksz_common_xmit(skb, dev, KSZ9477_INGRESS_TAG_LEN);
        if (!nskb)
        tag = skb_put(nskb, KSZ9477_INGRESS_TAG_LEN);
        addr = skb_mac_header(nskb);
 
-       *tag = BIT(dp->index);
+       val = BIT(dp->index);
 
        if (is_link_local_ether_addr(addr))
-               *tag |= KSZ9477_TAIL_TAG_OVERRIDE;
+               val |= KSZ9477_TAIL_TAG_OVERRIDE;
 
-       *tag = cpu_to_be16(*tag);
+       *tag = cpu_to_be16(val);
 
        return nskb;
 }