Lines Matching full:cp

957 		struct mgmt_mode *cp = cmd->param;  in mgmt_get_adv_discov_flags()  local
958 if (cp->val == 0x01) in mgmt_get_adv_discov_flags()
960 else if (cp->val == 0x02) in mgmt_get_adv_discov_flags()
981 struct mgmt_mode *cp = cmd->param; in mgmt_get_connectable() local
983 return cp->val; in mgmt_get_connectable()
1323 struct mgmt_mode *cp; in mgmt_set_powered_complete() local
1329 cp = cmd->param; in mgmt_set_powered_complete()
1334 if (cp->val) { in mgmt_set_powered_complete()
1346 if (cp->val) in mgmt_set_powered_complete()
1359 struct mgmt_mode cp; in set_powered_sync() local
1369 memcpy(&cp, cmd->param, sizeof(cp)); in set_powered_sync()
1375 return hci_set_powered_sync(hdev, cp.val); in set_powered_sync()
1381 struct mgmt_mode *cp = data; in set_powered() local
1387 if (cp->val != 0x00 && cp->val != 0x01) in set_powered()
1393 if (!cp->val) { in set_powered()
1407 if (!!cp->val == hdev_is_powered(hdev)) { in set_powered()
1419 if (cp->val == 0x00) { in set_powered()
1563 struct mgmt_cp_set_discoverable *cp = data; in set_discoverable() local
1575 if (cp->val != 0x00 && cp->val != 0x01 && cp->val != 0x02) in set_discoverable()
1579 timeout = __le16_to_cpu(cp->timeout); in set_discoverable()
1584 if ((cp->val == 0x00 && timeout > 0) || in set_discoverable()
1585 (cp->val == 0x02 && timeout == 0)) in set_discoverable()
1623 if (!!cp->val != hci_dev_test_flag(hdev, HCI_DISCOVERABLE)) { in set_discoverable()
1642 if (!!cp->val == hci_dev_test_flag(hdev, HCI_DISCOVERABLE) && in set_discoverable()
1643 (cp->val == 0x02) == hci_dev_test_flag(hdev, in set_discoverable()
1648 if (cp->val && hdev->discov_timeout > 0) { in set_discoverable()
1671 if (cp->val) in set_discoverable()
1677 if (cp->val == 0x02) in set_discoverable()
1763 struct mgmt_mode *cp = data; in set_connectable() local
1774 if (cp->val != 0x00 && cp->val != 0x01) in set_connectable()
1781 err = set_connectable_update_settings(hdev, sk, cp->val); in set_connectable()
1798 if (cp->val) { in set_connectable()
1823 struct mgmt_mode *cp = data; in set_bondable() local
1829 if (cp->val != 0x00 && cp->val != 0x01) in set_bondable()
1835 if (cp->val) in set_bondable()
1861 struct mgmt_mode *cp = data; in set_link_security() local
1873 if (cp->val != 0x00 && cp->val != 0x01) in set_link_security()
1882 if (!!cp->val != hci_dev_test_flag(hdev, HCI_LINK_SECURITY)) { in set_link_security()
1903 val = !!cp->val; in set_link_security()
1931 struct mgmt_mode *cp; in set_ssp_complete() local
1939 cp = cmd->param; in set_ssp_complete()
1940 enable = cp->val; in set_ssp_complete()
1974 struct mgmt_mode cp; in set_ssp_sync() local
1985 memcpy(&cp, cmd->param, sizeof(cp)); in set_ssp_sync()
1989 if (cp.val) in set_ssp_sync()
1992 err = hci_write_ssp_mode_sync(hdev, cp.val); in set_ssp_sync()
2002 struct mgmt_mode *cp = data; in set_ssp() local
2017 if (cp->val != 0x00 && cp->val != 0x01) in set_ssp()
2026 if (cp->val) { in set_ssp()
2050 if (!!cp->val == hci_dev_test_flag(hdev, HCI_SSP_ENABLED)) { in set_ssp()
2113 struct mgmt_mode cp; in set_le_sync() local
2124 memcpy(&cp, cmd->param, sizeof(cp)); in set_le_sync()
2125 val = !!cp.val; in set_le_sync()
2194 DEFINE_FLEX(struct mgmt_cp_set_mesh, cp, ad_types, num_ad_types, in set_mesh_sync()
2206 memcpy(cp, cmd->param, min(__struct_size(cp), len)); in set_mesh_sync()
2212 if (cp->enable) in set_mesh_sync()
2217 hdev->le_scan_interval = __le16_to_cpu(cp->period); in set_mesh_sync()
2218 hdev->le_scan_window = __le16_to_cpu(cp->window); in set_mesh_sync()
2224 memcpy(hdev->mesh_ad_types, cp->ad_types, len); in set_mesh_sync()
2232 struct mgmt_cp_set_mesh *cp = data; in set_mesh() local
2244 if (cp->enable != 0x00 && cp->enable != 0x01) in set_mesh()
2249 period = __le16_to_cpu(cp->period); in set_mesh()
2255 window = __le16_to_cpu(cp->window); in set_mesh()
2522 struct mgmt_mode *cp = data; in set_le() local
2533 if (cp->val != 0x00 && cp->val != 0x01) in set_le()
2547 if (cp->val == 0x01) in set_le()
2556 val = !!cp->val; in set_le()
2612 struct mgmt_cp_hci_cmd_sync *cp = cmd->param; in send_hci_cmd_sync() local
2615 skb = __hci_cmd_sync_ev(hdev, le16_to_cpu(cp->opcode), in send_hci_cmd_sync()
2616 le16_to_cpu(cp->params_len), cp->params, in send_hci_cmd_sync()
2617 cp->event, cp->timeout ? in send_hci_cmd_sync()
2618 secs_to_jiffies(cp->timeout) : in send_hci_cmd_sync()
2640 struct mgmt_cp_hci_cmd_sync *cp = data; in mgmt_hci_cmd_sync() local
2645 le16_to_cpu(cp->params_len))) in mgmt_hci_cmd_sync()
2735 struct mgmt_cp_add_uuid *cp = data; in add_uuid() local
2756 memcpy(uuid->uuid, cp->uuid, 16); in add_uuid()
2757 uuid->svc_hint = cp->svc_hint; in add_uuid()
2758 uuid->size = get_uuid_size(cp->uuid); in add_uuid()
2811 struct mgmt_cp_remove_uuid *cp = data; in remove_uuid() local
2829 if (memcmp(cp->uuid, bt_uuid_any, 16) == 0) { in remove_uuid()
2845 if (memcmp(match->uuid, cp->uuid, 16) != 0) in remove_uuid()
2897 struct mgmt_cp_set_dev_class *cp = data; in set_dev_class() local
2915 if ((cp->minor & 0x03) != 0 || (cp->major & 0xe0) != 0) { in set_dev_class()
2921 hdev->major_class = cp->major; in set_dev_class()
2922 hdev->minor_class = cp->minor; in set_dev_class()
2952 struct mgmt_cp_load_link_keys *cp = data; in load_link_keys() local
2953 const u16 max_key_count = ((U16_MAX - sizeof(*cp)) / in load_link_keys()
2965 key_count = __le16_to_cpu(cp->key_count); in load_link_keys()
2973 expected_len = struct_size(cp, keys, key_count); in load_link_keys()
2981 if (cp->debug_keys != 0x00 && cp->debug_keys != 0x01) in load_link_keys()
2985 bt_dev_dbg(hdev, "debug_keys %u key_count %u", cp->debug_keys, in load_link_keys()
2992 if (cp->debug_keys) in load_link_keys()
3002 struct mgmt_link_key_info *key = &cp->keys[i]; in load_link_keys()
3057 struct mgmt_cp_unpair_device *cp = cmd->param; in unpair_device_complete() local
3060 device_unpaired(hdev, &cp->addr.bdaddr, cp->addr.type, cmd->sk); in unpair_device_complete()
3069 struct mgmt_cp_unpair_device *cp = cmd->param; in unpair_device_sync() local
3072 if (cp->addr.type == BDADDR_BREDR) in unpair_device_sync()
3074 &cp->addr.bdaddr); in unpair_device_sync()
3076 conn = hci_conn_hash_lookup_le(hdev, &cp->addr.bdaddr, in unpair_device_sync()
3077 le_addr_type(cp->addr.type)); in unpair_device_sync()
3093 struct mgmt_cp_unpair_device *cp = data; in unpair_device() local
3102 bacpy(&rp.addr.bdaddr, &cp->addr.bdaddr); in unpair_device()
3103 rp.addr.type = cp->addr.type; in unpair_device()
3105 if (!bdaddr_type_is_valid(cp->addr.type)) in unpair_device()
3110 if (cp->disconnect != 0x00 && cp->disconnect != 0x01) in unpair_device()
3124 if (cp->addr.type == BDADDR_BREDR) { in unpair_device()
3132 if (cp->disconnect) in unpair_device()
3134 &cp->addr.bdaddr); in unpair_device()
3138 err = hci_remove_link_key(hdev, &cp->addr.bdaddr); in unpair_device()
3151 addr_type = le_addr_type(cp->addr.type); in unpair_device()
3154 err = smp_cancel_and_remove_pairing(hdev, &cp->addr.bdaddr, addr_type); in unpair_device()
3162 conn = hci_conn_hash_lookup_le(hdev, &cp->addr.bdaddr, addr_type); in unpair_device()
3164 hci_conn_params_del(hdev, &cp->addr.bdaddr, addr_type); in unpair_device()
3175 params = hci_conn_params_lookup(hdev, &cp->addr.bdaddr, addr_type); in unpair_device()
3186 if (!cp->disconnect) in unpair_device()
3196 device_unpaired(hdev, &cp->addr.bdaddr, cp->addr.type, sk); in unpair_device()
3200 cmd = mgmt_pending_new(sk, MGMT_OP_UNPAIR_DEVICE, hdev, cp, in unpair_device()
3201 sizeof(*cp)); in unpair_device()
3230 struct mgmt_cp_disconnect *cp = cmd->param; in disconnect_sync() local
3233 if (cp->addr.type == BDADDR_BREDR) in disconnect_sync()
3235 &cp->addr.bdaddr); in disconnect_sync()
3237 conn = hci_conn_hash_lookup_le(hdev, &cp->addr.bdaddr, in disconnect_sync()
3238 le_addr_type(cp->addr.type)); in disconnect_sync()
3254 struct mgmt_cp_disconnect *cp = data; in disconnect() local
3262 bacpy(&rp.addr.bdaddr, &cp->addr.bdaddr); in disconnect()
3263 rp.addr.type = cp->addr.type; in disconnect()
3265 if (!bdaddr_type_is_valid(cp->addr.type)) in disconnect()
3374 struct mgmt_cp_pin_code_neg_reply *cp) in send_pin_code_neg_reply() argument
3379 cmd = mgmt_pending_add(sk, MGMT_OP_PIN_CODE_NEG_REPLY, hdev, cp, in send_pin_code_neg_reply()
3380 sizeof(*cp)); in send_pin_code_neg_reply()
3387 sizeof(cp->addr.bdaddr), &cp->addr.bdaddr); in send_pin_code_neg_reply()
3398 struct mgmt_cp_pin_code_reply *cp = data; in pin_code_reply() local
3413 conn = hci_conn_hash_lookup_ba(hdev, ACL_LINK, &cp->addr.bdaddr); in pin_code_reply()
3420 if (conn->pending_sec_level == BT_SECURITY_HIGH && cp->pin_len != 16) { in pin_code_reply()
3423 memcpy(&ncp.addr, &cp->addr, sizeof(ncp.addr)); in pin_code_reply()
3443 bacpy(&reply.bdaddr, &cp->addr.bdaddr); in pin_code_reply()
3444 reply.pin_len = cp->pin_len; in pin_code_reply()
3445 memcpy(reply.pin_code, cp->pin_code, sizeof(reply.pin_code)); in pin_code_reply()
3459 struct mgmt_cp_set_io_capability *cp = data; in set_io_capability() local
3463 if (cp->io_capability > SMP_IO_KEYBOARD_DISPLAY) in set_io_capability()
3469 hdev->io_capability = cp->io_capability; in set_io_capability()
3576 struct mgmt_cp_pair_device *cp = data; in pair_device() local
3586 bacpy(&rp.addr.bdaddr, &cp->addr.bdaddr); in pair_device()
3587 rp.addr.type = cp->addr.type; in pair_device()
3589 if (!bdaddr_type_is_valid(cp->addr.type)) in pair_device()
3594 if (cp->io_cap > SMP_IO_KEYBOARD_DISPLAY) in pair_device()
3608 if (hci_bdaddr_is_paired(hdev, &cp->addr.bdaddr, cp->addr.type)) { in pair_device()
3618 if (cp->addr.type == BDADDR_BREDR) { in pair_device()
3619 conn = hci_connect_acl(hdev, &cp->addr.bdaddr, sec_level, in pair_device()
3623 u8 addr_type = le_addr_type(cp->addr.type); in pair_device()
3635 p = hci_conn_params_add(hdev, &cp->addr.bdaddr, addr_type); in pair_device()
3644 conn = hci_connect_le_scan(hdev, &cp->addr.bdaddr, addr_type, in pair_device()
3683 if (cp->addr.type == BDADDR_BREDR) { in pair_device()
3693 conn->io_capability = cp->io_cap; in pair_device()
3820 struct hci_cp_user_passkey_reply cp; in user_pairing_resp() local
3822 bacpy(&cp.bdaddr, &addr->bdaddr); in user_pairing_resp()
3823 cp.passkey = passkey; in user_pairing_resp()
3824 err = hci_send_cmd(hdev, hci_op, sizeof(cp), &cp); in user_pairing_resp()
3840 struct mgmt_cp_pin_code_neg_reply *cp = data; in pin_code_neg_reply() local
3844 return user_pairing_resp(sk, hdev, &cp->addr, in pin_code_neg_reply()
3852 struct mgmt_cp_user_confirm_reply *cp = data; in user_confirm_reply() local
3856 if (len != sizeof(*cp)) in user_confirm_reply()
3860 return user_pairing_resp(sk, hdev, &cp->addr, in user_confirm_reply()
3868 struct mgmt_cp_user_confirm_neg_reply *cp = data; in user_confirm_neg_reply() local
3872 return user_pairing_resp(sk, hdev, &cp->addr, in user_confirm_neg_reply()
3880 struct mgmt_cp_user_passkey_reply *cp = data; in user_passkey_reply() local
3884 return user_pairing_resp(sk, hdev, &cp->addr, in user_passkey_reply()
3886 HCI_OP_USER_PASSKEY_REPLY, cp->passkey); in user_passkey_reply()
3892 struct mgmt_cp_user_passkey_neg_reply *cp = data; in user_passkey_neg_reply() local
3896 return user_pairing_resp(sk, hdev, &cp->addr, in user_passkey_neg_reply()
3932 struct mgmt_cp_set_local_name *cp; in set_name_complete() local
3940 cp = cmd->param; in set_name_complete()
3947 cp, sizeof(*cp)); in set_name_complete()
3959 struct mgmt_cp_set_local_name cp; in set_name_sync() local
3968 memcpy(&cp, cmd->param, sizeof(cp)); in set_name_sync()
3973 hci_update_name_sync(hdev, cp.name); in set_name_sync()
3989 struct mgmt_cp_set_local_name *cp = data; in set_local_name() local
4000 if (!memcmp(hdev->dev_name, cp->name, sizeof(hdev->dev_name)) && in set_local_name()
4001 !memcmp(hdev->short_name, cp->short_name, in set_local_name()
4008 memcpy(hdev->short_name, cp->short_name, sizeof(hdev->short_name)); in set_local_name()
4011 memcpy(hdev->dev_name, cp->name, sizeof(hdev->dev_name)); in set_local_name()
4042 memcpy(hdev->dev_name, cp->name, sizeof(hdev->dev_name)); in set_local_name()
4057 struct mgmt_cp_set_appearance *cp = data; in set_appearance() local
4067 appearance = le16_to_cpu(cp->appearance); in set_appearance()
4161 struct mgmt_cp_set_phy_configuration *cp = cmd->param; in set_default_phy_sync() local
4165 selected_phys = __le32_to_cpu(cp->selected_phys); in set_default_phy_sync()
4202 struct mgmt_cp_set_phy_configuration *cp = data; in set_phy_configuration() local
4213 selected_phys = __le32_to_cpu(cp->selected_phys); in set_phy_configuration()
4380 struct mgmt_mode *cp = data; in set_wideband_speech() local
4391 if (cp->val != 0x00 && cp->val != 0x01) in set_wideband_speech()
4399 !!cp->val != hci_dev_test_flag(hdev, in set_wideband_speech()
4407 if (cp->val) in set_wideband_speech()
4645 struct mgmt_cp_set_exp_feature *cp, u16 data_len) in set_zero_key_func() argument
4672 struct mgmt_cp_set_exp_feature *cp, u16 data_len) in set_debug_func() argument
4692 if (cp->param[0] != 0x00 && cp->param[0] != 0x01) in set_debug_func()
4697 val = !!cp->param[0]; in set_debug_func()
4718 struct mgmt_cp_set_exp_feature *cp, u16 data_len) in set_mgmt_mesh_func() argument
4737 if (cp->param[0] != 0x00 && cp->param[0] != 0x01) in set_mgmt_mesh_func()
4742 val = !!cp->param[0]; in set_mgmt_mesh_func()
4769 struct mgmt_cp_set_exp_feature *cp, in set_quality_report_func() argument
4789 if (cp->param[0] != 0x00 && cp->param[0] != 0x01) in set_quality_report_func()
4796 val = !!cp->param[0]; in set_quality_report_func()
4843 struct mgmt_cp_set_exp_feature *cp, in set_offload_codec_func() argument
4863 if (cp->param[0] != 0x00 && cp->param[0] != 0x01) in set_offload_codec_func()
4868 val = !!cp->param[0]; in set_offload_codec_func()
4901 struct mgmt_cp_set_exp_feature *cp, in set_le_simultaneous_roles_func() argument
4921 if (cp->param[0] != 0x00 && cp->param[0] != 0x01) in set_le_simultaneous_roles_func()
4926 val = !!cp->param[0]; in set_le_simultaneous_roles_func()
4960 struct mgmt_cp_set_exp_feature *cp, u16 data_len) in set_iso_socket_func() argument
4979 if (cp->param[0] != 0x00 && cp->param[0] != 0x01) in set_iso_socket_func()
4984 val = cp->param[0] ? true : false; in set_iso_socket_func()
5012 struct mgmt_cp_set_exp_feature *cp, u16 data_len);
5033 struct mgmt_cp_set_exp_feature *cp = data; in set_exp_feature() local
5039 if (!memcmp(cp->uuid, exp_features[i].uuid, 16)) in set_exp_feature()
5040 return exp_features[i].set_func(sk, hdev, cp, data_len); in set_exp_feature()
5051 struct mgmt_cp_get_device_flags *cp = data; in get_device_flags() local
5060 &cp->addr.bdaddr, cp->addr.type); in get_device_flags()
5068 if (cp->addr.type == BDADDR_BREDR) { in get_device_flags()
5070 &cp->addr.bdaddr, in get_device_flags()
5071 cp->addr.type); in get_device_flags()
5077 params = hci_conn_params_lookup(hdev, &cp->addr.bdaddr, in get_device_flags()
5078 le_addr_type(cp->addr.type)); in get_device_flags()
5085 bacpy(&rp.addr.bdaddr, &cp->addr.bdaddr); in get_device_flags()
5086 rp.addr.type = cp->addr.type; in get_device_flags()
5116 struct mgmt_cp_set_device_flags *cp = data; in set_device_flags() local
5121 u32 current_flags = __le32_to_cpu(cp->current_flags); in set_device_flags()
5124 &cp->addr.bdaddr, cp->addr.type, current_flags); in set_device_flags()
5137 if (cp->addr.type == BDADDR_BREDR) { in set_device_flags()
5139 &cp->addr.bdaddr, in set_device_flags()
5140 cp->addr.type); in set_device_flags()
5147 &cp->addr.bdaddr, cp->addr.type); in set_device_flags()
5153 params = hci_conn_params_lookup(hdev, &cp->addr.bdaddr, in set_device_flags()
5154 le_addr_type(cp->addr.type)); in set_device_flags()
5157 &cp->addr.bdaddr, le_addr_type(cp->addr.type)); in set_device_flags()
5183 device_flags_changed(sk, hdev, &cp->addr.bdaddr, cp->addr.type, in set_device_flags()
5187 &cp->addr, sizeof(cp->addr)); in set_device_flags()
5422 struct mgmt_cp_add_adv_patterns_monitor *cp = data; in add_adv_patterns_monitor() local
5425 size_t expected_size = sizeof(*cp); in add_adv_patterns_monitor()
5429 if (len <= sizeof(*cp)) { in add_adv_patterns_monitor()
5434 expected_size += cp->pattern_count * sizeof(struct mgmt_adv_pattern); in add_adv_patterns_monitor()
5449 status = parse_adv_monitor_pattern(m, cp->pattern_count, cp->patterns); in add_adv_patterns_monitor()
5459 struct mgmt_cp_add_adv_patterns_monitor_rssi *cp = data; in add_adv_patterns_monitor_rssi() local
5462 size_t expected_size = sizeof(*cp); in add_adv_patterns_monitor_rssi()
5466 if (len <= sizeof(*cp)) { in add_adv_patterns_monitor_rssi()
5471 expected_size += cp->pattern_count * sizeof(struct mgmt_adv_pattern); in add_adv_patterns_monitor_rssi()
5485 parse_adv_monitor_rssi(m, &cp->rssi); in add_adv_patterns_monitor_rssi()
5486 status = parse_adv_monitor_pattern(m, cp->pattern_count, cp->patterns); in add_adv_patterns_monitor_rssi()
5498 struct mgmt_cp_remove_adv_monitor *cp; in mgmt_remove_adv_monitor_complete() local
5505 cp = cmd->param; in mgmt_remove_adv_monitor_complete()
5507 rp.monitor_handle = cp->monitor_handle; in mgmt_remove_adv_monitor_complete()
5510 mgmt_adv_monitor_removed(cmd->sk, hdev, cp->monitor_handle); in mgmt_remove_adv_monitor_complete()
5526 struct mgmt_cp_remove_adv_monitor *cp = cmd->param; in mgmt_remove_adv_monitor_sync() local
5527 u16 handle = __le16_to_cpu(cp->monitor_handle); in mgmt_remove_adv_monitor_sync()
5723 struct mgmt_cp_add_remote_oob_data *cp = data; in add_remote_oob_data() local
5726 if (cp->addr.type != BDADDR_BREDR) { in add_remote_oob_data()
5730 &cp->addr, sizeof(cp->addr)); in add_remote_oob_data()
5734 err = hci_add_remote_oob_data(hdev, &cp->addr.bdaddr, in add_remote_oob_data()
5735 cp->addr.type, cp->hash, in add_remote_oob_data()
5736 cp->rand, NULL, NULL); in add_remote_oob_data()
5744 &cp->addr, sizeof(cp->addr)); in add_remote_oob_data()
5746 struct mgmt_cp_add_remote_oob_ext_data *cp = data; in add_remote_oob_data() local
5750 if (bdaddr_type_is_le(cp->addr.type)) { in add_remote_oob_data()
5754 if (memcmp(cp->rand192, ZERO_KEY, 16) || in add_remote_oob_data()
5755 memcmp(cp->hash192, ZERO_KEY, 16)) { in add_remote_oob_data()
5769 if (!memcmp(cp->rand192, ZERO_KEY, 16) || in add_remote_oob_data()
5770 !memcmp(cp->hash192, ZERO_KEY, 16)) { in add_remote_oob_data()
5774 rand192 = cp->rand192; in add_remote_oob_data()
5775 hash192 = cp->hash192; in add_remote_oob_data()
5782 if (!memcmp(cp->rand256, ZERO_KEY, 16) || in add_remote_oob_data()
5783 !memcmp(cp->hash256, ZERO_KEY, 16)) { in add_remote_oob_data()
5787 rand256 = cp->rand256; in add_remote_oob_data()
5788 hash256 = cp->hash256; in add_remote_oob_data()
5791 err = hci_add_remote_oob_data(hdev, &cp->addr.bdaddr, in add_remote_oob_data()
5792 cp->addr.type, hash192, rand192, in add_remote_oob_data()
5801 status, &cp->addr, sizeof(cp->addr)); in add_remote_oob_data()
5817 struct mgmt_cp_remove_remote_oob_data *cp = data; in remove_remote_oob_data() local
5823 if (cp->addr.type != BDADDR_BREDR) in remove_remote_oob_data()
5827 &cp->addr, sizeof(cp->addr)); in remove_remote_oob_data()
5831 if (!bacmp(&cp->addr.bdaddr, BDADDR_ANY)) { in remove_remote_oob_data()
5837 err = hci_remove_remote_oob_data(hdev, &cp->addr.bdaddr, cp->addr.type); in remove_remote_oob_data()
5845 status, &cp->addr, sizeof(cp->addr)); in remove_remote_oob_data()
5906 struct mgmt_cp_start_discovery *cp = data; in start_discovery_internal() local
5918 &cp->type, sizeof(cp->type)); in start_discovery_internal()
5925 &cp->type, sizeof(cp->type)); in start_discovery_internal()
5929 if (!discovery_type_is_valid(hdev, cp->type, &status)) { in start_discovery_internal()
5931 &cp->type, sizeof(cp->type)); in start_discovery_internal()
5938 &cp->type, sizeof(cp->type)); in start_discovery_internal()
5947 hdev->discovery.type = cp->type; in start_discovery_internal()
5992 struct mgmt_cp_start_service_discovery *cp = data; in start_service_discovery() local
5994 const u16 max_uuid_count = ((U16_MAX - sizeof(*cp)) / 16); in start_service_discovery()
6007 &cp->type, sizeof(cp->type)); in start_service_discovery()
6015 MGMT_STATUS_BUSY, &cp->type, in start_service_discovery()
6016 sizeof(cp->type)); in start_service_discovery()
6023 MGMT_STATUS_BUSY, &cp->type, in start_service_discovery()
6024 sizeof(cp->type)); in start_service_discovery()
6028 uuid_count = __le16_to_cpu(cp->uuid_count); in start_service_discovery()
6034 MGMT_STATUS_INVALID_PARAMS, &cp->type, in start_service_discovery()
6035 sizeof(cp->type)); in start_service_discovery()
6039 expected_len = sizeof(*cp) + uuid_count * 16; in start_service_discovery()
6045 MGMT_STATUS_INVALID_PARAMS, &cp->type, in start_service_discovery()
6046 sizeof(cp->type)); in start_service_discovery()
6050 if (!discovery_type_is_valid(hdev, cp->type, &status)) { in start_service_discovery()
6053 status, &cp->type, sizeof(cp->type)); in start_service_discovery()
6070 hdev->discovery.type = cp->type; in start_service_discovery()
6071 hdev->discovery.rssi = cp->rssi; in start_service_discovery()
6075 hdev->discovery.uuids = kmemdup(cp->uuids, uuid_count * 16, in start_service_discovery()
6081 &cp->type, sizeof(cp->type)); in start_service_discovery()
6174 struct mgmt_cp_confirm_name *cp = data; in confirm_name() local
6184 MGMT_STATUS_FAILED, &cp->addr, in confirm_name()
6185 sizeof(cp->addr)); in confirm_name()
6189 e = hci_inquiry_cache_lookup_unknown(hdev, &cp->addr.bdaddr); in confirm_name()
6192 MGMT_STATUS_INVALID_PARAMS, &cp->addr, in confirm_name()
6193 sizeof(cp->addr)); in confirm_name()
6197 if (cp->name_known) { in confirm_name()
6206 &cp->addr, sizeof(cp->addr)); in confirm_name()
6216 struct mgmt_cp_block_device *cp = data; in block_device() local
6222 if (!bdaddr_type_is_valid(cp->addr.type)) in block_device()
6225 &cp->addr, sizeof(cp->addr)); in block_device()
6229 err = hci_bdaddr_list_add(&hdev->reject_list, &cp->addr.bdaddr, in block_device()
6230 cp->addr.type); in block_device()
6236 mgmt_event(MGMT_EV_DEVICE_BLOCKED, hdev, &cp->addr, sizeof(cp->addr), in block_device()
6242 &cp->addr, sizeof(cp->addr)); in block_device()
6252 struct mgmt_cp_unblock_device *cp = data; in unblock_device() local
6258 if (!bdaddr_type_is_valid(cp->addr.type)) in unblock_device()
6261 &cp->addr, sizeof(cp->addr)); in unblock_device()
6265 err = hci_bdaddr_list_del(&hdev->reject_list, &cp->addr.bdaddr, in unblock_device()
6266 cp->addr.type); in unblock_device()
6272 mgmt_event(MGMT_EV_DEVICE_UNBLOCKED, hdev, &cp->addr, sizeof(cp->addr), in unblock_device()
6278 &cp->addr, sizeof(cp->addr)); in unblock_device()
6293 struct mgmt_cp_set_device_id *cp = data; in set_device_id() local
6299 source = __le16_to_cpu(cp->source); in set_device_id()
6308 hdev->devid_vendor = __le16_to_cpu(cp->vendor); in set_device_id()
6309 hdev->devid_product = __le16_to_cpu(cp->product); in set_device_id()
6310 hdev->devid_version = __le16_to_cpu(cp->version); in set_device_id()
6384 struct mgmt_mode cp; in set_adv_sync() local
6394 memcpy(&cp, cmd->param, sizeof(cp)); in set_adv_sync()
6398 val = !!cp.val; in set_adv_sync()
6400 if (cp.val == 0x02) in set_adv_sync()
6431 struct mgmt_mode *cp = data; in set_advertising() local
6443 if (cp->val != 0x00 && cp->val != 0x01 && cp->val != 0x02) in set_advertising()
6453 val = !!cp->val; in set_advertising()
6462 (cp->val == 0x02) == hci_dev_test_flag(hdev, HCI_ADVERTISING_CONNECTABLE)) || in set_advertising()
6469 if (cp->val) { in set_advertising()
6472 if (cp->val == 0x02) in set_advertising()
6516 struct mgmt_cp_set_static_address *cp = data; in set_static_address() local
6529 if (bacmp(&cp->bdaddr, BDADDR_ANY)) { in set_static_address()
6530 if (!bacmp(&cp->bdaddr, BDADDR_NONE)) in set_static_address()
6536 if ((cp->bdaddr.b[5] & 0xc0) != 0xc0) in set_static_address()
6544 bacpy(&hdev->static_addr, &cp->bdaddr); in set_static_address()
6560 struct mgmt_cp_set_scan_params *cp = data; in set_scan_params() local
6571 interval = __le16_to_cpu(cp->interval); in set_scan_params()
6577 window = __le16_to_cpu(cp->window); in set_scan_params()
6617 struct mgmt_mode *cp = cmd->param; in fast_connectable_complete() local
6619 if (cp->val) in fast_connectable_complete()
6634 struct mgmt_mode *cp = cmd->param; in write_fast_connectable_sync() local
6636 return hci_write_fast_connectable_sync(hdev, cp->val); in write_fast_connectable_sync()
6642 struct mgmt_mode *cp = data; in set_fast_connectable() local
6654 if (cp->val != 0x00 && cp->val != 0x01) in set_fast_connectable()
6661 if (!!cp->val == hci_dev_test_flag(hdev, HCI_FAST_CONNECTABLE)) { in set_fast_connectable()
6738 struct mgmt_mode *cp = data; in set_bredr() local
6752 if (cp->val != 0x00 && cp->val != 0x01) in set_bredr()
6758 if (cp->val == hci_dev_test_flag(hdev, HCI_BREDR_ENABLED)) { in set_bredr()
6764 if (!cp->val) { in set_bredr()
6782 if (!cp->val) { in set_bredr()
6839 struct mgmt_mode *cp; in set_secure_conn_complete() local
6850 cp = cmd->param; in set_secure_conn_complete()
6852 switch (cp->val) { in set_secure_conn_complete()
6877 struct mgmt_mode *cp = cmd->param; in set_secure_conn_sync() local
6878 u8 val = !!cp->val; in set_secure_conn_sync()
6889 struct mgmt_mode *cp = data; in set_secure_conn() local
6907 if (cp->val != 0x00 && cp->val != 0x01 && cp->val != 0x02) in set_secure_conn()
6917 if (cp->val) { in set_secure_conn()
6920 if (cp->val == 0x02) in set_secure_conn()
6940 val = !!cp->val; in set_secure_conn()
6943 (cp->val == 0x02) == hci_dev_test_flag(hdev, HCI_SC_ONLY)) { in set_secure_conn()
6970 struct mgmt_mode *cp = data; in set_debug_keys() local
6976 if (cp->val != 0x00 && cp->val != 0x01 && cp->val != 0x02) in set_debug_keys()
6982 if (cp->val) in set_debug_keys()
6988 if (cp->val == 0x02) in set_debug_keys()
6997 u8 mode = (cp->val == 0x02) ? 0x01 : 0x00; in set_debug_keys()
7017 struct mgmt_cp_set_privacy *cp = cp_data; in set_privacy() local
7027 if (cp->privacy != 0x00 && cp->privacy != 0x01 && cp->privacy != 0x02) in set_privacy()
7042 if (cp->privacy) { in set_privacy()
7044 memcpy(hdev->irk, cp->irk, sizeof(hdev->irk)); in set_privacy()
7047 if (cp->privacy == 0x02) in set_privacy()
7090 struct mgmt_cp_load_irks *cp = cp_data; in load_irks() local
7091 const u16 max_irk_count = ((U16_MAX - sizeof(*cp)) / in load_irks()
7102 irk_count = __le16_to_cpu(cp->irk_count); in load_irks()
7110 expected_len = struct_size(cp, irks, irk_count); in load_irks()
7121 struct mgmt_irk_info *key = &cp->irks[i]; in load_irks()
7134 struct mgmt_irk_info *irk = &cp->irks[i]; in load_irks()
7180 struct mgmt_cp_load_long_term_keys *cp = cp_data; in load_long_term_keys() local
7181 const u16 max_key_count = ((U16_MAX - sizeof(*cp)) / in load_long_term_keys()
7192 key_count = __le16_to_cpu(cp->key_count); in load_long_term_keys()
7200 expected_len = struct_size(cp, keys, key_count); in load_long_term_keys()
7215 struct mgmt_ltk_info *key = &cp->keys[i]; in load_long_term_keys()
7274 struct mgmt_cp_get_conn_info *cp = cmd->param; in get_conn_info_complete() local
7280 memcpy(&rp.addr, &cp->addr, sizeof(rp.addr)); in get_conn_info_complete()
7302 struct mgmt_cp_get_conn_info *cp = cmd->param; in get_conn_info_sync() local
7308 if (cp->addr.type == BDADDR_BREDR) in get_conn_info_sync()
7310 &cp->addr.bdaddr); in get_conn_info_sync()
7312 conn = hci_conn_hash_lookup_ba(hdev, LE_LINK, &cp->addr.bdaddr); in get_conn_info_sync()
7326 if (!err && (!bdaddr_type_is_le(cp->addr.type) || in get_conn_info_sync()
7340 struct mgmt_cp_get_conn_info *cp = data; in get_conn_info() local
7349 bacpy(&rp.addr.bdaddr, &cp->addr.bdaddr); in get_conn_info()
7350 rp.addr.type = cp->addr.type; in get_conn_info()
7352 if (!bdaddr_type_is_valid(cp->addr.type)) in get_conn_info()
7366 if (cp->addr.type == BDADDR_BREDR) in get_conn_info()
7368 &cp->addr.bdaddr); in get_conn_info()
7370 conn = hci_conn_hash_lookup_ba(hdev, LE_LINK, &cp->addr.bdaddr); in get_conn_info()
7431 struct mgmt_cp_get_clock_info *cp = cmd->param; in get_clock_info_complete() local
7439 bacpy(&rp.addr.bdaddr, &cp->addr.bdaddr); in get_clock_info_complete()
7440 rp.addr.type = cp->addr.type; in get_clock_info_complete()
7462 struct mgmt_cp_get_clock_info *cp = cmd->param; in get_clock_info_sync() local
7470 conn = hci_conn_hash_lookup_ba(hdev, ACL_LINK, &cp->addr.bdaddr); in get_clock_info_sync()
7484 struct mgmt_cp_get_clock_info *cp = data; in get_clock_info() local
7493 bacpy(&rp.addr.bdaddr, &cp->addr.bdaddr); in get_clock_info()
7494 rp.addr.type = cp->addr.type; in get_clock_info()
7496 if (cp->addr.type != BDADDR_BREDR) in get_clock_info()
7510 if (bacmp(&cp->addr.bdaddr, BDADDR_ANY)) { in get_clock_info()
7512 &cp->addr.bdaddr); in get_clock_info()
7622 struct mgmt_cp_add_device *cp = cmd->param; in add_device_complete() local
7627 params = hci_conn_params_lookup(hdev, &cp->addr.bdaddr, in add_device_complete()
7628 le_addr_type(cp->addr.type)); in add_device_complete()
7630 device_added(cmd->sk, hdev, &cp->addr.bdaddr, cp->addr.type, in add_device_complete()
7631 cp->action); in add_device_complete()
7632 device_flags_changed(NULL, hdev, &cp->addr.bdaddr, in add_device_complete()
7633 cp->addr.type, hdev->conn_flags, in add_device_complete()
7638 mgmt_status(err), &cp->addr, sizeof(cp->addr)); in add_device_complete()
7651 struct mgmt_cp_add_device *cp = data; in add_device() local
7660 if (!bdaddr_type_is_valid(cp->addr.type) || in add_device()
7661 !bacmp(&cp->addr.bdaddr, BDADDR_ANY)) in add_device()
7664 &cp->addr, sizeof(cp->addr)); in add_device()
7666 if (cp->action != 0x00 && cp->action != 0x01 && cp->action != 0x02) in add_device()
7669 &cp->addr, sizeof(cp->addr)); in add_device()
7673 if (cp->addr.type == BDADDR_BREDR) { in add_device()
7675 if (cp->action != 0x01) { in add_device()
7679 &cp->addr, sizeof(cp->addr)); in add_device()
7684 &cp->addr.bdaddr, in add_device()
7685 cp->addr.type, 0); in add_device()
7694 addr_type = le_addr_type(cp->addr.type); in add_device()
7696 if (cp->action == 0x02) in add_device()
7698 else if (cp->action == 0x01) in add_device()
7708 if (!hci_is_identity_address(&cp->addr.bdaddr, addr_type)) { in add_device()
7711 &cp->addr, sizeof(cp->addr)); in add_device()
7718 if (hci_conn_params_set(hdev, &cp->addr.bdaddr, addr_type, in add_device()
7721 MGMT_STATUS_FAILED, &cp->addr, in add_device()
7722 sizeof(cp->addr)); in add_device()
7725 params = hci_conn_params_lookup(hdev, &cp->addr.bdaddr, in add_device()
7741 MGMT_STATUS_FAILED, &cp->addr, in add_device()
7742 sizeof(cp->addr)); in add_device()
7749 device_added(sk, hdev, &cp->addr.bdaddr, cp->addr.type, cp->action); in add_device()
7751 device_flags_changed(NULL, hdev, &cp->addr.bdaddr, cp->addr.type, in add_device()
7755 MGMT_STATUS_SUCCESS, &cp->addr, in add_device()
7756 sizeof(cp->addr)); in add_device()
7782 struct mgmt_cp_remove_device *cp = data; in remove_device() local
7789 if (bacmp(&cp->addr.bdaddr, BDADDR_ANY)) { in remove_device()
7793 if (!bdaddr_type_is_valid(cp->addr.type)) { in remove_device()
7797 &cp->addr, sizeof(cp->addr)); in remove_device()
7801 if (cp->addr.type == BDADDR_BREDR) { in remove_device()
7803 &cp->addr.bdaddr, in remove_device()
7804 cp->addr.type); in remove_device()
7809 &cp->addr, in remove_device()
7810 sizeof(cp->addr)); in remove_device()
7816 device_removed(sk, hdev, &cp->addr.bdaddr, in remove_device()
7817 cp->addr.type); in remove_device()
7821 addr_type = le_addr_type(cp->addr.type); in remove_device()
7828 if (!hci_is_identity_address(&cp->addr.bdaddr, addr_type)) { in remove_device()
7832 &cp->addr, sizeof(cp->addr)); in remove_device()
7836 params = hci_conn_params_lookup(hdev, &cp->addr.bdaddr, in remove_device()
7842 &cp->addr, sizeof(cp->addr)); in remove_device()
7851 &cp->addr, sizeof(cp->addr)); in remove_device()
7857 device_removed(sk, hdev, &cp->addr.bdaddr, cp->addr.type); in remove_device()
7862 if (cp->addr.type) { in remove_device()
7866 &cp->addr, sizeof(cp->addr)); in remove_device()
7896 MGMT_STATUS_SUCCESS, &cp->addr, in remove_device()
7897 sizeof(cp->addr)); in remove_device()
7918 struct mgmt_cp_load_conn_param *cp = data; in load_conn_param() local
7919 const u16 max_param_count = ((U16_MAX - sizeof(*cp)) / in load_conn_param()
7928 param_count = __le16_to_cpu(cp->param_count); in load_conn_param()
7936 expected_len = struct_size(cp, params, param_count); in load_conn_param()
7952 struct mgmt_conn_param *param = &cp->params[i]; in load_conn_param()
8037 struct mgmt_cp_set_external_config *cp = data; in set_external_config() local
8047 if (cp->config != 0x00 && cp->config != 0x01) in set_external_config()
8057 if (cp->config) in set_external_config()
8093 struct mgmt_cp_set_public_address *cp = data; in set_public_address() local
8103 if (!bacmp(&cp->bdaddr, BDADDR_ANY)) in set_public_address()
8113 changed = !!bacmp(&hdev->public_addr, &cp->bdaddr); in set_public_address()
8114 bacpy(&hdev->public_addr, &cp->bdaddr); in set_public_address()
8263 struct mgmt_cp_read_local_oob_ext_data *cp) in read_local_ssp_oob_req() argument
8269 cp, sizeof(*cp)); in read_local_ssp_oob_req()
8287 struct mgmt_cp_read_local_oob_ext_data *cp = data; in read_local_oob_ext_data() local
8297 switch (cp->type) { in read_local_oob_ext_data()
8338 switch (cp->type) { in read_local_oob_ext_data()
8341 err = read_local_ssp_oob_req(hdev, sk, cp); in read_local_oob_ext_data()
8427 rp->type = cp->type; in read_local_oob_ext_data()
8691 struct mgmt_cp_add_advertising *cp = cmd->param; in add_advertising_complete() local
8696 rp.instance = cp->instance; in add_advertising_complete()
8705 add_adv_complete(hdev, cmd->sk, cp->instance, err); in add_advertising_complete()
8713 struct mgmt_cp_add_advertising *cp = cmd->param; in add_advertising_sync() local
8715 return hci_schedule_adv_instance_sync(hdev, cp->instance, true); in add_advertising_sync()
8721 struct mgmt_cp_add_advertising *cp = data; in add_advertising() local
8739 if (cp->instance < 1 || cp->instance > hdev->le_num_of_adv_sets) in add_advertising()
8743 if (data_len != sizeof(*cp) + cp->adv_data_len + cp->scan_rsp_len) in add_advertising()
8747 flags = __le32_to_cpu(cp->flags); in add_advertising()
8748 timeout = __le16_to_cpu(cp->timeout); in add_advertising()
8749 duration = __le16_to_cpu(cp->duration); in add_advertising()
8769 if (!tlv_data_is_valid(hdev, flags, cp->data, cp->adv_data_len, true) || in add_advertising()
8770 !tlv_data_is_valid(hdev, flags, cp->data + cp->adv_data_len, in add_advertising()
8771 cp->scan_rsp_len, false)) { in add_advertising()
8779 adv = hci_add_adv_instance(hdev, cp->instance, flags, in add_advertising()
8780 cp->adv_data_len, cp->data, in add_advertising()
8781 cp->scan_rsp_len, in add_advertising()
8782 cp->data + cp->adv_data_len, in add_advertising()
8797 mgmt_advertising_added(sk, hdev, cp->instance); in add_advertising()
8799 if (hdev->cur_adv_instance == cp->instance) { in add_advertising()
8807 next_instance = hci_get_next_instance(hdev, cp->instance); in add_advertising()
8814 schedule_instance = cp->instance; in add_advertising()
8824 rp.instance = cp->instance; in add_advertising()
8840 cp->instance = schedule_instance; in add_advertising()
8857 struct mgmt_cp_add_ext_adv_params *cp = cmd->param; in add_ext_adv_params_complete() local
8866 adv = hci_find_adv_instance(hdev, cp->instance); in add_ext_adv_params_complete()
8870 rp.instance = cp->instance; in add_ext_adv_params_complete()
8876 flags = __le32_to_cpu(cp->flags); in add_ext_adv_params_complete()
8886 mgmt_advertising_removed(cmd->sk, hdev, cp->instance); in add_ext_adv_params_complete()
8888 hci_remove_adv_instance(hdev, cp->instance); in add_ext_adv_params_complete()
8906 struct mgmt_cp_add_ext_adv_params *cp = cmd->param; in add_ext_adv_params_sync() local
8908 return hci_setup_ext_adv_instance_sync(hdev, cp->instance); in add_ext_adv_params_sync()
8914 struct mgmt_cp_add_ext_adv_params *cp = data; in add_ext_adv_params() local
8931 if (cp->instance < 1 || cp->instance > hdev->le_num_of_adv_sets) in add_ext_adv_params()
8945 flags = __le32_to_cpu(cp->flags); in add_ext_adv_params()
8968 __le16_to_cpu(cp->timeout) : 0; in add_ext_adv_params()
8971 __le16_to_cpu(cp->duration) : in add_ext_adv_params()
8975 __le32_to_cpu(cp->min_interval) : in add_ext_adv_params()
8979 __le32_to_cpu(cp->max_interval) : in add_ext_adv_params()
8983 cp->tx_power : in add_ext_adv_params()
8987 adv = hci_add_adv_instance(hdev, cp->instance, flags, 0, NULL, 0, NULL, in add_ext_adv_params()
9003 hci_remove_adv_instance(hdev, cp->instance); in add_ext_adv_params()
9012 rp.instance = cp->instance; in add_ext_adv_params()
9030 struct mgmt_cp_add_ext_adv_data *cp = cmd->param; in add_ext_adv_data_complete() local
9033 add_adv_complete(hdev, cmd->sk, cp->instance, err); in add_ext_adv_data_complete()
9037 rp.instance = cp->instance; in add_ext_adv_data_complete()
9052 struct mgmt_cp_add_ext_adv_data *cp = cmd->param; in add_ext_adv_data_sync() local
9056 err = hci_update_adv_data_sync(hdev, cp->instance); in add_ext_adv_data_sync()
9060 err = hci_update_scan_rsp_data_sync(hdev, cp->instance); in add_ext_adv_data_sync()
9064 return hci_enable_ext_advertising_sync(hdev, cp->instance); in add_ext_adv_data_sync()
9067 return hci_schedule_adv_instance_sync(hdev, cp->instance, true); in add_ext_adv_data_sync()
9073 struct mgmt_cp_add_ext_adv_data *cp = data; in add_ext_adv_data() local
9085 adv_instance = hci_find_adv_instance(hdev, cp->instance); in add_ext_adv_data()
9107 if (!tlv_data_is_valid(hdev, adv_instance->flags, cp->data, in add_ext_adv_data()
9108 cp->adv_data_len, true) || in add_ext_adv_data()
9109 !tlv_data_is_valid(hdev, adv_instance->flags, cp->data + in add_ext_adv_data()
9110 cp->adv_data_len, cp->scan_rsp_len, false)) { in add_ext_adv_data()
9117 hci_set_adv_instance_data(hdev, cp->instance, cp->adv_data_len, in add_ext_adv_data()
9118 cp->data, cp->scan_rsp_len, in add_ext_adv_data()
9119 cp->data + cp->adv_data_len); in add_ext_adv_data()
9122 if (hdev->cur_adv_instance == cp->instance) { in add_ext_adv_data()
9131 next_instance = hci_get_next_instance(hdev, cp->instance); in add_ext_adv_data()
9138 schedule_instance = cp->instance; in add_ext_adv_data()
9147 mgmt_advertising_added(sk, hdev, cp->instance); in add_ext_adv_data()
9150 rp.instance = cp->instance; in add_ext_adv_data()
9176 mgmt_advertising_added(sk, hdev, cp->instance); in add_ext_adv_data()
9181 hci_remove_adv_instance(hdev, cp->instance); in add_ext_adv_data()
9193 struct mgmt_cp_remove_advertising *cp = cmd->param; in remove_advertising_complete() local
9199 rp.instance = cp->instance; in remove_advertising_complete()
9214 struct mgmt_cp_remove_advertising *cp = cmd->param; in remove_advertising_sync() local
9217 err = hci_remove_advertising_sync(hdev, cmd->sk, cp->instance, true); in remove_advertising_sync()
9230 struct mgmt_cp_remove_advertising *cp = data; in remove_advertising() local
9238 if (cp->instance && !hci_find_adv_instance(hdev, cp->instance)) { in remove_advertising()
9278 struct mgmt_cp_get_adv_size_info *cp = data; in get_adv_size_info() local
9288 if (cp->instance < 1 || cp->instance > hdev->le_num_of_adv_sets) in get_adv_size_info()
9292 flags = __le32_to_cpu(cp->flags); in get_adv_size_info()
9302 rp.instance = cp->instance; in get_adv_size_info()
9303 rp.flags = cp->flags; in get_adv_size_info()
9782 struct mgmt_cp_unpair_device *cp = cmd->param; in unpair_device_rsp() local
9784 device_unpaired(hdev, &cp->addr.bdaddr, cp->addr.type, cmd->sk); in unpair_device_rsp()
9792 struct mgmt_mode *cp; in mgmt_powering_down() local
9801 cp = cmd->param; in mgmt_powering_down()
9802 if (!cp->val) in mgmt_powering_down()
9841 struct mgmt_cp_disconnect *cp; in mgmt_disconnect_failed() local
9851 cp = cmd->param; in mgmt_disconnect_failed()
9853 if (bacmp(bdaddr, &cp->addr.bdaddr)) in mgmt_disconnect_failed()
9856 if (cp->addr.type != bdaddr_type) in mgmt_disconnect_failed()