Commit 8579a67e authored by Samuel Mendoza-Jonas's avatar Samuel Mendoza-Jonas Committed by David S. Miller

net/ncsi: Fix several packet definitions

Signed-off-by: default avatarSamuel Mendoza-Jonas <sam@mendozajonas.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent a74e344a
...@@ -139,9 +139,9 @@ static int ncsi_cmd_handler_svf(struct sk_buff *skb, ...@@ -139,9 +139,9 @@ static int ncsi_cmd_handler_svf(struct sk_buff *skb,
struct ncsi_cmd_svf_pkt *cmd; struct ncsi_cmd_svf_pkt *cmd;
cmd = skb_put_zero(skb, sizeof(*cmd)); cmd = skb_put_zero(skb, sizeof(*cmd));
cmd->vlan = htons(nca->words[0]); cmd->vlan = htons(nca->words[1]);
cmd->index = nca->bytes[2]; cmd->index = nca->bytes[6];
cmd->enable = nca->bytes[3]; cmd->enable = nca->bytes[7];
ncsi_cmd_build_header(&cmd->cmd.common, nca); ncsi_cmd_build_header(&cmd->cmd.common, nca);
return 0; return 0;
...@@ -153,7 +153,7 @@ static int ncsi_cmd_handler_ev(struct sk_buff *skb, ...@@ -153,7 +153,7 @@ static int ncsi_cmd_handler_ev(struct sk_buff *skb,
struct ncsi_cmd_ev_pkt *cmd; struct ncsi_cmd_ev_pkt *cmd;
cmd = skb_put_zero(skb, sizeof(*cmd)); cmd = skb_put_zero(skb, sizeof(*cmd));
cmd->mode = nca->bytes[0]; cmd->mode = nca->bytes[3];
ncsi_cmd_build_header(&cmd->cmd.common, nca); ncsi_cmd_build_header(&cmd->cmd.common, nca);
return 0; return 0;
...@@ -228,7 +228,7 @@ static struct ncsi_cmd_handler { ...@@ -228,7 +228,7 @@ static struct ncsi_cmd_handler {
{ NCSI_PKT_CMD_AE, 8, ncsi_cmd_handler_ae }, { NCSI_PKT_CMD_AE, 8, ncsi_cmd_handler_ae },
{ NCSI_PKT_CMD_SL, 8, ncsi_cmd_handler_sl }, { NCSI_PKT_CMD_SL, 8, ncsi_cmd_handler_sl },
{ NCSI_PKT_CMD_GLS, 0, ncsi_cmd_handler_default }, { 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_EV, 4, ncsi_cmd_handler_ev },
{ NCSI_PKT_CMD_DV, 0, ncsi_cmd_handler_default }, { NCSI_PKT_CMD_DV, 0, ncsi_cmd_handler_default },
{ NCSI_PKT_CMD_SMA, 8, ncsi_cmd_handler_sma }, { NCSI_PKT_CMD_SMA, 8, ncsi_cmd_handler_sma },
......
...@@ -104,7 +104,7 @@ struct ncsi_cmd_svf_pkt { ...@@ -104,7 +104,7 @@ struct ncsi_cmd_svf_pkt {
unsigned char index; /* VLAN table index */ unsigned char index; /* VLAN table index */
unsigned char enable; /* Enable or disable */ unsigned char enable; /* Enable or disable */
__be32 checksum; /* Checksum */ __be32 checksum; /* Checksum */
unsigned char pad[14]; unsigned char pad[18];
}; };
/* Enable VLAN */ /* Enable VLAN */
......
...@@ -354,7 +354,8 @@ static int ncsi_rsp_handler_svf(struct ncsi_request *nr) ...@@ -354,7 +354,8 @@ static int ncsi_rsp_handler_svf(struct ncsi_request *nr)
/* Add or remove the VLAN filter */ /* Add or remove the VLAN filter */
if (!(cmd->enable & 0x1)) { 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 { } else {
vlan = ntohs(cmd->vlan); vlan = ntohs(cmd->vlan);
ret = ncsi_add_filter(nc, NCSI_FILTER_VLAN, &vlan); ret = ncsi_add_filter(nc, NCSI_FILTER_VLAN, &vlan);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment