static inline u8 iwl_get_dma_hi_addr(dma_addr_t addr)
 {
-       return (sizeof(addr) > sizeof(u32) ? (addr >> 16) >> 16 : 0) & 0xF;
+       return (sizeof(addr) > sizeof(u32) ? upper_32_bits(addr) : 0) & 0xF;
 }
 /**
  * struct iwl_tfd_tb transmit buffer descriptor within transmit frame descriptor
 
 void iwl_write64(struct iwl_trans *trans, u64 ofs, u64 val)
 {
        trace_iwlwifi_dev_iowrite64(trans->dev, ofs, val);
-       iwl_trans_write32(trans, ofs, val & 0xffffffff);
-       iwl_trans_write32(trans, ofs + 4, val >> 32);
+       iwl_trans_write32(trans, ofs, lower_32_bits(val));
+       iwl_trans_write32(trans, ofs + 4, upper_32_bits(val));
 }
 IWL_EXPORT_SYMBOL(iwl_write64);