Lines Matching refs:snd_sof_dev
545 static inline struct hdac_bus *sof_to_bus(struct snd_sof_dev *s) in sof_to_bus()
552 static inline struct hda_bus *sof_to_hbus(struct snd_sof_dev *s) in sof_to_hbus()
560 struct snd_sof_dev *sdev;
583 bool hda_is_chain_dma_supported(struct snd_sof_dev *sdev, u32 dai_type);
588 int hda_dsp_probe_early(struct snd_sof_dev *sdev);
589 int hda_dsp_probe(struct snd_sof_dev *sdev);
590 void hda_dsp_remove(struct snd_sof_dev *sdev);
591 void hda_dsp_remove_late(struct snd_sof_dev *sdev);
592 int hda_dsp_core_power_up(struct snd_sof_dev *sdev, unsigned int core_mask);
593 int hda_dsp_core_run(struct snd_sof_dev *sdev, unsigned int core_mask);
594 int hda_dsp_enable_core(struct snd_sof_dev *sdev, unsigned int core_mask);
595 int hda_dsp_core_reset_power_down(struct snd_sof_dev *sdev,
597 int hda_power_down_dsp(struct snd_sof_dev *sdev);
598 int hda_dsp_core_get(struct snd_sof_dev *sdev, int core);
599 void hda_dsp_ipc_int_enable(struct snd_sof_dev *sdev);
600 void hda_dsp_ipc_int_disable(struct snd_sof_dev *sdev);
601 bool hda_dsp_core_is_enabled(struct snd_sof_dev *sdev, unsigned int core_mask);
603 int hda_dsp_set_power_state_ipc3(struct snd_sof_dev *sdev,
605 int hda_dsp_set_power_state_ipc4(struct snd_sof_dev *sdev,
608 int hda_dsp_suspend(struct snd_sof_dev *sdev, u32 target_state);
609 int hda_dsp_resume(struct snd_sof_dev *sdev);
610 int hda_dsp_runtime_suspend(struct snd_sof_dev *sdev);
611 int hda_dsp_runtime_resume(struct snd_sof_dev *sdev);
612 int hda_dsp_runtime_idle(struct snd_sof_dev *sdev);
613 int hda_dsp_shutdown_dma_flush(struct snd_sof_dev *sdev);
614 int hda_dsp_shutdown(struct snd_sof_dev *sdev);
615 int hda_dsp_set_hw_params_upon_resume(struct snd_sof_dev *sdev);
616 void hda_dsp_dump(struct snd_sof_dev *sdev, u32 flags);
617 void hda_ipc4_dsp_dump(struct snd_sof_dev *sdev, u32 flags);
618 void hda_ipc_dump(struct snd_sof_dev *sdev);
619 void hda_ipc_irq_dump(struct snd_sof_dev *sdev);
621 int hda_dsp_disable_interrupts(struct snd_sof_dev *sdev);
622 bool hda_check_ipc_irq(struct snd_sof_dev *sdev);
623 u32 hda_get_interface_mask(struct snd_sof_dev *sdev);
628 u32 hda_dsp_get_mult_div(struct snd_sof_dev *sdev, int rate);
629 u32 hda_dsp_get_bits(struct snd_sof_dev *sdev, int sample_bits);
630 int hda_dsp_pcm_open(struct snd_sof_dev *sdev,
632 int hda_dsp_pcm_close(struct snd_sof_dev *sdev,
634 int hda_dsp_pcm_hw_params(struct snd_sof_dev *sdev,
638 int hda_dsp_stream_hw_free(struct snd_sof_dev *sdev,
640 int hda_dsp_pcm_trigger(struct snd_sof_dev *sdev,
642 snd_pcm_uframes_t hda_dsp_pcm_pointer(struct snd_sof_dev *sdev,
644 int hda_dsp_pcm_ack(struct snd_sof_dev *sdev, struct snd_pcm_substream *substream);
650 int hda_dsp_stream_init(struct snd_sof_dev *sdev);
651 void hda_dsp_stream_free(struct snd_sof_dev *sdev);
652 int hda_dsp_stream_hw_params(struct snd_sof_dev *sdev,
656 int hda_dsp_iccmax_stream_hw_params(struct snd_sof_dev *sdev,
660 int hda_dsp_stream_trigger(struct snd_sof_dev *sdev,
663 int hda_dsp_stream_setup_bdl(struct snd_sof_dev *sdev,
666 bool hda_dsp_check_ipc_irq(struct snd_sof_dev *sdev);
667 bool hda_dsp_check_stream_irq(struct snd_sof_dev *sdev);
671 u64 hda_dsp_get_stream_llp(struct snd_sof_dev *sdev,
674 u64 hda_dsp_get_stream_ldp(struct snd_sof_dev *sdev,
679 hda_dsp_stream_get(struct snd_sof_dev *sdev, int direction, u32 flags);
680 int hda_dsp_stream_put(struct snd_sof_dev *sdev, int direction, int stream_tag);
681 int hda_dsp_stream_spib_config(struct snd_sof_dev *sdev,
685 int hda_ipc_msg_data(struct snd_sof_dev *sdev,
688 int hda_set_stream_data_offset(struct snd_sof_dev *sdev,
695 int hda_dsp_ipc_send_msg(struct snd_sof_dev *sdev,
697 void hda_dsp_ipc_get_reply(struct snd_sof_dev *sdev);
698 int hda_dsp_ipc_get_mailbox_offset(struct snd_sof_dev *sdev);
699 int hda_dsp_ipc_get_window_offset(struct snd_sof_dev *sdev, u32 id);
702 int hda_dsp_ipc_cmd_done(struct snd_sof_dev *sdev, int dir);
704 void hda_dsp_get_state(struct snd_sof_dev *sdev, const char *level);
705 void hda_dsp_dump_ext_rom_status(struct snd_sof_dev *sdev, const char *level,
711 int hda_dsp_cl_boot_firmware(struct snd_sof_dev *sdev);
712 int hda_dsp_cl_boot_firmware_iccmax(struct snd_sof_dev *sdev);
713 int hda_cl_copy_fw(struct snd_sof_dev *sdev, struct hdac_ext_stream *hext_stream);
722 int cl_dsp_init(struct snd_sof_dev *sdev, int stream_tag, bool imr_boot);
726 int hda_dsp_pre_fw_run(struct snd_sof_dev *sdev);
727 int hda_dsp_post_fw_run(struct snd_sof_dev *sdev);
730 int hda_dsp_ext_man_get_cavs_config_data(struct snd_sof_dev *sdev,
736 int hda_dsp_ctrl_get_caps(struct snd_sof_dev *sdev);
737 void hda_dsp_ctrl_ppcap_enable(struct snd_sof_dev *sdev, bool enable);
738 void hda_dsp_ctrl_ppcap_int_enable(struct snd_sof_dev *sdev, bool enable);
739 int hda_dsp_ctrl_link_reset(struct snd_sof_dev *sdev, bool reset);
740 void hda_dsp_ctrl_misc_clock_gating(struct snd_sof_dev *sdev, bool enable);
741 int hda_dsp_ctrl_clock_power_gating(struct snd_sof_dev *sdev, bool enable);
742 int hda_dsp_ctrl_init_chip(struct snd_sof_dev *sdev);
743 void hda_dsp_ctrl_stop_chip(struct snd_sof_dev *sdev);
747 void sof_hda_bus_init(struct snd_sof_dev *sdev, struct device *dev);
748 void sof_hda_bus_exit(struct snd_sof_dev *sdev);
754 void hda_codec_probe_bus(struct snd_sof_dev *sdev);
755 void hda_codec_jack_wake_enable(struct snd_sof_dev *sdev, bool enable);
756 void hda_codec_jack_check(struct snd_sof_dev *sdev);
757 void hda_codec_check_for_state_change(struct snd_sof_dev *sdev);
758 void hda_codec_init_cmd_io(struct snd_sof_dev *sdev);
759 void hda_codec_resume_cmd_io(struct snd_sof_dev *sdev);
760 void hda_codec_stop_cmd_io(struct snd_sof_dev *sdev);
761 void hda_codec_suspend_cmd_io(struct snd_sof_dev *sdev);
762 void hda_codec_detect_mask(struct snd_sof_dev *sdev);
763 void hda_codec_rirb_status_clear(struct snd_sof_dev *sdev);
764 bool hda_codec_check_rirb_status(struct snd_sof_dev *sdev);
765 void hda_codec_set_codec_wakeup(struct snd_sof_dev *sdev, bool status);
766 void hda_codec_device_remove(struct snd_sof_dev *sdev);
770 static inline void hda_codec_probe_bus(struct snd_sof_dev *sdev) { } in hda_codec_probe_bus()
771 static inline void hda_codec_jack_wake_enable(struct snd_sof_dev *sdev, bool enable) { } in hda_codec_jack_wake_enable()
772 static inline void hda_codec_jack_check(struct snd_sof_dev *sdev) { } in hda_codec_jack_check()
773 static inline void hda_codec_check_for_state_change(struct snd_sof_dev *sdev) { } in hda_codec_check_for_state_change()
774 static inline void hda_codec_init_cmd_io(struct snd_sof_dev *sdev) { } in hda_codec_init_cmd_io()
775 static inline void hda_codec_resume_cmd_io(struct snd_sof_dev *sdev) { } in hda_codec_resume_cmd_io()
776 static inline void hda_codec_stop_cmd_io(struct snd_sof_dev *sdev) { } in hda_codec_stop_cmd_io()
777 static inline void hda_codec_suspend_cmd_io(struct snd_sof_dev *sdev) { } in hda_codec_suspend_cmd_io()
778 static inline void hda_codec_detect_mask(struct snd_sof_dev *sdev) { } in hda_codec_detect_mask()
779 static inline void hda_codec_rirb_status_clear(struct snd_sof_dev *sdev) { } in hda_codec_rirb_status_clear()
780 static inline bool hda_codec_check_rirb_status(struct snd_sof_dev *sdev) { return false; } in hda_codec_check_rirb_status()
781 static inline void hda_codec_set_codec_wakeup(struct snd_sof_dev *sdev, bool status) { } in hda_codec_set_codec_wakeup()
782 static inline void hda_codec_device_remove(struct snd_sof_dev *sdev) { } in hda_codec_device_remove()
788 void hda_codec_i915_display_power(struct snd_sof_dev *sdev, bool enable);
789 int hda_codec_i915_init(struct snd_sof_dev *sdev);
790 int hda_codec_i915_exit(struct snd_sof_dev *sdev);
794 static inline void hda_codec_i915_display_power(struct snd_sof_dev *sdev, bool enable) { } in hda_codec_i915_display_power()
795 static inline int hda_codec_i915_init(struct snd_sof_dev *sdev) { return 0; } in hda_codec_i915_init()
796 static inline int hda_codec_i915_exit(struct snd_sof_dev *sdev) { return 0; } in hda_codec_i915_exit()
803 int hda_dsp_trace_init(struct snd_sof_dev *sdev, struct snd_dma_buffer *dmab,
805 int hda_dsp_trace_release(struct snd_sof_dev *sdev);
806 int hda_dsp_trace_trigger(struct snd_sof_dev *sdev, int cmd);
813 int hda_sdw_check_lcount_common(struct snd_sof_dev *sdev);
814 int hda_sdw_check_lcount_ext(struct snd_sof_dev *sdev);
815 int hda_sdw_check_lcount(struct snd_sof_dev *sdev);
816 int hda_sdw_startup(struct snd_sof_dev *sdev);
817 void hda_common_enable_sdw_irq(struct snd_sof_dev *sdev, bool enable);
818 void hda_sdw_int_enable(struct snd_sof_dev *sdev, bool enable);
819 bool hda_sdw_check_wakeen_irq_common(struct snd_sof_dev *sdev);
820 void hda_sdw_process_wakeen_common(struct snd_sof_dev *sdev);
821 void hda_sdw_process_wakeen(struct snd_sof_dev *sdev);
822 bool hda_common_check_sdw_irq(struct snd_sof_dev *sdev);
826 static inline int hda_sdw_check_lcount_common(struct snd_sof_dev *sdev) in hda_sdw_check_lcount_common()
831 static inline int hda_sdw_check_lcount_ext(struct snd_sof_dev *sdev) in hda_sdw_check_lcount_ext()
836 static inline int hda_sdw_check_lcount(struct snd_sof_dev *sdev) in hda_sdw_check_lcount()
841 static inline int hda_sdw_startup(struct snd_sof_dev *sdev) in hda_sdw_startup()
846 static inline void hda_common_enable_sdw_irq(struct snd_sof_dev *sdev, bool enable) in hda_common_enable_sdw_irq()
850 static inline void hda_sdw_int_enable(struct snd_sof_dev *sdev, bool enable) in hda_sdw_int_enable()
854 static inline bool hda_sdw_check_wakeen_irq_common(struct snd_sof_dev *sdev) in hda_sdw_check_wakeen_irq_common()
859 static inline void hda_sdw_process_wakeen_common(struct snd_sof_dev *sdev) in hda_sdw_process_wakeen_common()
863 static inline void hda_sdw_process_wakeen(struct snd_sof_dev *sdev) in hda_sdw_process_wakeen()
867 static inline bool hda_common_check_sdw_irq(struct snd_sof_dev *sdev) in hda_common_check_sdw_irq()
889 int hda_dsp_dais_suspend(struct snd_sof_dev *sdev);
897 int sof_skl_ops_init(struct snd_sof_dev *sdev);
899 int sof_apl_ops_init(struct snd_sof_dev *sdev);
901 int sof_cnl_ops_init(struct snd_sof_dev *sdev);
903 int sof_tgl_ops_init(struct snd_sof_dev *sdev);
905 int sof_icl_ops_init(struct snd_sof_dev *sdev);
907 int sof_mtl_ops_init(struct snd_sof_dev *sdev);
909 int sof_lnl_ops_init(struct snd_sof_dev *sdev);
927 int hda_probes_register(struct snd_sof_dev *sdev);
928 void hda_probes_unregister(struct snd_sof_dev *sdev);
930 static inline int hda_probes_register(struct snd_sof_dev *sdev) in hda_probes_register()
935 static inline void hda_probes_unregister(struct snd_sof_dev *sdev) in hda_probes_unregister()
941 int hda_register_clients(struct snd_sof_dev *sdev);
942 void hda_unregister_clients(struct snd_sof_dev *sdev);
945 struct snd_soc_acpi_mach *hda_machine_select(struct snd_sof_dev *sdev);
947 struct snd_sof_dev *sdev);
961 void hda_set_dai_drv_ops(struct snd_sof_dev *sdev, struct snd_sof_dsp_ops *ops);
962 void hda_ops_free(struct snd_sof_dev *sdev);
965 int hda_dsp_cl_boot_firmware_skl(struct snd_sof_dev *sdev);
966 int hda_dsp_core_stall_reset(struct snd_sof_dev *sdev, unsigned int core_mask);
970 int cnl_ipc4_send_msg(struct snd_sof_dev *sdev, struct snd_sof_ipc_msg *msg);
972 bool hda_ipc4_tx_is_busy(struct snd_sof_dev *sdev);
975 int hda_dsp_ipc4_send_msg(struct snd_sof_dev *sdev, struct snd_sof_ipc_msg *msg);
976 void hda_ipc4_dump(struct snd_sof_dev *sdev);
980 int hda_dsp_ipc4_load_library(struct snd_sof_dev *sdev,
1000 struct hdac_ext_stream *(*get_hext_stream)(struct snd_sof_dev *sdev,
1003 struct hdac_ext_stream *(*assign_hext_stream)(struct snd_sof_dev *sdev,
1006 void (*release_hext_stream)(struct snd_sof_dev *sdev, struct snd_soc_dai *cpu_dai,
1008 void (*setup_hext_stream)(struct snd_sof_dev *sdev, struct hdac_ext_stream *hext_stream,
1010 void (*reset_hext_stream)(struct snd_sof_dev *sdev, struct hdac_ext_stream *hext_sream);
1011 int (*pre_trigger)(struct snd_sof_dev *sdev, struct snd_soc_dai *cpu_dai,
1013 int (*trigger)(struct snd_sof_dev *sdev, struct snd_soc_dai *cpu_dai,
1015 int (*post_trigger)(struct snd_sof_dev *sdev, struct snd_soc_dai *cpu_dai,
1017 void (*codec_dai_set_stream)(struct snd_sof_dev *sdev,
1020 unsigned int (*calc_stream_format)(struct snd_sof_dev *sdev,
1023 struct hdac_ext_link * (*get_hlink)(struct snd_sof_dev *sdev,
1028 hda_select_dai_widget_ops(struct snd_sof_dev *sdev, struct snd_sof_widget *swidget);
1034 static inline struct snd_sof_dev *widget_to_sdev(struct snd_soc_dapm_widget *w) in widget_to_sdev()