1/* SPDX-License-Identifier: GPL-2.0 */ 2/* 3 * mt7986-afe-common.h -- MediaTek 7986 audio driver definitions 4 * 5 * Copyright (c) 2023 MediaTek Inc. 6 * Authors: Vic Wu <vic.wu@mediatek.com> 7 * Maso Huang <maso.huang@mediatek.com> 8 */ 9 10#ifndef _MT_7986_AFE_COMMON_H_ 11#define _MT_7986_AFE_COMMON_H_ 12 13#include <sound/soc.h> 14#include <linux/clk.h> 15#include <linux/list.h> 16#include <linux/regmap.h> 17#include "../common/mtk-base-afe.h" 18 19enum { 20 MT7986_MEMIF_DL1, 21 MT7986_MEMIF_VUL12, 22 MT7986_MEMIF_NUM, 23 MT7986_DAI_ETDM = MT7986_MEMIF_NUM, 24 MT7986_DAI_NUM, 25}; 26 27enum { 28 MT7986_IRQ_0, 29 MT7986_IRQ_1, 30 MT7986_IRQ_2, 31 MT7986_IRQ_NUM, 32}; 33 34struct mt7986_afe_private { 35 struct clk_bulk_data *clks; 36 int num_clks; 37 38 int pm_runtime_bypass_reg_ctl; 39 40 /* dai */ 41 void *dai_priv[MT7986_DAI_NUM]; 42}; 43 44unsigned int mt7986_afe_rate_transform(struct device *dev, 45 unsigned int rate); 46 47/* dai register */ 48int mt7986_dai_etdm_register(struct mtk_base_afe *afe); 49#endif 50