Lines Matching refs:nca

37 				  struct ncsi_cmd_arg *nca)  in ncsi_cmd_build_header()  argument
45 h->id = nca->id; in ncsi_cmd_build_header()
46 h->type = nca->type; in ncsi_cmd_build_header()
47 h->channel = NCSI_TO_CHANNEL(nca->package, in ncsi_cmd_build_header()
48 nca->channel); in ncsi_cmd_build_header()
49 h->length = htons(nca->payload); in ncsi_cmd_build_header()
55 sizeof(*h) + nca->payload); in ncsi_cmd_build_header()
57 ALIGN(nca->payload, 4)); in ncsi_cmd_build_header()
62 struct ncsi_cmd_arg *nca) in ncsi_cmd_handler_default() argument
67 ncsi_cmd_build_header(&cmd->cmd.common, nca); in ncsi_cmd_handler_default()
73 struct ncsi_cmd_arg *nca) in ncsi_cmd_handler_sp() argument
78 cmd->hw_arbitration = nca->bytes[0]; in ncsi_cmd_handler_sp()
79 ncsi_cmd_build_header(&cmd->cmd.common, nca); in ncsi_cmd_handler_sp()
85 struct ncsi_cmd_arg *nca) in ncsi_cmd_handler_dc() argument
90 cmd->ald = nca->bytes[0]; in ncsi_cmd_handler_dc()
91 ncsi_cmd_build_header(&cmd->cmd.common, nca); in ncsi_cmd_handler_dc()
97 struct ncsi_cmd_arg *nca) in ncsi_cmd_handler_rc() argument
102 ncsi_cmd_build_header(&cmd->cmd.common, nca); in ncsi_cmd_handler_rc()
108 struct ncsi_cmd_arg *nca) in ncsi_cmd_handler_ae() argument
113 cmd->mc_id = nca->bytes[0]; in ncsi_cmd_handler_ae()
114 cmd->mode = htonl(nca->dwords[1]); in ncsi_cmd_handler_ae()
115 ncsi_cmd_build_header(&cmd->cmd.common, nca); in ncsi_cmd_handler_ae()
121 struct ncsi_cmd_arg *nca) in ncsi_cmd_handler_sl() argument
126 cmd->mode = htonl(nca->dwords[0]); in ncsi_cmd_handler_sl()
127 cmd->oem_mode = htonl(nca->dwords[1]); in ncsi_cmd_handler_sl()
128 ncsi_cmd_build_header(&cmd->cmd.common, nca); in ncsi_cmd_handler_sl()
134 struct ncsi_cmd_arg *nca) in ncsi_cmd_handler_svf() argument
139 cmd->vlan = htons(nca->words[1]); in ncsi_cmd_handler_svf()
140 cmd->index = nca->bytes[6]; in ncsi_cmd_handler_svf()
141 cmd->enable = nca->bytes[7]; in ncsi_cmd_handler_svf()
142 ncsi_cmd_build_header(&cmd->cmd.common, nca); in ncsi_cmd_handler_svf()
148 struct ncsi_cmd_arg *nca) in ncsi_cmd_handler_ev() argument
153 cmd->mode = nca->bytes[3]; in ncsi_cmd_handler_ev()
154 ncsi_cmd_build_header(&cmd->cmd.common, nca); in ncsi_cmd_handler_ev()
160 struct ncsi_cmd_arg *nca) in ncsi_cmd_handler_sma() argument
167 cmd->mac[i] = nca->bytes[i]; in ncsi_cmd_handler_sma()
168 cmd->index = nca->bytes[6]; in ncsi_cmd_handler_sma()
169 cmd->at_e = nca->bytes[7]; in ncsi_cmd_handler_sma()
170 ncsi_cmd_build_header(&cmd->cmd.common, nca); in ncsi_cmd_handler_sma()
176 struct ncsi_cmd_arg *nca) in ncsi_cmd_handler_ebf() argument
181 cmd->mode = htonl(nca->dwords[0]); in ncsi_cmd_handler_ebf()
182 ncsi_cmd_build_header(&cmd->cmd.common, nca); in ncsi_cmd_handler_ebf()
188 struct ncsi_cmd_arg *nca) in ncsi_cmd_handler_egmf() argument
193 cmd->mode = htonl(nca->dwords[0]); in ncsi_cmd_handler_egmf()
194 ncsi_cmd_build_header(&cmd->cmd.common, nca); in ncsi_cmd_handler_egmf()
200 struct ncsi_cmd_arg *nca) in ncsi_cmd_handler_snfc() argument
205 cmd->mode = nca->bytes[0]; in ncsi_cmd_handler_snfc()
206 ncsi_cmd_build_header(&cmd->cmd.common, nca); in ncsi_cmd_handler_snfc()
212 struct ncsi_cmd_arg *nca) in ncsi_cmd_handler_oem() argument
218 if (nca->payload < 26) in ncsi_cmd_handler_oem()
221 len += nca->payload; in ncsi_cmd_handler_oem()
224 memcpy(&cmd->mfr_id, nca->data, nca->payload); in ncsi_cmd_handler_oem()
225 ncsi_cmd_build_header(&cmd->cmd.common, nca); in ncsi_cmd_handler_oem()
234 struct ncsi_cmd_arg *nca);
268 static struct ncsi_request *ncsi_alloc_command(struct ncsi_cmd_arg *nca) in ncsi_alloc_command() argument
270 struct ncsi_dev_priv *ndp = nca->ndp; in ncsi_alloc_command()
279 nr = ncsi_alloc_request(ndp, nca->req_flags); in ncsi_alloc_command()
288 if (nca->payload < 26) in ncsi_alloc_command()
291 len += nca->payload; in ncsi_alloc_command()
310 int ncsi_xmit_cmd(struct ncsi_cmd_arg *nca) in ncsi_xmit_cmd() argument
319 if (nca->req_flags == NCSI_REQ_FLAG_NETLINK_DRIVEN) in ncsi_xmit_cmd()
322 type = nca->type; in ncsi_xmit_cmd()
337 netdev_err(nca->ndp->ndev.dev, in ncsi_xmit_cmd()
338 "Cannot send packet with type 0x%02x\n", nca->type); in ncsi_xmit_cmd()
348 nca->payload = nch->payload; in ncsi_xmit_cmd()
349 nr = ncsi_alloc_command(nca); in ncsi_xmit_cmd()
354 if (nca->req_flags == NCSI_REQ_FLAG_NETLINK_DRIVEN) { in ncsi_xmit_cmd()
355 nr->snd_seq = nca->info->snd_seq; in ncsi_xmit_cmd()
356 nr->snd_portid = nca->info->snd_portid; in ncsi_xmit_cmd()
357 nr->nlhdr = *nca->info->nlhdr; in ncsi_xmit_cmd()
361 nca->id = nr->id; in ncsi_xmit_cmd()
362 ret = nch->handler(nr->cmd, nca); in ncsi_xmit_cmd()
377 if (nca->ndp->gma_flag == 1) in ncsi_xmit_cmd()
378 memcpy(eh->h_source, nca->ndp->ndev.dev->dev_addr, ETH_ALEN); in ncsi_xmit_cmd()