• Home
  • Raw
  • Download

Lines Matching defs:snd_sof_dsp_ops

144 struct snd_sof_dsp_ops {  struct
147 int (*probe)(struct snd_sof_dev *sof_dev); /* mandatory */
148 int (*remove)(struct snd_sof_dev *sof_dev); /* optional */
149 int (*shutdown)(struct snd_sof_dev *sof_dev); /* optional */
152 int (*run)(struct snd_sof_dev *sof_dev); /* mandatory */
153 int (*stall)(struct snd_sof_dev *sof_dev, unsigned int core_mask); /* optional */
154 int (*reset)(struct snd_sof_dev *sof_dev); /* optional */
155 int (*core_get)(struct snd_sof_dev *sof_dev, int core); /* optional */
156 int (*core_put)(struct snd_sof_dev *sof_dev, int core); /* optional */
163 void (*write)(struct snd_sof_dev *sof_dev, void __iomem *addr,
165 u32 (*read)(struct snd_sof_dev *sof_dev,
167 void (*write64)(struct snd_sof_dev *sof_dev, void __iomem *addr,
169 u64 (*read64)(struct snd_sof_dev *sof_dev,
173 int (*block_read)(struct snd_sof_dev *sof_dev,
176 int (*block_write)(struct snd_sof_dev *sof_dev,
181 void (*mailbox_read)(struct snd_sof_dev *sof_dev,
184 void (*mailbox_write)(struct snd_sof_dev *sof_dev,
189 irqreturn_t (*irq_handler)(int irq, void *context); /* optional */
190 irqreturn_t (*irq_thread)(int irq, void *context); /* optional */
193 int (*send_msg)(struct snd_sof_dev *sof_dev,
197 int (*load_firmware)(struct snd_sof_dev *sof_dev); /* mandatory */
198 int (*load_module)(struct snd_sof_dev *sof_dev,
202 int (*pcm_open)(struct snd_sof_dev *sdev,
205 int (*pcm_close)(struct snd_sof_dev *sdev,
209 int (*pcm_hw_params)(struct snd_sof_dev *sdev,
215 int (*pcm_hw_free)(struct snd_sof_dev *sdev,
219 int (*pcm_trigger)(struct snd_sof_dev *sdev,
224 snd_pcm_uframes_t (*pcm_pointer)(struct snd_sof_dev *sdev,
228 int (*pcm_ack)(struct snd_sof_dev *sdev, struct snd_pcm_substream *substream); /* optional */
231 int (*ipc_msg_data)(struct snd_sof_dev *sdev,
236 int (*set_stream_data_offset)(struct snd_sof_dev *sdev,
241 int (*pre_fw_run)(struct snd_sof_dev *sof_dev); /* optional */
242 int (*post_fw_run)(struct snd_sof_dev *sof_dev); /* optional */
245 int (*parse_platform_ext_manifest)(struct snd_sof_dev *sof_dev,
249 int (*suspend)(struct snd_sof_dev *sof_dev,
251 int (*resume)(struct snd_sof_dev *sof_dev); /* optional */
252 int (*runtime_suspend)(struct snd_sof_dev *sof_dev); /* optional */
253 int (*runtime_resume)(struct snd_sof_dev *sof_dev); /* optional */
254 int (*runtime_idle)(struct snd_sof_dev *sof_dev); /* optional */
255 int (*set_hw_params_upon_resume)(struct snd_sof_dev *sdev); /* optional */
256 int (*set_power_state)(struct snd_sof_dev *sdev,
260 int (*set_clk)(struct snd_sof_dev *sof_dev, u32 freq); /* optional */
263 const struct snd_sof_debugfs_map *debug_map; /* optional */
264 int debug_map_count; /* optional */
265 void (*dbg_dump)(struct snd_sof_dev *sof_dev,
267 void (*ipc_dump)(struct snd_sof_dev *sof_dev); /* optional */
268 int (*debugfs_add_region_item)(struct snd_sof_dev *sdev,
274 int (*trace_init)(struct snd_sof_dev *sdev,
277 int (*trace_release)(struct snd_sof_dev *sdev); /* optional */
278 int (*trace_trigger)(struct snd_sof_dev *sdev,
282 int (*get_bar_index)(struct snd_sof_dev *sdev,
284 int (*get_mailbox_offset)(struct snd_sof_dev *sdev);/* mandatory for common loader code */
285 int (*get_window_offset)(struct snd_sof_dev *sdev,
289 int (*machine_register)(struct snd_sof_dev *sdev,
291 void (*machine_unregister)(struct snd_sof_dev *sdev,
293 struct snd_soc_acpi_mach * (*machine_select)(struct snd_sof_dev *sdev); /* optional */
294 void (*set_mach_params)(struct snd_soc_acpi_mach *mach,
298 int (*register_ipc_clients)(struct snd_sof_dev *sdev); /* optional */
299 void (*unregister_ipc_clients)(struct snd_sof_dev *sdev); /* optional */
302 struct snd_soc_dai_driver *drv;
303 int num_drv;
306 u32 hw_info;
308 const struct dsp_arch_ops *dsp_arch_ops;