Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752623AbdHKG0q (ORCPT ); Fri, 11 Aug 2017 02:26:46 -0400 Received: from new2-smtp.messagingengine.com ([66.111.4.224]:41157 "EHLO new2-smtp.messagingengine.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751233AbdHKG0H (ORCPT ); Fri, 11 Aug 2017 02:26:07 -0400 X-ME-Sender: X-Sasl-enc: q2vy8fgqJAkm9G5VP3fWpWPveuKLhYJC1hPHmrD+osmQ 1502432228 From: Samuel Mendoza-Jonas To: "David S . Miller" , netdev@vger.kernel.org, linux-kernel@vger.kernel.org, OpenBMC Maillist Cc: Samuel Mendoza-Jonas , Joel Stanley , Benjamin Herrenschmidt , Gavin Shan , ratagupt@in.ibm.com Subject: [PATCH 2/3] net/ncsi: Fix several packet definitions Date: Fri, 11 Aug 2017 16:16:47 +1000 Message-Id: <20170811061648.19661-3-sam@mendozajonas.com> X-Mailer: git-send-email 2.14.0 In-Reply-To: <20170811061648.19661-1-sam@mendozajonas.com> References: <20170811061648.19661-1-sam@mendozajonas.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2599 Lines: 71 Signed-off-by: Samuel Mendoza-Jonas --- net/ncsi/ncsi-cmd.c | 10 +++++----- net/ncsi/ncsi-pkt.h | 2 +- net/ncsi/ncsi-rsp.c | 3 ++- 3 files changed, 8 insertions(+), 7 deletions(-) diff --git a/net/ncsi/ncsi-cmd.c b/net/ncsi/ncsi-cmd.c index db7083bfd476..1fec9fda7f60 100644 --- a/net/ncsi/ncsi-cmd.c +++ b/net/ncsi/ncsi-cmd.c @@ -146,9 +146,9 @@ static int ncsi_cmd_handler_svf(struct sk_buff *skb, cmd = (struct ncsi_cmd_svf_pkt *)skb_put(skb, sizeof(*cmd)); memset(cmd, 0, sizeof(*cmd)); - cmd->vlan = htons(nca->words[0]); - cmd->index = nca->bytes[2]; - cmd->enable = nca->bytes[3]; + cmd->vlan = htons(nca->words[1]); + cmd->index = nca->bytes[6]; + cmd->enable = nca->bytes[7]; ncsi_cmd_build_header(&cmd->cmd.common, nca); return 0; @@ -161,7 +161,7 @@ static int ncsi_cmd_handler_ev(struct sk_buff *skb, cmd = (struct ncsi_cmd_ev_pkt *)skb_put(skb, sizeof(*cmd)); memset(cmd, 0, sizeof(*cmd)); - cmd->mode = nca->bytes[0]; + cmd->mode = nca->bytes[3]; ncsi_cmd_build_header(&cmd->cmd.common, nca); return 0; @@ -240,7 +240,7 @@ static struct ncsi_cmd_handler { { NCSI_PKT_CMD_AE, 8, ncsi_cmd_handler_ae }, { NCSI_PKT_CMD_SL, 8, ncsi_cmd_handler_sl }, { NCSI_PKT_CMD_GLS, 0, ncsi_cmd_handler_default }, - { NCSI_PKT_CMD_SVF, 4, ncsi_cmd_handler_svf }, + { NCSI_PKT_CMD_SVF, 8, ncsi_cmd_handler_svf }, { NCSI_PKT_CMD_EV, 4, ncsi_cmd_handler_ev }, { NCSI_PKT_CMD_DV, 0, ncsi_cmd_handler_default }, { NCSI_PKT_CMD_SMA, 8, ncsi_cmd_handler_sma }, diff --git a/net/ncsi/ncsi-pkt.h b/net/ncsi/ncsi-pkt.h index 3ea49ed0a935..91b4b66438df 100644 --- a/net/ncsi/ncsi-pkt.h +++ b/net/ncsi/ncsi-pkt.h @@ -104,7 +104,7 @@ struct ncsi_cmd_svf_pkt { unsigned char index; /* VLAN table index */ unsigned char enable; /* Enable or disable */ __be32 checksum; /* Checksum */ - unsigned char pad[14]; + unsigned char pad[18]; }; /* Enable VLAN */ diff --git a/net/ncsi/ncsi-rsp.c b/net/ncsi/ncsi-rsp.c index 087db775b3dc..c1a191d790e2 100644 --- a/net/ncsi/ncsi-rsp.c +++ b/net/ncsi/ncsi-rsp.c @@ -354,7 +354,8 @@ static int ncsi_rsp_handler_svf(struct ncsi_request *nr) /* Add or remove the VLAN filter */ if (!(cmd->enable & 0x1)) { - ret = ncsi_remove_filter(nc, NCSI_FILTER_VLAN, cmd->index); + /* HW indexes from 1 */ + ret = ncsi_remove_filter(nc, NCSI_FILTER_VLAN, cmd->index - 1); } else { vlan = ntohs(cmd->vlan); ret = ncsi_add_filter(nc, NCSI_FILTER_VLAN, &vlan); -- 2.14.0