aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/cxgb4/t4_hw.c
diff options
context:
space:
mode:
authorDimitris Michailidis <dm@chelsio.com>2010-07-11 08:01:18 -0400
committerDavid S. Miller <davem@davemloft.net>2010-07-11 20:07:46 -0400
commitf796564a5fd7be1a4597b66e2a516c18685641df (patch)
tree826260c75661df51280ae3a03ff782a45d12aba8 /drivers/net/cxgb4/t4_hw.c
parent671b0060d82984a566f2e75ffd166a9b61c6da7d (diff)
cxgb4: implement the ETHTOOL_GRXFH command
Signed-off-by: Dimitris Michailidis <dm@chelsio.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/cxgb4/t4_hw.c')
-rw-r--r--drivers/net/cxgb4/t4_hw.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/net/cxgb4/t4_hw.c b/drivers/net/cxgb4/t4_hw.c
index 3e63d1487f5f..ab46797623b6 100644
--- a/drivers/net/cxgb4/t4_hw.c
+++ b/drivers/net/cxgb4/t4_hw.c
@@ -3133,8 +3133,10 @@ int __devinit t4_port_init(struct adapter *adap, int mbox, int pf, int vf)
3133 u8 addr[6]; 3133 u8 addr[6];
3134 int ret, i, j = 0; 3134 int ret, i, j = 0;
3135 struct fw_port_cmd c; 3135 struct fw_port_cmd c;
3136 struct fw_rss_vi_config_cmd rvc;
3136 3137
3137 memset(&c, 0, sizeof(c)); 3138 memset(&c, 0, sizeof(c));
3139 memset(&rvc, 0, sizeof(rvc));
3138 3140
3139 for_each_port(adap, i) { 3141 for_each_port(adap, i) {
3140 unsigned int rss_size; 3142 unsigned int rss_size;
@@ -3171,6 +3173,15 @@ int __devinit t4_port_init(struct adapter *adap, int mbox, int pf, int vf)
3171 p->port_type = FW_PORT_CMD_PTYPE_GET(ret); 3173 p->port_type = FW_PORT_CMD_PTYPE_GET(ret);
3172 p->mod_type = FW_PORT_MOD_TYPE_NA; 3174 p->mod_type = FW_PORT_MOD_TYPE_NA;
3173 3175
3176 rvc.op_to_viid = htonl(FW_CMD_OP(FW_RSS_VI_CONFIG_CMD) |
3177 FW_CMD_REQUEST | FW_CMD_READ |
3178 FW_RSS_VI_CONFIG_CMD_VIID(p->viid));
3179 rvc.retval_len16 = htonl(FW_LEN16(rvc));
3180 ret = t4_wr_mbox(adap, mbox, &rvc, sizeof(rvc), &rvc);
3181 if (ret)
3182 return ret;
3183 p->rss_mode = ntohl(rvc.u.basicvirtual.defaultq_to_udpen);
3184
3174 init_link_config(&p->link_cfg, ntohs(c.u.info.pcap)); 3185 init_link_config(&p->link_cfg, ntohs(c.u.info.pcap));
3175 j++; 3186 j++;
3176 } 3187 }