Lines Matching refs:snd_sof_dev
106 struct snd_sof_dev;
122 int (*probe)(struct snd_sof_dev *sof_dev); /* mandatory */
123 int (*remove)(struct snd_sof_dev *sof_dev); /* optional */
124 int (*shutdown)(struct snd_sof_dev *sof_dev); /* optional */
127 int (*run)(struct snd_sof_dev *sof_dev); /* mandatory */
128 int (*stall)(struct snd_sof_dev *sof_dev, unsigned int core_mask); /* optional */
129 int (*reset)(struct snd_sof_dev *sof_dev); /* optional */
130 int (*core_power_up)(struct snd_sof_dev *sof_dev,
132 int (*core_power_down)(struct snd_sof_dev *sof_dev,
140 void (*write)(struct snd_sof_dev *sof_dev, void __iomem *addr,
142 u32 (*read)(struct snd_sof_dev *sof_dev,
144 void (*write64)(struct snd_sof_dev *sof_dev, void __iomem *addr,
146 u64 (*read64)(struct snd_sof_dev *sof_dev,
150 int (*block_read)(struct snd_sof_dev *sof_dev,
153 int (*block_write)(struct snd_sof_dev *sof_dev,
158 void (*mailbox_read)(struct snd_sof_dev *sof_dev,
161 void (*mailbox_write)(struct snd_sof_dev *sof_dev,
170 int (*send_msg)(struct snd_sof_dev *sof_dev,
174 int (*load_firmware)(struct snd_sof_dev *sof_dev); /* mandatory */
175 int (*load_module)(struct snd_sof_dev *sof_dev,
181 int (*fw_ready)(struct snd_sof_dev *sdev, u32 msg_id); /* mandatory */
184 int (*pcm_open)(struct snd_sof_dev *sdev,
187 int (*pcm_close)(struct snd_sof_dev *sdev,
191 int (*pcm_hw_params)(struct snd_sof_dev *sdev,
197 int (*pcm_hw_free)(struct snd_sof_dev *sdev,
201 int (*pcm_trigger)(struct snd_sof_dev *sdev,
206 snd_pcm_uframes_t (*pcm_pointer)(struct snd_sof_dev *sdev,
211 int (*probe_assign)(struct snd_sof_dev *sdev,
214 int (*probe_free)(struct snd_sof_dev *sdev,
217 int (*probe_set_params)(struct snd_sof_dev *sdev,
221 int (*probe_trigger)(struct snd_sof_dev *sdev,
224 int (*probe_pointer)(struct snd_sof_dev *sdev,
231 int (*ipc_msg_data)(struct snd_sof_dev *sdev,
236 int (*ipc_pcm_params)(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 */
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,
276 int (*trace_release)(struct snd_sof_dev *sdev); /* optional */
277 int (*trace_trigger)(struct snd_sof_dev *sdev,
281 int (*get_bar_index)(struct snd_sof_dev *sdev,
283 int (*get_mailbox_offset)(struct snd_sof_dev *sdev);/* mandatory for common loader code */
284 int (*get_window_offset)(struct snd_sof_dev *sdev,
288 int (*machine_register)(struct snd_sof_dev *sdev,
290 void (*machine_unregister)(struct snd_sof_dev *sdev,
292 void (*machine_select)(struct snd_sof_dev *sdev); /* optional */
294 struct snd_sof_dev *sdev); /* optional */
308 void (*dsp_oops)(struct snd_sof_dev *sdev, void *oops);
309 void (*dsp_stack)(struct snd_sof_dev *sdev, void *oops,
329 struct snd_sof_dev *sdev;
382 struct snd_sof_dev { struct
493 int snd_sof_dsp_power_down_notify(struct snd_sof_dev *sdev); argument
497 void snd_sof_new_platform_drv(struct snd_sof_dev *sdev);
506 int snd_sof_load_firmware_raw(struct snd_sof_dev *sdev);
507 int snd_sof_load_firmware_memcpy(struct snd_sof_dev *sdev);
508 int snd_sof_run_firmware(struct snd_sof_dev *sdev);
509 int snd_sof_parse_module_memcpy(struct snd_sof_dev *sdev,
511 void snd_sof_fw_unload(struct snd_sof_dev *sdev);
516 struct snd_sof_ipc *snd_sof_ipc_init(struct snd_sof_dev *sdev);
517 void snd_sof_ipc_free(struct snd_sof_dev *sdev);
518 void snd_sof_ipc_reply(struct snd_sof_dev *sdev, u32 msg_id);
519 void snd_sof_ipc_msgs_rx(struct snd_sof_dev *sdev);
520 int snd_sof_ipc_stream_pcm_params(struct snd_sof_dev *sdev,
522 int snd_sof_ipc_valid(struct snd_sof_dev *sdev);
529 int sof_ipc_init_msg_memory(struct snd_sof_dev *sdev);
534 int snd_sof_init_trace(struct snd_sof_dev *sdev);
535 void snd_sof_release_trace(struct snd_sof_dev *sdev);
536 void snd_sof_free_trace(struct snd_sof_dev *sdev);
537 int snd_sof_dbg_init(struct snd_sof_dev *sdev);
538 void snd_sof_free_debug(struct snd_sof_dev *sdev);
539 int snd_sof_debugfs_buf_item(struct snd_sof_dev *sdev,
542 int snd_sof_trace_update_pos(struct snd_sof_dev *sdev,
544 void snd_sof_trace_notify_for_error(struct snd_sof_dev *sdev);
545 void snd_sof_get_status(struct snd_sof_dev *sdev, u32 panic_code,
549 int snd_sof_init_trace_ipc(struct snd_sof_dev *sdev);
550 void snd_sof_handle_fw_exception(struct snd_sof_dev *sdev);
551 int snd_sof_dbg_memory_info_init(struct snd_sof_dev *sdev);
552 int snd_sof_debugfs_add_region_item_iomem(struct snd_sof_dev *sdev,
559 static inline void sof_stack(struct snd_sof_dev *sdev, void *oops, u32 *stack, in sof_stack()
565 static inline void sof_oops(struct snd_sof_dev *sdev, void *oops) in sof_oops()
576 static inline void sof_set_fw_state(struct snd_sof_dev *sdev, in sof_set_fw_state()
589 void sof_io_write(struct snd_sof_dev *sdev, void __iomem *addr, u32 value);
590 void sof_io_write64(struct snd_sof_dev *sdev, void __iomem *addr, u64 value);
591 u32 sof_io_read(struct snd_sof_dev *sdev, void __iomem *addr);
592 u64 sof_io_read64(struct snd_sof_dev *sdev, void __iomem *addr);
593 void sof_mailbox_write(struct snd_sof_dev *sdev, u32 offset,
595 void sof_mailbox_read(struct snd_sof_dev *sdev, u32 offset,
597 int sof_block_write(struct snd_sof_dev *sdev, enum snd_sof_fw_blk_type blk_type,
599 int sof_block_read(struct snd_sof_dev *sdev, enum snd_sof_fw_blk_type blk_type,
602 int sof_fw_ready(struct snd_sof_dev *sdev, u32 msg_id);
604 int sof_ipc_msg_data(struct snd_sof_dev *sdev,
607 int sof_ipc_pcm_params(struct snd_sof_dev *sdev,
611 int sof_stream_pcm_open(struct snd_sof_dev *sdev,
613 int sof_stream_pcm_close(struct snd_sof_dev *sdev,
616 int sof_machine_check(struct snd_sof_dev *sdev);