You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

85 lines
2.3 KiB

/******************************************************************************
*
* Copyright(c) 2020 Realtek Corporation.
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of version 2 of the GNU General Public License as
* published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
* more details.
*
*****************************************************************************/
#ifndef _PHL_SOUND_CMD_H_
#define _PHL_SOUND_CMD_H_
#ifdef CONFIG_PHL_CMD_BF
enum snd_cmd_disp_ctrl {
SND_CMD_DISP_CTRL_BFEE = 0,
SND_CMD_DISP_CTRL_BFER,
SND_CMD_DISP_CTRL_MAX
};
enum snd_cmd_set_info_opcode {
SND_CMD_OP_NONE = 0,
SND_CMD_OP_SET_AID = 1,
SND_CMD_OP_MAX = 2,
};
enum snd_cmd_bfer_event {
SND_CMD_BFER_PRECFG = 0,
SND_CMD_BFER_MAC_CTRL_LOCK = 1,
SND_CMD_BFER_SOUND = 2,
SND_CMD_BFER_MAC_CTRL_FREE = 3,
SND_CMD_BFER_POSTCFG = 4,
SND_CMD_BFER_LEAVE = 5,
SND_CMD_BFER_GROUPING = 6,
SND_CMD_BFER_CHECK_NEXT = 7,
SND_CMD_BFER_TERMINATE = 8,
SND_CMD_BFER_MAX
};
struct snd_cmd_bfer {
enum snd_cmd_bfer_event event;
struct rtw_wifi_role_t *wrole;
struct phl_snd_grp *snd_grp;
enum phl_mdl_ret_code cmd_sts;
};
struct snd_cmd_set_aid {
u16 aid;
enum phl_mdl_ret_code cmd_sts;
struct rtw_phl_stainfo_t *sta_info;
};
enum rtw_phl_status
rtw_phl_snd_cmd_set_aid(void *phl,
struct rtw_wifi_role_t *wrole,
struct rtw_phl_stainfo_t *sta,
u16 aid);
enum rtw_phl_status
phl_snd_cmd_ntfy_ps(struct phl_info_t *phl,
struct rtw_wifi_role_t *wrole,
bool enter);
enum rtw_phl_status phl_snd_cmd_register_module(struct phl_info_t *phl_info);
enum rtw_phl_status
phl_snd_cmd_sound_evt(void *phl,
struct rtw_wifi_role_t *wrole,
struct phl_snd_grp *snd_grp,
enum snd_cmd_bfer_event event);
void phl_snd_cmd_sound_cancel_msg(struct phl_info_t *phl_info);
#else
#define phl_snd_cmd_register_module(_p) RTW_PHL_STATUS_SUCCESS
#define phl_snd_cmd_sound_cancel_msg(_p)
#define phl_snd_cmd_sound_evt(_p, _w, _g, _e) RTW_PHL_STATUS_SUCCESS
#define phl_snd_cmd_ntfy_ps(_p, _w, _e) RTW_PHL_STATUS_SUCCESS
#endif /* end of CONFIG_PHL_CMD_BF */
#endif