bnxt_en: Zero pad firmware messages to 128 bytes.
authorMichael Chan <mchan@broadcom.com>
Fri, 8 Jan 2016 00:56:57 +0000 (19:56 -0500)
committerDavid S. Miller <davem@davemloft.net>
Mon, 11 Jan 2016 03:19:19 +0000 (22:19 -0500)
For future compatibility, zero pad all messages that the driver sends
to the firmware to 128 bytes.  If these messages are extended in the
future with new byte enables, zero padding these messages now will
guarantee future compatibility.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/broadcom/bnxt/bnxt.c

index f9569493034b4d476f3791cec1952c0fcb7ce77f..287bfb79ea2dc0032bb2c62d98df69d171aaacd3 100644 (file)
@@ -2614,6 +2614,9 @@ int _hwrm_send_message(struct bnxt *bp, void *msg, u32 msg_len, int timeout)
        /* Write request msg to hwrm channel */
        __iowrite32_copy(bp->bar0, data, msg_len / 4);
 
+       for (i = msg_len; i < HWRM_MAX_REQ_LEN; i += 4)
+               writel(0, bp->bar0 + i);
+
        /* currently supports only one outstanding message */
        if (intr_process)
                bp->hwrm_intr_seq_id = le32_to_cpu(req->target_id_seq_id) &