#ifndef __SND_SOC_INTEL_CATPT_MSG_H
#define __SND_SOC_INTEL_CATPT_MSG_H
struct catpt_dev;
enum catpt_reply_status { … };
enum catpt_global_msg_type { … };
catpt_global_msg __packed;
#define CATPT_MSG(hdr) …
#define CATPT_GLOBAL_MSG(msg_type) …
#define BUILD_HASH_SIZE …
struct catpt_fw_version { … } __packed;
int catpt_ipc_get_fw_version(struct catpt_dev *cdev,
struct catpt_fw_version *version);
enum catpt_pin_id { … };
enum catpt_path_id { … };
enum catpt_stream_type { … };
enum catpt_format_id { … };
enum catpt_channel_index { … };
enum catpt_channel_config { … };
enum catpt_interleaving_style { … };
struct catpt_audio_format { … } __packed;
struct catpt_ring_info { … } __packed;
#define CATPT_MODULE_COUNT …
enum catpt_module_id { … };
struct catpt_module_entry { … } __packed;
struct catpt_module_map { … } __packed;
struct catpt_memory_info { … } __packed;
#define CATPT_CHANNELS_MAX …
#define CATPT_ALL_CHANNELS_MASK …
struct catpt_stream_info { … } __packed;
int catpt_ipc_alloc_stream(struct catpt_dev *cdev,
enum catpt_path_id path_id,
enum catpt_stream_type type,
struct catpt_audio_format *afmt,
struct catpt_ring_info *rinfo,
u8 num_modules,
struct catpt_module_entry *modules,
struct resource *persistent,
struct resource *scratch,
struct catpt_stream_info *sinfo);
int catpt_ipc_free_stream(struct catpt_dev *cdev, u8 stream_hw_id);
enum catpt_ssp_iface { … };
enum catpt_mclk_frequency { … };
enum catpt_ssp_mode { … };
struct catpt_ssp_device_format { … } __packed;
int catpt_ipc_set_device_format(struct catpt_dev *cdev,
struct catpt_ssp_device_format *devfmt);
enum catpt_dx_state { … };
enum catpt_dx_type { … };
struct catpt_save_meminfo { … } __packed;
#define SAVE_MEMINFO_MAX …
struct catpt_dx_context { … } __packed;
int catpt_ipc_enter_dxstate(struct catpt_dev *cdev, enum catpt_dx_state state,
struct catpt_dx_context *context);
struct catpt_mixer_stream_info { … } __packed;
int catpt_ipc_get_mixer_stream_info(struct catpt_dev *cdev,
struct catpt_mixer_stream_info *info);
enum catpt_stream_msg_type { … };
enum catpt_stage_action { … };
catpt_stream_msg __packed;
#define CATPT_STREAM_MSG(msg_type) …
#define CATPT_STAGE_MSG(msg_type) …
int catpt_ipc_reset_stream(struct catpt_dev *cdev, u8 stream_hw_id);
int catpt_ipc_pause_stream(struct catpt_dev *cdev, u8 stream_hw_id);
int catpt_ipc_resume_stream(struct catpt_dev *cdev, u8 stream_hw_id);
enum catpt_audio_curve_type { … };
int catpt_ipc_set_volume(struct catpt_dev *cdev, u8 stream_hw_id,
u32 channel, u32 volume,
u32 curve_duration,
enum catpt_audio_curve_type curve_type);
int catpt_ipc_set_write_pos(struct catpt_dev *cdev, u8 stream_hw_id,
u32 pos, bool eob, bool ll);
int catpt_ipc_mute_loopback(struct catpt_dev *cdev, u8 stream_hw_id, bool mute);
enum catpt_notify_reason { … };
catpt_notify_msg __packed;
#define FW_INFO_SIZE_MAX …
struct catpt_fw_ready { … } __packed;
struct catpt_notify_position { … } __packed;
enum catpt_glitch_type { … };
struct catpt_notify_glitch { … } __packed;
#endif