summaryrefslogtreecommitdiffstats
path: root/drivers/net/benet
diff options
context:
space:
mode:
authorAjit Khaparde <ajitk@serverengines.com>2010-03-11 02:35:59 +0100
committerDavid S. Miller <davem@davemloft.net>2010-03-15 23:46:59 +0100
commitd4a2ac3e802d9f598453a7854d0fdf67371ac2dd (patch)
tree63fba3719134717b53bd1ef1362bda13e7e7e876 /drivers/net/benet
parentTI DaVinci EMAC: Convert to dev_pm_ops (diff)
downloadlinux-d4a2ac3e802d9f598453a7854d0fdf67371ac2dd.tar.xz
linux-d4a2ac3e802d9f598453a7854d0fdf67371ac2dd.zip
be2net: fix mccq create for big endian architectures
The request to create an mccq was being dispatched without doing a byte swap of num_pages. This byte swap is necessary for Big Endian systems like PPC. Not having this fix leads mccq create to fail on BE ASICs running newer version of firmware, thereby causing driver initialization failure. Signed-off-by: Ajit Khaparde <ajitk@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/benet')
-rw-r--r--drivers/net/benet/be_cmds.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/benet/be_cmds.c b/drivers/net/benet/be_cmds.c
index c59215361f4e..50e6259b50e4 100644
--- a/drivers/net/benet/be_cmds.c
+++ b/drivers/net/benet/be_cmds.c
@@ -673,7 +673,7 @@ int be_cmd_mccq_create(struct be_adapter *adapter,
be_cmd_hdr_prepare(&req->hdr, CMD_SUBSYSTEM_COMMON,
OPCODE_COMMON_MCC_CREATE, sizeof(*req));
- req->num_pages = PAGES_4K_SPANNED(q_mem->va, q_mem->size);
+ req->num_pages = cpu_to_le16(PAGES_4K_SPANNED(q_mem->va, q_mem->size));
AMAP_SET_BITS(struct amap_mcc_context, valid, ctxt, 1);
AMAP_SET_BITS(struct amap_mcc_context, ring_size, ctxt,