Lines Matching refs:h2c_pkt

270 static void rtw_fw_send_h2c_packet(struct rtw_dev *rtwdev, u8 *h2c_pkt)  in rtw_fw_send_h2c_packet()  argument
276 FW_OFFLOAD_H2C_SET_SEQ_NUM(h2c_pkt, rtwdev->h2c.seq); in rtw_fw_send_h2c_packet()
277 ret = rtw_hci_write_data_h2c(rtwdev, h2c_pkt, H2C_PKT_SIZE); in rtw_fw_send_h2c_packet()
289 u8 h2c_pkt[H2C_PKT_SIZE] = {0}; in rtw_fw_send_general_info() local
295 rtw_h2c_pkt_set_header(h2c_pkt, H2C_PKT_GENERAL_INFO); in rtw_fw_send_general_info()
297 SET_PKT_H2C_TOTAL_LEN(h2c_pkt, total_size); in rtw_fw_send_general_info()
299 GENERAL_INFO_SET_FW_TX_BOUNDARY(h2c_pkt, in rtw_fw_send_general_info()
303 rtw_fw_send_h2c_packet(rtwdev, h2c_pkt); in rtw_fw_send_general_info()
311 u8 h2c_pkt[H2C_PKT_SIZE] = {0}; in rtw_fw_send_phydm_info() local
323 rtw_h2c_pkt_set_header(h2c_pkt, H2C_PKT_PHYDM_INFO); in rtw_fw_send_phydm_info()
325 SET_PKT_H2C_TOTAL_LEN(h2c_pkt, total_size); in rtw_fw_send_phydm_info()
326 PHYDM_INFO_SET_REF_TYPE(h2c_pkt, efuse->rfe_option); in rtw_fw_send_phydm_info()
327 PHYDM_INFO_SET_RF_TYPE(h2c_pkt, fw_rf_type); in rtw_fw_send_phydm_info()
328 PHYDM_INFO_SET_CUT_VER(h2c_pkt, hal->cut_version); in rtw_fw_send_phydm_info()
329 PHYDM_INFO_SET_RX_ANT_STATUS(h2c_pkt, hal->antenna_tx); in rtw_fw_send_phydm_info()
330 PHYDM_INFO_SET_TX_ANT_STATUS(h2c_pkt, hal->antenna_rx); in rtw_fw_send_phydm_info()
332 rtw_fw_send_h2c_packet(rtwdev, h2c_pkt); in rtw_fw_send_phydm_info()
337 u8 h2c_pkt[H2C_PKT_SIZE] = {0}; in rtw_fw_do_iqk() local
340 rtw_h2c_pkt_set_header(h2c_pkt, H2C_PKT_IQK); in rtw_fw_do_iqk()
341 SET_PKT_H2C_TOTAL_LEN(h2c_pkt, total_size); in rtw_fw_do_iqk()
342 IQK_SET_CLEAR(h2c_pkt, para->clear); in rtw_fw_do_iqk()
343 IQK_SET_SEGMENT_IQK(h2c_pkt, para->segment_iqk); in rtw_fw_do_iqk()
345 rtw_fw_send_h2c_packet(rtwdev, h2c_pkt); in rtw_fw_do_iqk()
351 u8 h2c_pkt[H2C_PKT_SIZE] = {0}; in rtw_fw_query_bt_info() local
353 SET_H2C_CMD_ID_CLASS(h2c_pkt, H2C_CMD_QUERY_BT_INFO); in rtw_fw_query_bt_info()
355 SET_QUERY_BT_INFO(h2c_pkt, true); in rtw_fw_query_bt_info()
357 rtw_fw_send_h2c_command(rtwdev, h2c_pkt); in rtw_fw_query_bt_info()
362 u8 h2c_pkt[H2C_PKT_SIZE] = {0}; in rtw_fw_wl_ch_info() local
364 SET_H2C_CMD_ID_CLASS(h2c_pkt, H2C_CMD_WL_CH_INFO); in rtw_fw_wl_ch_info()
366 SET_WL_CH_INFO_LINK(h2c_pkt, link); in rtw_fw_wl_ch_info()
367 SET_WL_CH_INFO_CHNL(h2c_pkt, ch); in rtw_fw_wl_ch_info()
368 SET_WL_CH_INFO_BW(h2c_pkt, bw); in rtw_fw_wl_ch_info()
370 rtw_fw_send_h2c_command(rtwdev, h2c_pkt); in rtw_fw_wl_ch_info()
376 u8 h2c_pkt[H2C_PKT_SIZE] = {0}; in rtw_fw_query_bt_mp_info() local
378 SET_H2C_CMD_ID_CLASS(h2c_pkt, H2C_CMD_QUERY_BT_MP_INFO); in rtw_fw_query_bt_mp_info()
380 SET_BT_MP_INFO_SEQ(h2c_pkt, req->seq); in rtw_fw_query_bt_mp_info()
381 SET_BT_MP_INFO_OP_CODE(h2c_pkt, req->op_code); in rtw_fw_query_bt_mp_info()
382 SET_BT_MP_INFO_PARA1(h2c_pkt, req->para1); in rtw_fw_query_bt_mp_info()
383 SET_BT_MP_INFO_PARA2(h2c_pkt, req->para2); in rtw_fw_query_bt_mp_info()
384 SET_BT_MP_INFO_PARA3(h2c_pkt, req->para3); in rtw_fw_query_bt_mp_info()
386 rtw_fw_send_h2c_command(rtwdev, h2c_pkt); in rtw_fw_query_bt_mp_info()
391 u8 h2c_pkt[H2C_PKT_SIZE] = {0}; in rtw_fw_force_bt_tx_power() local
394 SET_H2C_CMD_ID_CLASS(h2c_pkt, H2C_CMD_FORCE_BT_TX_POWER); in rtw_fw_force_bt_tx_power()
396 SET_BT_TX_POWER_INDEX(h2c_pkt, index); in rtw_fw_force_bt_tx_power()
398 rtw_fw_send_h2c_command(rtwdev, h2c_pkt); in rtw_fw_force_bt_tx_power()
403 u8 h2c_pkt[H2C_PKT_SIZE] = {0}; in rtw_fw_bt_ignore_wlan_action() local
405 SET_H2C_CMD_ID_CLASS(h2c_pkt, H2C_CMD_IGNORE_WLAN_ACTION); in rtw_fw_bt_ignore_wlan_action()
407 SET_IGNORE_WLAN_ACTION_EN(h2c_pkt, enable); in rtw_fw_bt_ignore_wlan_action()
409 rtw_fw_send_h2c_command(rtwdev, h2c_pkt); in rtw_fw_bt_ignore_wlan_action()
415 u8 h2c_pkt[H2C_PKT_SIZE] = {0}; in rtw_fw_coex_tdma_type() local
417 SET_H2C_CMD_ID_CLASS(h2c_pkt, H2C_CMD_COEX_TDMA_TYPE); in rtw_fw_coex_tdma_type()
419 SET_COEX_TDMA_TYPE_PARA1(h2c_pkt, para1); in rtw_fw_coex_tdma_type()
420 SET_COEX_TDMA_TYPE_PARA2(h2c_pkt, para2); in rtw_fw_coex_tdma_type()
421 SET_COEX_TDMA_TYPE_PARA3(h2c_pkt, para3); in rtw_fw_coex_tdma_type()
422 SET_COEX_TDMA_TYPE_PARA4(h2c_pkt, para4); in rtw_fw_coex_tdma_type()
423 SET_COEX_TDMA_TYPE_PARA5(h2c_pkt, para5); in rtw_fw_coex_tdma_type()
425 rtw_fw_send_h2c_command(rtwdev, h2c_pkt); in rtw_fw_coex_tdma_type()
430 u8 h2c_pkt[H2C_PKT_SIZE] = {0}; in rtw_fw_bt_wifi_control() local
432 SET_H2C_CMD_ID_CLASS(h2c_pkt, H2C_CMD_BT_WIFI_CONTROL); in rtw_fw_bt_wifi_control()
434 SET_BT_WIFI_CONTROL_OP_CODE(h2c_pkt, op_code); in rtw_fw_bt_wifi_control()
436 SET_BT_WIFI_CONTROL_DATA1(h2c_pkt, *data); in rtw_fw_bt_wifi_control()
437 SET_BT_WIFI_CONTROL_DATA2(h2c_pkt, *(data + 1)); in rtw_fw_bt_wifi_control()
438 SET_BT_WIFI_CONTROL_DATA3(h2c_pkt, *(data + 2)); in rtw_fw_bt_wifi_control()
439 SET_BT_WIFI_CONTROL_DATA4(h2c_pkt, *(data + 3)); in rtw_fw_bt_wifi_control()
440 SET_BT_WIFI_CONTROL_DATA5(h2c_pkt, *(data + 4)); in rtw_fw_bt_wifi_control()
442 rtw_fw_send_h2c_command(rtwdev, h2c_pkt); in rtw_fw_bt_wifi_control()
447 u8 h2c_pkt[H2C_PKT_SIZE] = {0}; in rtw_fw_send_rssi_info() local
451 SET_H2C_CMD_ID_CLASS(h2c_pkt, H2C_CMD_RSSI_MONITOR); in rtw_fw_send_rssi_info()
453 SET_RSSI_INFO_MACID(h2c_pkt, si->mac_id); in rtw_fw_send_rssi_info()
454 SET_RSSI_INFO_RSSI(h2c_pkt, rssi); in rtw_fw_send_rssi_info()
455 SET_RSSI_INFO_STBC(h2c_pkt, stbc_en); in rtw_fw_send_rssi_info()
457 rtw_fw_send_h2c_command(rtwdev, h2c_pkt); in rtw_fw_send_rssi_info()
462 u8 h2c_pkt[H2C_PKT_SIZE] = {0}; in rtw_fw_send_ra_info() local
466 SET_H2C_CMD_ID_CLASS(h2c_pkt, H2C_CMD_RA_INFO); in rtw_fw_send_ra_info()
468 SET_RA_INFO_MACID(h2c_pkt, si->mac_id); in rtw_fw_send_ra_info()
469 SET_RA_INFO_RATE_ID(h2c_pkt, si->rate_id); in rtw_fw_send_ra_info()
470 SET_RA_INFO_INIT_RA_LVL(h2c_pkt, si->init_ra_lv); in rtw_fw_send_ra_info()
471 SET_RA_INFO_SGI_EN(h2c_pkt, si->sgi_enable); in rtw_fw_send_ra_info()
472 SET_RA_INFO_BW_MODE(h2c_pkt, si->bw_mode); in rtw_fw_send_ra_info()
473 SET_RA_INFO_LDPC(h2c_pkt, !!si->ldpc_en); in rtw_fw_send_ra_info()
474 SET_RA_INFO_NO_UPDATE(h2c_pkt, no_update); in rtw_fw_send_ra_info()
475 SET_RA_INFO_VHT_EN(h2c_pkt, si->vht_enable); in rtw_fw_send_ra_info()
476 SET_RA_INFO_DIS_PT(h2c_pkt, disable_pt); in rtw_fw_send_ra_info()
477 SET_RA_INFO_RA_MASK0(h2c_pkt, (si->ra_mask & 0xff)); in rtw_fw_send_ra_info()
478 SET_RA_INFO_RA_MASK1(h2c_pkt, (si->ra_mask & 0xff00) >> 8); in rtw_fw_send_ra_info()
479 SET_RA_INFO_RA_MASK2(h2c_pkt, (si->ra_mask & 0xff0000) >> 16); in rtw_fw_send_ra_info()
480 SET_RA_INFO_RA_MASK3(h2c_pkt, (si->ra_mask & 0xff000000) >> 24); in rtw_fw_send_ra_info()
485 rtw_fw_send_h2c_command(rtwdev, h2c_pkt); in rtw_fw_send_ra_info()
490 u8 h2c_pkt[H2C_PKT_SIZE] = {0}; in rtw_fw_media_status_report() local
492 SET_H2C_CMD_ID_CLASS(h2c_pkt, H2C_CMD_MEDIA_STATUS_RPT); in rtw_fw_media_status_report()
493 MEDIA_STATUS_RPT_SET_OP_MODE(h2c_pkt, connect); in rtw_fw_media_status_report()
494 MEDIA_STATUS_RPT_SET_MACID(h2c_pkt, mac_id); in rtw_fw_media_status_report()
496 rtw_fw_send_h2c_command(rtwdev, h2c_pkt); in rtw_fw_media_status_report()
502 u8 h2c_pkt[H2C_PKT_SIZE] = {0}; in rtw_fw_set_pwr_mode() local
504 SET_H2C_CMD_ID_CLASS(h2c_pkt, H2C_CMD_SET_PWR_MODE); in rtw_fw_set_pwr_mode()
506 SET_PWR_MODE_SET_MODE(h2c_pkt, conf->mode); in rtw_fw_set_pwr_mode()
507 SET_PWR_MODE_SET_RLBM(h2c_pkt, conf->rlbm); in rtw_fw_set_pwr_mode()
508 SET_PWR_MODE_SET_SMART_PS(h2c_pkt, conf->smart_ps); in rtw_fw_set_pwr_mode()
509 SET_PWR_MODE_SET_AWAKE_INTERVAL(h2c_pkt, conf->awake_interval); in rtw_fw_set_pwr_mode()
510 SET_PWR_MODE_SET_PORT_ID(h2c_pkt, conf->port_id); in rtw_fw_set_pwr_mode()
511 SET_PWR_MODE_SET_PWR_STATE(h2c_pkt, conf->state); in rtw_fw_set_pwr_mode()
513 rtw_fw_send_h2c_command(rtwdev, h2c_pkt); in rtw_fw_set_pwr_mode()
518 u8 h2c_pkt[H2C_PKT_SIZE] = {0}; in rtw_fw_set_keep_alive_cmd() local
525 SET_H2C_CMD_ID_CLASS(h2c_pkt, H2C_CMD_KEEP_ALIVE); in rtw_fw_set_keep_alive_cmd()
526 SET_KEEP_ALIVE_ENABLE(h2c_pkt, enable); in rtw_fw_set_keep_alive_cmd()
527 SET_KEEP_ALIVE_ADOPT(h2c_pkt, mode.adopt); in rtw_fw_set_keep_alive_cmd()
528 SET_KEEP_ALIVE_PKT_TYPE(h2c_pkt, mode.pkt_type); in rtw_fw_set_keep_alive_cmd()
529 SET_KEEP_ALIVE_CHECK_PERIOD(h2c_pkt, mode.period); in rtw_fw_set_keep_alive_cmd()
531 rtw_fw_send_h2c_command(rtwdev, h2c_pkt); in rtw_fw_set_keep_alive_cmd()
537 u8 h2c_pkt[H2C_PKT_SIZE] = {0}; in rtw_fw_set_disconnect_decision_cmd() local
544 SET_H2C_CMD_ID_CLASS(h2c_pkt, H2C_CMD_DISCONNECT_DECISION); in rtw_fw_set_disconnect_decision_cmd()
547 SET_DISCONNECT_DECISION_ENABLE(h2c_pkt, enable); in rtw_fw_set_disconnect_decision_cmd()
548 SET_DISCONNECT_DECISION_ADOPT(h2c_pkt, mode.adopt); in rtw_fw_set_disconnect_decision_cmd()
549 SET_DISCONNECT_DECISION_CHECK_PERIOD(h2c_pkt, mode.period); in rtw_fw_set_disconnect_decision_cmd()
550 SET_DISCONNECT_DECISION_TRY_PKT_NUM(h2c_pkt, mode.retry_count); in rtw_fw_set_disconnect_decision_cmd()
553 rtw_fw_send_h2c_command(rtwdev, h2c_pkt); in rtw_fw_set_disconnect_decision_cmd()
559 u8 h2c_pkt[H2C_PKT_SIZE] = {0}; in rtw_fw_set_wowlan_ctrl_cmd() local
561 SET_H2C_CMD_ID_CLASS(h2c_pkt, H2C_CMD_WOWLAN); in rtw_fw_set_wowlan_ctrl_cmd()
563 SET_WOWLAN_FUNC_ENABLE(h2c_pkt, enable); in rtw_fw_set_wowlan_ctrl_cmd()
566 SET_WOWLAN_MAGIC_PKT_ENABLE(h2c_pkt, enable); in rtw_fw_set_wowlan_ctrl_cmd()
568 SET_WOWLAN_DEAUTH_WAKEUP_ENABLE(h2c_pkt, enable); in rtw_fw_set_wowlan_ctrl_cmd()
570 SET_WOWLAN_REKEY_WAKEUP_ENABLE(h2c_pkt, enable); in rtw_fw_set_wowlan_ctrl_cmd()
572 SET_WOWLAN_PATTERN_MATCH_ENABLE(h2c_pkt, enable); in rtw_fw_set_wowlan_ctrl_cmd()
575 rtw_fw_send_h2c_command(rtwdev, h2c_pkt); in rtw_fw_set_wowlan_ctrl_cmd()
582 u8 h2c_pkt[H2C_PKT_SIZE] = {0}; in rtw_fw_set_aoac_global_info_cmd() local
584 SET_H2C_CMD_ID_CLASS(h2c_pkt, H2C_CMD_AOAC_GLOBAL_INFO); in rtw_fw_set_aoac_global_info_cmd()
586 SET_AOAC_GLOBAL_INFO_PAIRWISE_ENC_ALG(h2c_pkt, pairwise_key_enc); in rtw_fw_set_aoac_global_info_cmd()
587 SET_AOAC_GLOBAL_INFO_GROUP_ENC_ALG(h2c_pkt, group_key_enc); in rtw_fw_set_aoac_global_info_cmd()
589 rtw_fw_send_h2c_command(rtwdev, h2c_pkt); in rtw_fw_set_aoac_global_info_cmd()
594 u8 h2c_pkt[H2C_PKT_SIZE] = {0}; in rtw_fw_set_remote_wake_ctrl_cmd() local
596 SET_H2C_CMD_ID_CLASS(h2c_pkt, H2C_CMD_REMOTE_WAKE_CTRL); in rtw_fw_set_remote_wake_ctrl_cmd()
598 SET_REMOTE_WAKECTRL_ENABLE(h2c_pkt, enable); in rtw_fw_set_remote_wake_ctrl_cmd()
601 SET_REMOTE_WAKE_CTRL_NLO_OFFLOAD_EN(h2c_pkt, enable); in rtw_fw_set_remote_wake_ctrl_cmd()
603 rtw_fw_send_h2c_command(rtwdev, h2c_pkt); in rtw_fw_set_remote_wake_ctrl_cmd()
622 u8 h2c_pkt[H2C_PKT_SIZE] = {0}; in rtw_fw_set_nlo_info() local
627 SET_H2C_CMD_ID_CLASS(h2c_pkt, H2C_CMD_NLO_INFO); in rtw_fw_set_nlo_info()
629 SET_NLO_FUN_EN(h2c_pkt, enable); in rtw_fw_set_nlo_info()
632 SET_NLO_PS_32K(h2c_pkt, enable); in rtw_fw_set_nlo_info()
633 SET_NLO_IGNORE_SECURITY(h2c_pkt, enable); in rtw_fw_set_nlo_info()
634 SET_NLO_LOC_NLO_INFO(h2c_pkt, loc_nlo); in rtw_fw_set_nlo_info()
637 rtw_fw_send_h2c_command(rtwdev, h2c_pkt); in rtw_fw_set_nlo_info()
643 u8 h2c_pkt[H2C_PKT_SIZE] = {0}; in rtw_fw_set_pg_info() local
649 SET_H2C_CMD_ID_CLASS(h2c_pkt, H2C_CMD_LPS_PG_INFO); in rtw_fw_set_pg_info()
651 LPS_PG_INFO_LOC(h2c_pkt, loc_pg); in rtw_fw_set_pg_info()
652 LPS_PG_DPK_LOC(h2c_pkt, loc_dpk); in rtw_fw_set_pg_info()
653 LPS_PG_SEC_CAM_EN(h2c_pkt, conf->sec_cam_backup); in rtw_fw_set_pg_info()
654 LPS_PG_PATTERN_CAM_EN(h2c_pkt, conf->pattern_cam_backup); in rtw_fw_set_pg_info()
656 rtw_fw_send_h2c_command(rtwdev, h2c_pkt); in rtw_fw_set_pg_info()
695 u8 h2c_pkt[H2C_PKT_SIZE] = {0}; in rtw_send_rsvd_page_h2c() local
698 SET_H2C_CMD_ID_CLASS(h2c_pkt, H2C_CMD_RSVD_PAGE); in rtw_send_rsvd_page_h2c()
701 *(h2c_pkt + 1) = location; in rtw_send_rsvd_page_h2c()
705 *(h2c_pkt + 2) = location; in rtw_send_rsvd_page_h2c()
709 *(h2c_pkt + 3) = location; in rtw_send_rsvd_page_h2c()
713 *(h2c_pkt + 4) = location; in rtw_send_rsvd_page_h2c()
716 rtw_fw_send_h2c_command(rtwdev, h2c_pkt); in rtw_send_rsvd_page_h2c()
1511 u8 h2c_pkt[H2C_PKT_SIZE] = {0}; in __rtw_fw_update_pkt() local
1514 rtw_h2c_pkt_set_header(h2c_pkt, H2C_PKT_UPDATE_PKT); in __rtw_fw_update_pkt()
1516 SET_PKT_H2C_TOTAL_LEN(h2c_pkt, total_size); in __rtw_fw_update_pkt()
1517 UPDATE_PKT_SET_PKT_ID(h2c_pkt, pkt_id); in __rtw_fw_update_pkt()
1518 UPDATE_PKT_SET_LOCATION(h2c_pkt, location); in __rtw_fw_update_pkt()
1521 UPDATE_PKT_SET_SIZE(h2c_pkt, size); in __rtw_fw_update_pkt()
1523 rtw_fw_send_h2c_packet(rtwdev, h2c_pkt); in __rtw_fw_update_pkt()
1550 u8 h2c_pkt[H2C_PKT_SIZE] = {0}; in rtw_fw_channel_switch() local
1564 rtw_h2c_pkt_set_header(h2c_pkt, H2C_PKT_CH_SWITCH); in rtw_fw_channel_switch()
1565 SET_PKT_H2C_TOTAL_LEN(h2c_pkt, total_size); in rtw_fw_channel_switch()
1567 CH_SWITCH_SET_START(h2c_pkt, enable); in rtw_fw_channel_switch()
1568 CH_SWITCH_SET_DEST_CH_EN(h2c_pkt, cs_option.dest_ch_en); in rtw_fw_channel_switch()
1569 CH_SWITCH_SET_DEST_CH(h2c_pkt, cs_option.dest_ch); in rtw_fw_channel_switch()
1570 CH_SWITCH_SET_NORMAL_PERIOD(h2c_pkt, cs_option.normal_period); in rtw_fw_channel_switch()
1571 CH_SWITCH_SET_NORMAL_PERIOD_SEL(h2c_pkt, cs_option.normal_period_sel); in rtw_fw_channel_switch()
1572 CH_SWITCH_SET_SLOW_PERIOD(h2c_pkt, cs_option.slow_period); in rtw_fw_channel_switch()
1573 CH_SWITCH_SET_SLOW_PERIOD_SEL(h2c_pkt, cs_option.slow_period_sel); in rtw_fw_channel_switch()
1574 CH_SWITCH_SET_NORMAL_CYCLE(h2c_pkt, cs_option.normal_cycle); in rtw_fw_channel_switch()
1575 CH_SWITCH_SET_PERIODIC_OPT(h2c_pkt, cs_option.periodic_option); in rtw_fw_channel_switch()
1577 CH_SWITCH_SET_CH_NUM(h2c_pkt, rtw_pno_req->channel_cnt); in rtw_fw_channel_switch()
1578 CH_SWITCH_SET_INFO_SIZE(h2c_pkt, rtw_pno_req->channel_cnt * 4); in rtw_fw_channel_switch()
1581 CH_SWITCH_SET_INFO_LOC(h2c_pkt, loc_ch_info); in rtw_fw_channel_switch()
1583 rtw_fw_send_h2c_packet(rtwdev, h2c_pkt); in rtw_fw_channel_switch()