Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause) */
0002 /*
0003  * This file is provided under a dual BSD/GPLv2 license. When using or
0004  * redistributing this file, you may do so under either license.
0005  *
0006  * Copyright(c) 2021 Advanced Micro Devices, Inc. All rights reserved.
0007  *
0008  * Author: Ajit Kumar Pandey <AjitKumar.Pandey@amd.com>
0009  */
0010 #ifndef __ACP_MACH_H
0011 #define __ACP_MACH_H
0012 
0013 #include <sound/core.h>
0014 #include <sound/jack.h>
0015 #include <sound/pcm_params.h>
0016 #include <sound/soc-dapm.h>
0017 #include <linux/input.h>
0018 #include <linux/module.h>
0019 #include <sound/soc.h>
0020 
0021 enum be_id {
0022     HEADSET_BE_ID = 0,
0023     AMP_BE_ID,
0024     DMIC_BE_ID,
0025 };
0026 
0027 enum cpu_endpoints {
0028     NONE = 0,
0029     I2S_HS,
0030     I2S_SP,
0031     I2S_BT,
0032     DMIC,
0033 };
0034 
0035 enum codec_endpoints {
0036     DUMMY = 0,
0037     RT5682,
0038     RT1019,
0039     MAX98360A,
0040     RT5682S,
0041     NAU8825,
0042 };
0043 
0044 enum platform_end_point {
0045     RENOIR = 0,
0046     REMBRANDT,
0047 };
0048 
0049 struct acp_card_drvdata {
0050     unsigned int hs_cpu_id;
0051     unsigned int amp_cpu_id;
0052     unsigned int dmic_cpu_id;
0053     unsigned int hs_codec_id;
0054     unsigned int amp_codec_id;
0055     unsigned int dmic_codec_id;
0056     unsigned int dai_fmt;
0057     unsigned int platform;
0058     struct clk *wclk;
0059     struct clk *bclk;
0060     bool soc_mclk;
0061 };
0062 
0063 int acp_sofdsp_dai_links_create(struct snd_soc_card *card);
0064 int acp_legacy_dai_links_create(struct snd_soc_card *card);
0065 
0066 #endif