Commit 0d1d7a66 authored by Garlic Tseng's avatar Garlic Tseng Committed by Mark Brown

ASoC: mediatek: Refine mt8173 driver and change config option

move mt8173 driver to another folder and add prefix.
add config option SND_SOC_MT8173
Signed-off-by: default avatarGarlic Tseng <garlic.tseng@mediatek.com>
Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 0c198ed2
config SND_SOC_MEDIATEK config SND_SOC_MT8173
tristate "ASoC support for Mediatek chip" tristate "ASoC support for Mediatek MT8173 chip"
depends on ARCH_MEDIATEK depends on ARCH_MEDIATEK
help help
This adds ASoC platform driver support for Mediatek chip This adds ASoC platform driver support for Mediatek MT8173 chip
that can be used with other codecs. that can be used with other codecs.
Select Y if you have such device. Select Y if you have such device.
Ex: MT8173 Ex: MT8173
config SND_SOC_MT8173_MAX98090 config SND_SOC_MT8173_MAX98090
tristate "ASoC Audio driver for MT8173 with MAX98090 codec" tristate "ASoC Audio driver for MT8173 with MAX98090 codec"
depends on SND_SOC_MEDIATEK && I2C depends on SND_SOC_MT8173 && I2C
select SND_SOC_MAX98090 select SND_SOC_MAX98090
help help
This adds ASoC driver for Mediatek MT8173 boards This adds ASoC driver for Mediatek MT8173 boards
...@@ -19,7 +19,7 @@ config SND_SOC_MT8173_MAX98090 ...@@ -19,7 +19,7 @@ config SND_SOC_MT8173_MAX98090
config SND_SOC_MT8173_RT5650 config SND_SOC_MT8173_RT5650
tristate "ASoC Audio driver for MT8173 with RT5650 codec" tristate "ASoC Audio driver for MT8173 with RT5650 codec"
depends on SND_SOC_MEDIATEK && I2C depends on SND_SOC_MT8173 && I2C
select SND_SOC_RT5645 select SND_SOC_RT5645
help help
This adds ASoC driver for Mediatek MT8173 boards This adds ASoC driver for Mediatek MT8173 boards
...@@ -29,7 +29,7 @@ config SND_SOC_MT8173_RT5650 ...@@ -29,7 +29,7 @@ config SND_SOC_MT8173_RT5650
config SND_SOC_MT8173_RT5650_RT5514 config SND_SOC_MT8173_RT5650_RT5514
tristate "ASoC Audio driver for MT8173 with RT5650 RT5514 codecs" tristate "ASoC Audio driver for MT8173 with RT5650 RT5514 codecs"
depends on SND_SOC_MEDIATEK && I2C depends on SND_SOC_MT8173 && I2C
select SND_SOC_RT5645 select SND_SOC_RT5645
select SND_SOC_RT5514 select SND_SOC_RT5514
help help
...@@ -40,7 +40,7 @@ config SND_SOC_MT8173_RT5650_RT5514 ...@@ -40,7 +40,7 @@ config SND_SOC_MT8173_RT5650_RT5514
config SND_SOC_MT8173_RT5650_RT5676 config SND_SOC_MT8173_RT5650_RT5676
tristate "ASoC Audio driver for MT8173 with RT5650 RT5676 codecs" tristate "ASoC Audio driver for MT8173 with RT5650 RT5676 codecs"
depends on SND_SOC_MEDIATEK && I2C depends on SND_SOC_MT8173 && I2C
select SND_SOC_RT5645 select SND_SOC_RT5645
select SND_SOC_RT5677 select SND_SOC_RT5677
select SND_SOC_HDMI_CODEC select SND_SOC_HDMI_CODEC
......
# MTK Platform Support # 8173 Machine support
obj-$(CONFIG_SND_SOC_MEDIATEK) += mtk-afe-pcm.o obj-$(CONFIG_SND_SOC_MT8173) += mt8173/
# Machine support
obj-$(CONFIG_SND_SOC_MT8173_MAX98090) += mt8173-max98090.o
obj-$(CONFIG_SND_SOC_MT8173_RT5650) += mt8173-rt5650.o
obj-$(CONFIG_SND_SOC_MT8173_RT5650_RT5514) += mt8173-rt5650-rt5514.o
obj-$(CONFIG_SND_SOC_MT8173_RT5650_RT5676) += mt8173-rt5650-rt5676.o
# MTK Platform Support
obj-$(CONFIG_SND_SOC_MT8173) += mt8173-afe-pcm.o
# Machine support
obj-$(CONFIG_SND_SOC_MT8173_MAX98090) += mt8173-max98090.o
obj-$(CONFIG_SND_SOC_MT8173_RT5650) += mt8173-rt5650.o
obj-$(CONFIG_SND_SOC_MT8173_RT5650_RT5514) += mt8173-rt5650-rt5514.o
obj-$(CONFIG_SND_SOC_MT8173_RT5650_RT5676) += mt8173-rt5650-rt5676.o
/* /*
* mtk_afe_common.h -- Mediatek audio driver common definitions * mt8173_afe_common.h -- Mediatek 8173 audio driver common definitions
* *
* Copyright (c) 2015 MediaTek Inc. * Copyright (c) 2015 MediaTek Inc.
* Author: Koro Chen <koro.chen@mediatek.com> * Author: Koro Chen <koro.chen@mediatek.com>
...@@ -17,64 +17,64 @@ ...@@ -17,64 +17,64 @@
* GNU General Public License for more details. * GNU General Public License for more details.
*/ */
#ifndef _MTK_AFE_COMMON_H_ #ifndef _MT8173_AFE_COMMON_H_
#define _MTK_AFE_COMMON_H_ #define _MT8173_AFE_COMMON_H_
#include <linux/clk.h> #include <linux/clk.h>
#include <linux/regmap.h> #include <linux/regmap.h>
enum { enum {
MTK_AFE_MEMIF_DL1, MT8173_AFE_MEMIF_DL1,
MTK_AFE_MEMIF_DL2, MT8173_AFE_MEMIF_DL2,
MTK_AFE_MEMIF_VUL, MT8173_AFE_MEMIF_VUL,
MTK_AFE_MEMIF_DAI, MT8173_AFE_MEMIF_DAI,
MTK_AFE_MEMIF_AWB, MT8173_AFE_MEMIF_AWB,
MTK_AFE_MEMIF_MOD_DAI, MT8173_AFE_MEMIF_MOD_DAI,
MTK_AFE_MEMIF_HDMI, MT8173_AFE_MEMIF_HDMI,
MTK_AFE_MEMIF_NUM, MT8173_AFE_MEMIF_NUM,
MTK_AFE_IO_MOD_PCM1 = MTK_AFE_MEMIF_NUM, MT8173_AFE_IO_MOD_PCM1 = MT8173_AFE_MEMIF_NUM,
MTK_AFE_IO_MOD_PCM2, MT8173_AFE_IO_MOD_PCM2,
MTK_AFE_IO_PMIC, MT8173_AFE_IO_PMIC,
MTK_AFE_IO_I2S, MT8173_AFE_IO_I2S,
MTK_AFE_IO_2ND_I2S, MT8173_AFE_IO_2ND_I2S,
MTK_AFE_IO_HW_GAIN1, MT8173_AFE_IO_HW_GAIN1,
MTK_AFE_IO_HW_GAIN2, MT8173_AFE_IO_HW_GAIN2,
MTK_AFE_IO_MRG_O, MT8173_AFE_IO_MRG_O,
MTK_AFE_IO_MRG_I, MT8173_AFE_IO_MRG_I,
MTK_AFE_IO_DAIBT, MT8173_AFE_IO_DAIBT,
MTK_AFE_IO_HDMI, MT8173_AFE_IO_HDMI,
}; };
enum { enum {
MTK_AFE_IRQ_1, MT8173_AFE_IRQ_1,
MTK_AFE_IRQ_2, MT8173_AFE_IRQ_2,
MTK_AFE_IRQ_3, MT8173_AFE_IRQ_3,
MTK_AFE_IRQ_4, MT8173_AFE_IRQ_4,
MTK_AFE_IRQ_5, MT8173_AFE_IRQ_5,
MTK_AFE_IRQ_6, MT8173_AFE_IRQ_6,
MTK_AFE_IRQ_7, MT8173_AFE_IRQ_7,
MTK_AFE_IRQ_8, MT8173_AFE_IRQ_8,
MTK_AFE_IRQ_NUM, MT8173_AFE_IRQ_NUM,
}; };
enum { enum {
MTK_CLK_INFRASYS_AUD, MT8173_CLK_INFRASYS_AUD,
MTK_CLK_TOP_PDN_AUD, MT8173_CLK_TOP_PDN_AUD,
MTK_CLK_TOP_PDN_AUD_BUS, MT8173_CLK_TOP_PDN_AUD_BUS,
MTK_CLK_I2S0_M, MT8173_CLK_I2S0_M,
MTK_CLK_I2S1_M, MT8173_CLK_I2S1_M,
MTK_CLK_I2S2_M, MT8173_CLK_I2S2_M,
MTK_CLK_I2S3_M, MT8173_CLK_I2S3_M,
MTK_CLK_I2S3_B, MT8173_CLK_I2S3_B,
MTK_CLK_BCK0, MT8173_CLK_BCK0,
MTK_CLK_BCK1, MT8173_CLK_BCK1,
MTK_CLK_NUM MT8173_CLK_NUM
}; };
struct mtk_afe; struct mt8173_afe;
struct snd_pcm_substream; struct snd_pcm_substream;
struct mtk_afe_memif_data { struct mt8173_afe_memif_data {
int id; int id;
const char *name; const char *name;
int reg_ofs_base; int reg_ofs_base;
...@@ -90,12 +90,12 @@ struct mtk_afe_memif_data { ...@@ -90,12 +90,12 @@ struct mtk_afe_memif_data {
int msb_shift; int msb_shift;
}; };
struct mtk_afe_memif { struct mt8173_afe_memif {
unsigned int phys_buf_addr; unsigned int phys_buf_addr;
int buffer_size; int buffer_size;
struct snd_pcm_substream *substream; struct snd_pcm_substream *substream;
const struct mtk_afe_memif_data *data; const struct mt8173_afe_memif_data *data;
const struct mtk_afe_irq_data *irqdata; const struct mt8173_afe_irq_data *irqdata;
}; };
#endif #endif
...@@ -18,7 +18,7 @@ ...@@ -18,7 +18,7 @@
#include <sound/soc.h> #include <sound/soc.h>
#include <sound/jack.h> #include <sound/jack.h>
#include <linux/gpio.h> #include <linux/gpio.h>
#include "../codecs/max98090.h" #include "../../codecs/max98090.h"
static struct snd_soc_jack mt8173_max98090_jack; static struct snd_soc_jack mt8173_max98090_jack;
......
...@@ -19,7 +19,7 @@ ...@@ -19,7 +19,7 @@
#include <linux/of_gpio.h> #include <linux/of_gpio.h>
#include <sound/soc.h> #include <sound/soc.h>
#include <sound/jack.h> #include <sound/jack.h>
#include "../codecs/rt5645.h" #include "../../codecs/rt5645.h"
#define MCLK_FOR_CODECS 12288000 #define MCLK_FOR_CODECS 12288000
......
...@@ -19,8 +19,8 @@ ...@@ -19,8 +19,8 @@
#include <linux/of_gpio.h> #include <linux/of_gpio.h>
#include <sound/soc.h> #include <sound/soc.h>
#include <sound/jack.h> #include <sound/jack.h>
#include "../codecs/rt5645.h" #include "../../codecs/rt5645.h"
#include "../codecs/rt5677.h" #include "../../codecs/rt5677.h"
#define MCLK_FOR_CODECS 12288000 #define MCLK_FOR_CODECS 12288000
......
...@@ -19,7 +19,7 @@ ...@@ -19,7 +19,7 @@
#include <linux/of_gpio.h> #include <linux/of_gpio.h>
#include <sound/soc.h> #include <sound/soc.h>
#include <sound/jack.h> #include <sound/jack.h>
#include "../codecs/rt5645.h" #include "../../codecs/rt5645.h"
#define MCLK_FOR_CODECS 12288000 #define MCLK_FOR_CODECS 12288000
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment