From: Bruce Allan <bruce.w.al...@intel.com>

Recent versions of sparse warn about casting pointers to/from restricted
endian types in the Linux driver.  Silence those with the compiler
attribute __force macro from the Linux kernel to force casts to/from
restricted endian types.

Signed-off-by: Bruce Allan <bruce.w.al...@intel.com>
Signed-off-by: Anirudh Venkataramanan <anirudh.venkatarama...@intel.com>
Tested-by: Andrew Bowers <andrewx.bow...@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirs...@intel.com>
---
 drivers/net/ethernet/intel/ice/ice_nvm.c    | 4 ++--
 drivers/net/ethernet/intel/ice/ice_switch.c | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/net/ethernet/intel/ice/ice_nvm.c 
b/drivers/net/ethernet/intel/ice/ice_nvm.c
index 62571d33d0d6..6d4adaed5810 100644
--- a/drivers/net/ethernet/intel/ice/ice_nvm.c
+++ b/drivers/net/ethernet/intel/ice/ice_nvm.c
@@ -119,7 +119,7 @@ ice_read_sr_word_aq(struct ice_hw *hw, u16 offset, u16 
*data)
 
        status = ice_read_sr_aq(hw, offset, 1, data, true);
        if (!status)
-               *data = le16_to_cpu(*(__le16 *)data);
+               *data = le16_to_cpu(*(__force __le16 *)data);
 
        return status;
 }
@@ -174,7 +174,7 @@ ice_read_sr_buf_aq(struct ice_hw *hw, u16 offset, u16 
*words, u16 *data)
        } while (words_read < *words);
 
        for (i = 0; i < *words; i++)
-               data[i] = le16_to_cpu(((__le16 *)data)[i]);
+               data[i] = le16_to_cpu(((__force __le16 *)data)[i]);
 
 read_nvm_buf_aq_exit:
        *words = words_read;
diff --git a/drivers/net/ethernet/intel/ice/ice_switch.c 
b/drivers/net/ethernet/intel/ice/ice_switch.c
index 9f1f595ae7e6..5b82a7280783 100644
--- a/drivers/net/ethernet/intel/ice/ice_switch.c
+++ b/drivers/net/ethernet/intel/ice/ice_switch.c
@@ -799,7 +799,7 @@ ice_fill_sw_rule(struct ice_hw *hw, struct ice_fltr_info 
*f_info,
                daddr = f_info->l_data.ethertype_mac.mac_addr;
                /* fall-through */
        case ICE_SW_LKUP_ETHERTYPE:
-               off = (__be16 *)(eth_hdr + ICE_ETH_ETHTYPE_OFFSET);
+               off = (__force __be16 *)(eth_hdr + ICE_ETH_ETHTYPE_OFFSET);
                *off = cpu_to_be16(f_info->l_data.ethertype_mac.ethertype);
                break;
        case ICE_SW_LKUP_MAC_VLAN:
@@ -829,7 +829,7 @@ ice_fill_sw_rule(struct ice_hw *hw, struct ice_fltr_info 
*f_info,
                ether_addr_copy(eth_hdr + ICE_ETH_DA_OFFSET, daddr);
 
        if (!(vlan_id > ICE_MAX_VLAN_ID)) {
-               off = (__be16 *)(eth_hdr + ICE_ETH_VLAN_TCI_OFFSET);
+               off = (__force __be16 *)(eth_hdr + ICE_ETH_VLAN_TCI_OFFSET);
                *off = cpu_to_be16(vlan_id);
        }
 
-- 
2.21.0

Reply via email to