Lines Matching refs:rsp
135 struct a2mp_discov_rsp *rsp;
170 len = struct_size(rsp, cl, num_ctrl);
171 rsp = kmalloc(len, GFP_ATOMIC);
172 if (!rsp) {
177 rsp->mtu = cpu_to_le16(L2CAP_A2MP_DEFAULT_MTU);
178 rsp->ext_feat = 0;
180 __a2mp_add_cl(mgr, rsp->cl);
184 a2mp_send(mgr, A2MP_DISCOVER_RSP, hdr->ident, len, rsp);
186 kfree(rsp);
193 struct a2mp_discov_rsp *rsp = (void *) skb->data;
199 if (len < sizeof(*rsp))
202 len -= sizeof(*rsp);
203 skb_pull(skb, sizeof(*rsp));
205 ext_feat = le16_to_cpu(rsp->ext_feat);
207 BT_DBG("mtu %d efm 0x%4.4x", le16_to_cpu(rsp->mtu), ext_feat);
309 struct a2mp_info_rsp rsp;
311 memset(&rsp, 0, sizeof(rsp));
313 rsp.id = req->id;
314 rsp.status = A2MP_STATUS_INVALID_CTRL_ID;
316 a2mp_send(mgr, A2MP_GETINFO_RSP, hdr->ident, sizeof(rsp),
317 &rsp);
340 struct a2mp_info_rsp *rsp = (struct a2mp_info_rsp *) skb->data;
344 if (le16_to_cpu(hdr->len) < sizeof(*rsp))
347 BT_DBG("id %d status 0x%2.2x", rsp->id, rsp->status);
349 if (rsp->status)
352 ctrl = amp_ctrl_add(mgr, rsp->id);
358 req.id = rsp->id;
362 skb_pull(skb, sizeof(*rsp));
383 struct a2mp_amp_assoc_rsp rsp;
385 memset(&rsp, 0, sizeof(rsp));
386 rsp.id = req->id;
389 rsp.status = A2MP_STATUS_COLLISION_OCCURED;
392 rsp.status = A2MP_STATUS_INVALID_CTRL_ID;
395 a2mp_send(mgr, A2MP_GETAMPASSOC_RSP, hdr->ident, sizeof(rsp),
396 &rsp);
414 struct a2mp_amp_assoc_rsp *rsp = (void *) skb->data;
421 if (len < sizeof(*rsp))
424 assoc_len = len - sizeof(*rsp);
426 BT_DBG("id %d status 0x%2.2x assoc len %zu", rsp->id, rsp->status,
429 if (rsp->status)
433 ctrl = amp_ctrl_lookup(mgr, rsp->id);
437 assoc = kmemdup(rsp->amp_assoc, assoc_len, GFP_KERNEL);
452 hdev = hci_dev_get(rsp->id);
456 hcon = phylink_add(hdev, mgr, rsp->id, true);
460 BT_DBG("Created hcon %p: loc:%d -> rem:%d", hcon, hdev->id, rsp->id);
462 mgr->bredr_chan->remote_amp_id = rsp->id;
476 struct a2mp_physlink_rsp rsp;
486 memset(&rsp, 0, sizeof(rsp));
488 rsp.local_id = req->remote_id;
489 rsp.remote_id = req->local_id;
493 rsp.status = A2MP_STATUS_INVALID_CTRL_ID;
497 ctrl = amp_ctrl_lookup(mgr, rsp.remote_id);
499 ctrl = amp_ctrl_add(mgr, rsp.remote_id);
503 rsp.status = A2MP_STATUS_UNABLE_START_LINK_CREATION;
530 rsp.status = A2MP_STATUS_SUCCESS;
532 rsp.status = A2MP_STATUS_UNABLE_START_LINK_CREATION;
542 if (rsp.status != A2MP_STATUS_SUCCESS) {
544 sizeof(rsp), &rsp);
558 struct a2mp_physlink_rsp rsp;
567 memset(&rsp, 0, sizeof(rsp));
569 rsp.local_id = req->remote_id;
570 rsp.remote_id = req->local_id;
571 rsp.status = A2MP_STATUS_SUCCESS;
575 rsp.status = A2MP_STATUS_INVALID_CTRL_ID;
583 rsp.status = A2MP_STATUS_NO_PHYSICAL_LINK_EXISTS;
593 a2mp_send(mgr, A2MP_DISCONNPHYSLINK_RSP, hdr->ident, sizeof(rsp), &rsp);
908 struct a2mp_info_rsp rsp;
916 memset(&rsp, 0, sizeof(rsp));
918 rsp.id = hdev->id;
919 rsp.status = A2MP_STATUS_INVALID_CTRL_ID;
922 rsp.status = 0;
923 rsp.total_bw = cpu_to_le32(hdev->amp_total_bw);
924 rsp.max_bw = cpu_to_le32(hdev->amp_max_bw);
925 rsp.min_latency = cpu_to_le32(hdev->amp_min_latency);
926 rsp.pal_cap = cpu_to_le16(hdev->amp_pal_cap);
927 rsp.assoc_size = cpu_to_le16(hdev->amp_assoc_size);
930 a2mp_send(mgr, A2MP_GETINFO_RSP, mgr->ident, sizeof(rsp), &rsp);
938 struct a2mp_amp_assoc_rsp *rsp;
948 rsp = kzalloc(len, GFP_KERNEL);
949 if (!rsp) {
954 rsp->id = hdev->id;
957 rsp->status = A2MP_STATUS_INVALID_CTRL_ID;
959 rsp->status = A2MP_STATUS_SUCCESS;
960 memcpy(rsp->amp_assoc, loc_assoc->data, loc_assoc->len);
963 a2mp_send(mgr, A2MP_GETAMPASSOC_RSP, mgr->ident, len, rsp);
965 kfree(rsp);
1008 struct a2mp_physlink_rsp rsp;
1015 memset(&rsp, 0, sizeof(rsp));
1019 rsp.status = A2MP_STATUS_UNABLE_START_LINK_CREATION;
1021 rsp.remote_id = hs_hcon->remote_id;
1022 rsp.status = A2MP_STATUS_SUCCESS;
1028 rsp.local_id = hdev->id;
1029 a2mp_send(mgr, A2MP_CREATEPHYSLINK_RSP, mgr->ident, sizeof(rsp), &rsp);