>-----Original Message-----
>From: Christoph Hellwig [mailto:[email protected]]
>Sent: Saturday, January 10, 2015 10:41 PM
>To: [email protected]; [email protected]
>Cc: [email protected]; [email protected]
>Subject: [PATCH 07/10] megaraid_sas: add missing byte swaps to the sriov
>code
>
>Signed-off-by: Christoph Hellwig <[email protected]>
>---
> drivers/scsi/megaraid/megaraid_sas_base.c | 46 +++++++++++++++++-------
>-------
> 1 file changed, 25 insertions(+), 21 deletions(-)
>
>diff --git a/drivers/scsi/megaraid/megaraid_sas_base.c
>b/drivers/scsi/megaraid/megaraid_sas_base.c
>index 548d033..5350e18 100644
>--- a/drivers/scsi/megaraid/megaraid_sas_base.c
>+++ b/drivers/scsi/megaraid/megaraid_sas_base.c
>@@ -1924,20 +1924,22 @@ static int
>megasas_get_ld_vf_affiliation_111(struct megasas_instance *instance,
>       dcmd->cmd = MFI_CMD_DCMD;
>       dcmd->cmd_status = 0xFF;
>       dcmd->sge_count = 1;
>-      dcmd->flags = MFI_FRAME_DIR_BOTH;
>+      dcmd->flags = cpu_to_le16(MFI_FRAME_DIR_BOTH);
>       dcmd->timeout = 0;
>       dcmd->pad_0 = 0;
>-      dcmd->data_xfer_len = sizeof(struct MR_LD_VF_AFFILIATION_111);
>-      dcmd->opcode = MR_DCMD_LD_VF_MAP_GET_ALL_LDS_111;
>+      dcmd->data_xfer_len =
>+              cpu_to_le32(sizeof(struct MR_LD_VF_AFFILIATION_111));
>+      dcmd->opcode =
>cpu_to_le32(MR_DCMD_LD_VF_MAP_GET_ALL_LDS_111);
>
>       if (initial)
>               dcmd->sgl.sge32[0].phys_addr =
>-                      instance->vf_affiliation_111_h;
>+                      cpu_to_le32(instance->vf_affiliation_111_h);
>       else
>-              dcmd->sgl.sge32[0].phys_addr = new_affiliation_111_h;
>+              dcmd->sgl.sge32[0].phys_addr =
>+                      cpu_to_le32(new_affiliation_111_h);
>
>-      dcmd->sgl.sge32[0].length =
>-              sizeof(struct MR_LD_VF_AFFILIATION_111);
>+      dcmd->sgl.sge32[0].length = cpu_to_le32(
>+              sizeof(struct MR_LD_VF_AFFILIATION_111));
>
>       printk(KERN_WARNING "megasas: SR-IOV: Getting LD/VF affiliation
>for "
>              "scsi%d\n", instance->host->host_no); @@ -2039,20 +2041,22
@@
>static int megasas_get_ld_vf_affiliation_12(struct megasas_instance
>*instance,
>       dcmd->cmd = MFI_CMD_DCMD;
>       dcmd->cmd_status = 0xFF;
>       dcmd->sge_count = 1;
>-      dcmd->flags = MFI_FRAME_DIR_BOTH;
>+      dcmd->flags = cpu_to_le16(MFI_FRAME_DIR_BOTH);
>       dcmd->timeout = 0;
>       dcmd->pad_0 = 0;
>-      dcmd->data_xfer_len = (MAX_LOGICAL_DRIVES + 1) *
>-              sizeof(struct MR_LD_VF_AFFILIATION);
>-      dcmd->opcode = MR_DCMD_LD_VF_MAP_GET_ALL_LDS;
>+      dcmd->data_xfer_len = cpu_to_le32((MAX_LOGICAL_DRIVES + 1) *
>+              sizeof(struct MR_LD_VF_AFFILIATION));
>+      dcmd->opcode =
>cpu_to_le32(MR_DCMD_LD_VF_MAP_GET_ALL_LDS);
>
>       if (initial)
>-              dcmd->sgl.sge32[0].phys_addr = instance->vf_affiliation_h;
>+              dcmd->sgl.sge32[0].phys_addr =
>+                      cpu_to_le32(instance->vf_affiliation_h);
>       else
>-              dcmd->sgl.sge32[0].phys_addr = new_affiliation_h;
>+              dcmd->sgl.sge32[0].phys_addr =
>+                      cpu_to_le32(new_affiliation_h);;
>
>-      dcmd->sgl.sge32[0].length = (MAX_LOGICAL_DRIVES + 1) *
>-              sizeof(struct MR_LD_VF_AFFILIATION);
>+      dcmd->sgl.sge32[0].length = cpu_to_le32((MAX_LOGICAL_DRIVES +
>1) *
>+              sizeof(struct MR_LD_VF_AFFILIATION));
>
>       printk(KERN_WARNING "megasas: SR-IOV: Getting LD/VF affiliation
>for "
>              "scsi%d\n", instance->host->host_no); @@ -2204,17 +2208,17
@@
>int megasas_sriov_start_heartbeat(struct megasas_instance *instance,
>
>       memset(dcmd->mbox.b, 0, MFI_MBOX_SIZE);
>
>-      dcmd->mbox.s[0] = sizeof(struct MR_CTRL_HB_HOST_MEM);
>+      dcmd->mbox.s[0] = cpu_to_le16(sizeof(struct
>MR_CTRL_HB_HOST_MEM));
>       dcmd->cmd = MFI_CMD_DCMD;
>       dcmd->cmd_status = 0xFF;
>       dcmd->sge_count = 1;
>-      dcmd->flags = MFI_FRAME_DIR_BOTH;
>+      dcmd->flags = cpu_to_le16(MFI_FRAME_DIR_BOTH);
>       dcmd->timeout = 0;
>       dcmd->pad_0 = 0;
>-      dcmd->data_xfer_len = sizeof(struct MR_CTRL_HB_HOST_MEM);
>-      dcmd->opcode = MR_DCMD_CTRL_SHARED_HOST_MEM_ALLOC;
>-      dcmd->sgl.sge32[0].phys_addr = instance->hb_host_mem_h;
>-      dcmd->sgl.sge32[0].length = sizeof(struct
>MR_CTRL_HB_HOST_MEM);
>+      dcmd->data_xfer_len = cpu_to_le32(sizeof(struct
>MR_CTRL_HB_HOST_MEM));
>+      dcmd->opcode =
>cpu_to_le32(MR_DCMD_CTRL_SHARED_HOST_MEM_ALLOC);
>+      dcmd->sgl.sge32[0].phys_addr = cpu_to_le32(instance-
>>hb_host_mem_h);
>+      dcmd->sgl.sge32[0].length = cpu_to_le32(sizeof(struct
>+MR_CTRL_HB_HOST_MEM));
>
>       printk(KERN_WARNING "megasas: SR-IOV: Starting heartbeat for
>scsi%d\n",
>              instance->host->host_no);
Acked-by: Sumit Saxena <[email protected]>

>--
>1.9.1
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to