return request_irq(irq, bnx2x_interrupt, flags, bp->dev->name, bp->dev);
 }
 
-int bnx2x_setup_irqs(struct bnx2x *bp)
+static int bnx2x_setup_irqs(struct bnx2x *bp)
 {
        int rc = 0;
        if (bp->flags & USING_MSIX_FLAG &&
        /* outer IP header info */
        if (xmit_type & XMIT_CSUM_V4) {
                struct iphdr *iph = ip_hdr(skb);
+               u16 csum = (__force u16)(~iph->check) -
+                          (__force u16)iph->tot_len -
+                          (__force u16)iph->frag_off;
+
                pbd2->fw_ip_csum_wo_len_flags_frag =
-                       bswab16(csum_fold((~iph->check) -
-                                         iph->tot_len - iph->frag_off));
+                       bswab16(csum_fold((__force __wsum)csum));
        } else {
                pbd2->fw_ip_hdr_to_payload_w =
                        hlen_w - ((sizeof(struct ipv6hdr)) >> 1);
 
                                          bp->pm_cap + PCI_PM_CTRL, &pm);
 
        if ((rc && !netif_running(dev)) ||
-           (!rc && ((pm & PCI_PM_CTRL_STATE_MASK) != PCI_D0)))
+           (!rc && ((pm & PCI_PM_CTRL_STATE_MASK) != (__force u16)PCI_D0)))
                return false;
 
        return true;
                 */
                val = be32_to_cpu(val_be);
 
-               val &= ~le32_to_cpu(0xff << BYTE_OFFSET(offset));
-               val |= le32_to_cpu(*data_buf << BYTE_OFFSET(offset));
+               val &= ~le32_to_cpu((__force __le32)
+                                   (0xff << BYTE_OFFSET(offset)));
+               val |= le32_to_cpu((__force __le32)
+                                  (*data_buf << BYTE_OFFSET(offset)));
 
                rc = bnx2x_nvram_write_dword(bp, align_offset, val,
                                             cmd_flags);