linux/sound/soc/sof/intel/hda-ipc.c

// SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause)
//
// This file is provided under a dual BSD/GPLv2 license.  When using or
// redistributing this file, you may do so under either license.
//
// Copyright(c) 2018 Intel Corporation
//
// Authors: Liam Girdwood <[email protected]>
//	    Ranjani Sridharan <[email protected]>
//	    Rander Wang <[email protected]>
//          Keyon Jie <[email protected]>
//

/*
 * Hardware interface for generic Intel audio DSP HDA IP
 */

#include <sound/hda_register.h>
#include <sound/sof/ipc4/header.h>
#include <trace/events/sof_intel.h>
#include "../ops.h"
#include "hda.h"
#include "telemetry.h"

EXPORT_TRACEPOINT_SYMBOL();
EXPORT_TRACEPOINT_SYMBOL();
EXPORT_TRACEPOINT_SYMBOL();

static void hda_dsp_ipc_host_done(struct snd_sof_dev *sdev)
{}

static void hda_dsp_ipc_dsp_done(struct snd_sof_dev *sdev)
{}

int hda_dsp_ipc_send_msg(struct snd_sof_dev *sdev, struct snd_sof_ipc_msg *msg)
{}
EXPORT_SYMBOL_NS();

static inline bool hda_dsp_ipc4_pm_msg(u32 primary)
{}

void hda_dsp_ipc4_schedule_d0i3_work(struct sof_intel_hda_dev *hdev,
				     struct snd_sof_ipc_msg *msg)
{}
EXPORT_SYMBOL_NS();

int hda_dsp_ipc4_send_msg(struct snd_sof_dev *sdev, struct snd_sof_ipc_msg *msg)
{}
EXPORT_SYMBOL_NS();

void hda_dsp_ipc_get_reply(struct snd_sof_dev *sdev)
{}
EXPORT_SYMBOL_NS();

irqreturn_t hda_dsp_ipc4_irq_thread(int irq, void *context)
{}
EXPORT_SYMBOL_NS();

/* IPC handler thread */
irqreturn_t hda_dsp_ipc_irq_thread(int irq, void *context)
{}
EXPORT_SYMBOL_NS();

/* Check if an IPC IRQ occurred */
bool hda_dsp_check_ipc_irq(struct snd_sof_dev *sdev)
{}
EXPORT_SYMBOL_NS();

int hda_dsp_ipc_get_mailbox_offset(struct snd_sof_dev *sdev)
{}
EXPORT_SYMBOL_NS();

int hda_dsp_ipc_get_window_offset(struct snd_sof_dev *sdev, u32 id)
{}
EXPORT_SYMBOL_NS();

int hda_ipc_msg_data(struct snd_sof_dev *sdev,
		     struct snd_sof_pcm_stream *sps,
		     void *p, size_t sz)
{}
EXPORT_SYMBOL_NS();

int hda_set_stream_data_offset(struct snd_sof_dev *sdev,
			       struct snd_sof_pcm_stream *sps,
			       size_t posn_offset)
{}
EXPORT_SYMBOL_NS();

void hda_ipc4_dsp_dump(struct snd_sof_dev *sdev, u32 flags)
{}
EXPORT_SYMBOL_NS();

bool hda_check_ipc_irq(struct snd_sof_dev *sdev)
{}
EXPORT_SYMBOL_NS();

void hda_ipc_irq_dump(struct snd_sof_dev *sdev)
{}
EXPORT_SYMBOL_NS();

void hda_ipc_dump(struct snd_sof_dev *sdev)
{}
EXPORT_SYMBOL_NS();

void hda_ipc4_dump(struct snd_sof_dev *sdev)
{}
EXPORT_SYMBOL_NS();

bool hda_ipc4_tx_is_busy(struct snd_sof_dev *sdev)
{}
EXPORT_SYMBOL_NS();