]> Git Repo - linux.git/commitdiff
Merge remote-tracking branches 'asoc/topic/simple', 'asoc/topic/sirf', 'asoc/topic...
authorMark Brown <[email protected]>
Mon, 6 Oct 2014 11:49:05 +0000 (12:49 +0100)
committerMark Brown <[email protected]>
Mon, 6 Oct 2014 11:49:05 +0000 (12:49 +0100)
1  2  3  4  5  6 
sound/soc/codecs/Kconfig
sound/soc/codecs/Makefile
sound/soc/codecs/ssm2602.c
sound/soc/fsl/fsl_spdif.c

diff --combined sound/soc/codecs/Kconfig
index 0563cc6cd4d041caaf0de9b9213cc50dcaf7c29f,8838838e25ed89a9525e80b86cd92575701a75d9,8838838e25ed89a9525e80b86cd92575701a75d9,8838838e25ed89a9525e80b86cd92575701a75d9,3649e7399ec7fb5a79b957dbe9d616a9c75dd239,bc1fe4e9f8ea760614379684c5af3a565c4d1707..5b47c550bb89d1d0e80133660069cefa9891cfe9
@@@@@@@ -43,7 -43,6 -43,6 -43,6 -43,6 -43,6 +43,7 @@@@@@@ config SND_SOC_ALL_CODEC
        select SND_SOC_ALC5623 if I2C
        select SND_SOC_ALC5632 if I2C
        select SND_SOC_CQ0093VC if MFD_DAVINCI_VOICECODEC
 +++++  select SND_SOC_CS35L32 if I2C
        select SND_SOC_CS42L51_I2C if I2C
        select SND_SOC_CS42L52 if I2C && INPUT
        select SND_SOC_CS42L56 if I2C && INPUT
        select SND_SOC_DA7213 if I2C
        select SND_SOC_DA732X if I2C
        select SND_SOC_DA9055 if I2C
 +++++  select SND_SOC_DMIC
        select SND_SOC_BT_SCO
 +++++  select SND_SOC_ES8328_SPI if SPI_MASTER
 +++++  select SND_SOC_ES8328_I2C if I2C
        select SND_SOC_ISABELLE if I2C
        select SND_SOC_JZ4740_CODEC
        select SND_SOC_LM4857 if I2C
        select SND_SOC_SSM2518 if I2C
        select SND_SOC_SSM2602_SPI if SPI_MASTER
        select SND_SOC_SSM2602_I2C if I2C
+++++   select SND_SOC_SSM4567 if I2C
        select SND_SOC_STA32X if I2C
        select SND_SOC_STA350 if I2C
        select SND_SOC_STA529 if I2C
@@@@@@@ -327,10 -323,6 -323,6 -323,6 -323,6 -324,6 +328,10 @@@@@@@ config SND_SOC_ALC563
      config SND_SOC_CQ0093VC
        tristate
      
 +++++config SND_SOC_CS35L32
 +++++  tristate "Cirrus Logic CS35L32 CODEC"
 +++++  depends on I2C
 +++++
      config SND_SOC_CS42L51
        tristate
      
@@@@@@@ -413,17 -405,6 -405,6 -405,6 -405,6 -406,6 +414,17 @@@@@@@ config SND_SOC_DMI
      config SND_SOC_HDMI_CODEC
             tristate "HDMI stub CODEC"
      
 +++++config SND_SOC_ES8328
 +++++  tristate "Everest Semi ES8328 CODEC"
 +++++
 +++++config SND_SOC_ES8328_I2C
 +++++  tristate
 +++++  select SND_SOC_ES8328
 +++++
 +++++config SND_SOC_ES8328_SPI
 +++++  tristate
 +++++  select SND_SOC_ES8328
 +++++
      config SND_SOC_ISABELLE
              tristate
      
@@@@@@@ -483,7 -464,6 -464,6 -464,6 -464,6 -465,6 +484,7 @@@@@@@ config SND_SOC_RL623
      
      config SND_SOC_RT286
        tristate
 +++++  depends on I2C
      
      config SND_SOC_RT5631
        tristate
@@@@@@@ -540,13 -520,13 -520,13 -520,13 -520,17 -521,17 +541,21 @@@@@@@ config SND_SOC_SSM260
        tristate
      
      config SND_SOC_SSM2602_SPI
++++ +  tristate "Analog Devices SSM2602 CODEC - SPI"
++++ +  depends on SPI_MASTER
        select SND_SOC_SSM2602
---- -  tristate
++++ +  select REGMAP_SPI
      
      config SND_SOC_SSM2602_I2C
++++ +  tristate "Analog Devices SSM2602 CODEC - I2C"
++++ +  depends on I2C
        select SND_SOC_SSM2602
---- -  tristate
++++ +  select REGMAP_I2C
++++  
+++++ config SND_SOC_SSM4567
+++++   tristate "Analog Devices ssm4567 amplifier driver support"
+++++   depends on I2C
    + 
      config SND_SOC_STA32X
        tristate
      
index afba944657bc926192ec8a62237547381fb6c5fe,20afe0f0c5be4f724c6a24bcaef084ef49d0d00b,20afe0f0c5be4f724c6a24bcaef084ef49d0d00b,20afe0f0c5be4f724c6a24bcaef084ef49d0d00b,20afe0f0c5be4f724c6a24bcaef084ef49d0d00b,bebad36fa7193ffdef5680abdb7fdd50e0597266..5dce451661e47813bb0b95b8b0121ae2545a2dab
@@@@@@@ -32,7 -32,6 -32,6 -32,6 -32,6 -32,6 +32,7 @@@@@@@ snd-soc-ak4671-objs := ak4671.
      snd-soc-ak5386-objs := ak5386.o
      snd-soc-arizona-objs := arizona.o
      snd-soc-cq93vc-objs := cq93vc.o
 +++++snd-soc-cs35l32-objs := cs35l32.o
      snd-soc-cs42l51-objs := cs42l51.o
      snd-soc-cs42l51-i2c-objs := cs42l51-i2c.o
      snd-soc-cs42l52-objs := cs42l52.o
@@@@@@@ -50,9 -49,6 -49,6 -49,6 -49,6 -49,6 +50,9 @@@@@@@ snd-soc-da732x-objs := da732x.
      snd-soc-da9055-objs := da9055.o
      snd-soc-bt-sco-objs := bt-sco.o
      snd-soc-dmic-objs := dmic.o
 +++++snd-soc-es8328-objs := es8328.o
 +++++snd-soc-es8328-i2c-objs := es8328-i2c.o
 +++++snd-soc-es8328-spi-objs := es8328-spi.o
      snd-soc-isabelle-objs := isabelle.o
      snd-soc-jz4740-codec-objs := jz4740.o
      snd-soc-l3-objs := l3.o
@@@@@@@ -95,6 -91,6 -91,6 -91,6 -91,6 -91,7 +95,7 @@@@@@@ snd-soc-ssm2518-objs := ssm2518.
      snd-soc-ssm2602-objs := ssm2602.o
      snd-soc-ssm2602-spi-objs := ssm2602-spi.o
      snd-soc-ssm2602-i2c-objs := ssm2602-i2c.o
+++++ snd-soc-ssm4567-objs := ssm4567.o
      snd-soc-sta32x-objs := sta32x.o
      snd-soc-sta350-objs := sta350.o
      snd-soc-sta529-objs := sta529.o
@@@@@@@ -207,7 -203,6 -203,6 -203,6 -203,6 -204,6 +208,7 @@@@@@@ obj-$(CONFIG_SND_SOC_ALC5623)    += snd
      obj-$(CONFIG_SND_SOC_ALC5632)     += snd-soc-alc5632.o
      obj-$(CONFIG_SND_SOC_ARIZONA)     += snd-soc-arizona.o
      obj-$(CONFIG_SND_SOC_CQ0093VC) += snd-soc-cq93vc.o
 +++++obj-$(CONFIG_SND_SOC_CS35L32)     += snd-soc-cs35l32.o
      obj-$(CONFIG_SND_SOC_CS42L51)     += snd-soc-cs42l51.o
      obj-$(CONFIG_SND_SOC_CS42L51_I2C) += snd-soc-cs42l51-i2c.o
      obj-$(CONFIG_SND_SOC_CS42L52)     += snd-soc-cs42l52.o
@@@@@@@ -225,9 -220,6 -220,6 -220,6 -220,6 -221,6 +226,9 @@@@@@@ obj-$(CONFIG_SND_SOC_DA732X)   += snd-soc
      obj-$(CONFIG_SND_SOC_DA9055)      += snd-soc-da9055.o
      obj-$(CONFIG_SND_SOC_BT_SCO)      += snd-soc-bt-sco.o
      obj-$(CONFIG_SND_SOC_DMIC)        += snd-soc-dmic.o
 +++++obj-$(CONFIG_SND_SOC_ES8328)      += snd-soc-es8328.o
 +++++obj-$(CONFIG_SND_SOC_ES8328_I2C)+= snd-soc-es8328-i2c.o
 +++++obj-$(CONFIG_SND_SOC_ES8328_SPI)+= snd-soc-es8328-spi.o
      obj-$(CONFIG_SND_SOC_ISABELLE)    += snd-soc-isabelle.o
      obj-$(CONFIG_SND_SOC_JZ4740_CODEC)        += snd-soc-jz4740-codec.o
      obj-$(CONFIG_SND_SOC_L3)  += snd-soc-l3.o
@@@@@@@ -266,6 -258,6 -258,6 -258,6 -258,6 -259,7 +267,7 @@@@@@@ obj-$(CONFIG_SND_SOC_SSM2518)  += snd-so
      obj-$(CONFIG_SND_SOC_SSM2602)     += snd-soc-ssm2602.o
      obj-$(CONFIG_SND_SOC_SSM2602_SPI) += snd-soc-ssm2602-spi.o
      obj-$(CONFIG_SND_SOC_SSM2602_I2C) += snd-soc-ssm2602-i2c.o
+++++ obj-$(CONFIG_SND_SOC_SSM4567)     += snd-soc-ssm4567.o
      obj-$(CONFIG_SND_SOC_STA32X)   += snd-soc-sta32x.o
      obj-$(CONFIG_SND_SOC_STA350)   += snd-soc-sta350.o
      obj-$(CONFIG_SND_SOC_STA529)   += snd-soc-sta529.o
index 527de04635484516d51c506d82d76caeeea02598,484b3bbe8624be1cff63a1bd5154c8034ab80ef8,484b3bbe8624be1cff63a1bd5154c8034ab80ef8,484b3bbe8624be1cff63a1bd5154c8034ab80ef8,7c418485716a4faad71552160ffdfa04942c1e4b,484b3bbe8624be1cff63a1bd5154c8034ab80ef8..314eaece1b7d6ac50bfb2d8af18ef1247bd3194c
@@@@@@@ -192,7 -192,7 -192,7 -192,7 -192,7 -192,7 +192,7 @@@@@@@ static const struct snd_pcm_hw_constrai
      };
      
      static const unsigned int ssm2602_rates_11289600[] = {
---- -  8000, 44100, 88200,
++++ +  8000, 11025, 22050, 44100, 88200,
      };
      
      static const struct snd_pcm_hw_constraint_list ssm2602_constraints_11289600 = {
@@@@@@@ -237,6 -237,6 -237,6 -237,6 -237,16 -237,6 +237,16 @@@@@@@ static const struct ssm2602_coeff ssm26
        {18432000, 96000, SSM2602_COEFF_SRATE(0x7, 0x1, 0x0)},
        {12000000, 96000, SSM2602_COEFF_SRATE(0x7, 0x0, 0x1)},
      
++++ +  /* 11.025k */
++++ +  {11289600, 11025, SSM2602_COEFF_SRATE(0xc, 0x0, 0x0)},
++++ +  {16934400, 11025, SSM2602_COEFF_SRATE(0xc, 0x1, 0x0)},
++++ +  {12000000, 11025, SSM2602_COEFF_SRATE(0xc, 0x1, 0x1)},
++++ +
++++ +  /* 22.05k */
++++ +  {11289600, 22050, SSM2602_COEFF_SRATE(0xd, 0x0, 0x0)},
++++ +  {16934400, 22050, SSM2602_COEFF_SRATE(0xd, 0x1, 0x0)},
++++ +  {12000000, 22050, SSM2602_COEFF_SRATE(0xd, 0x1, 0x1)},
++++ +
        /* 44.1k */
        {11289600, 44100, SSM2602_COEFF_SRATE(0x8, 0x0, 0x0)},
        {16934400, 44100, SSM2602_COEFF_SRATE(0x8, 0x1, 0x0)},
@@@@@@@ -467,7 -467,7 -467,7 -467,7 -477,8 -467,7 +477,8 @@@@@@@ static int ssm2602_set_bias_level(struc
        return 0;
      }
      
---- -#define SSM2602_RATES (SNDRV_PCM_RATE_8000 | SNDRV_PCM_RATE_16000 |\
++++ +#define SSM2602_RATES (SNDRV_PCM_RATE_8000 | SNDRV_PCM_RATE_11025 |\
++++ +          SNDRV_PCM_RATE_16000 | SNDRV_PCM_RATE_22050 |\
                SNDRV_PCM_RATE_32000 | SNDRV_PCM_RATE_44100 |\
                SNDRV_PCM_RATE_48000 | SNDRV_PCM_RATE_88200 |\
                SNDRV_PCM_RATE_96000)
@@@@@@@ -502,11 -502,18 -502,18 -502,18 -513,18 -502,18 +513,11 @@@@@@@ static struct snd_soc_dai_driver ssm260
        .symmetric_samplebits = 1,
      };
      
 -----static int ssm2602_suspend(struct snd_soc_codec *codec)
 -----{
 -----  ssm2602_set_bias_level(codec, SND_SOC_BIAS_OFF);
 -----  return 0;
 -----}
 -----
      static int ssm2602_resume(struct snd_soc_codec *codec)
      {
        struct ssm2602_priv *ssm2602 = snd_soc_codec_get_drvdata(codec);
      
        regcache_sync(ssm2602->regmap);
 -----  ssm2602_set_bias_level(codec, SND_SOC_BIAS_STANDBY);
      
        return 0;
      }
@@@@@@@ -579,14 -586,27 -586,27 -586,27 -597,27 -586,27 +590,14 @@@@@@@ static int ssm260x_codec_probe(struct s
                break;
        }
      
 -----  if (ret)
 -----          return ret;
 -----
 -----  ssm2602_set_bias_level(codec, SND_SOC_BIAS_STANDBY);
 -----
 -----  return 0;
 -----}
 -----
 -----/* remove everything here */
 -----static int ssm2602_remove(struct snd_soc_codec *codec)
 -----{
 -----  ssm2602_set_bias_level(codec, SND_SOC_BIAS_OFF);
 -----  return 0;
 +++++  return ret;
      }
      
      static struct snd_soc_codec_driver soc_codec_dev_ssm2602 = {
        .probe =        ssm260x_codec_probe,
 -----  .remove =       ssm2602_remove,
 -----  .suspend =      ssm2602_suspend,
        .resume =       ssm2602_resume,
        .set_bias_level = ssm2602_set_bias_level,
 +++++  .suspend_bias_off = true,
      
        .controls = ssm260x_snd_controls,
        .num_controls = ARRAY_SIZE(ssm260x_snd_controls),
@@@@@@@ -627,7 -647,7 -647,7 -647,7 -658,7 -647,7 +638,7 @@@@@@@ int ssm2602_probe(struct device *dev, e
                return -ENOMEM;
      
        dev_set_drvdata(dev, ssm2602);
 --- -  ssm2602->type = SSM2602;
 +++ +  ssm2602->type = type;
        ssm2602->regmap = regmap;
      
        return snd_soc_register_codec(dev, &soc_codec_dev_ssm2602,
index ae4e408810ecf4d0d96e448b54151b4762b59598,70acfe4a9bd5a969e5418daf098a5e40115191bb,70acfe4a9bd5a969e5418daf098a5e40115191bb,5bda3239b2a030d6dff75aeaf62e17944815d3a4,70acfe4a9bd5a969e5418daf098a5e40115191bb,70acfe4a9bd5a969e5418daf098a5e40115191bb..9b791621294cf6d2f1c1059df8d3de9ce2634639
      
      #include <linux/bitrev.h>
      #include <linux/clk.h>
--- --#include <linux/clk-private.h>
      #include <linux/module.h>
      #include <linux/of_address.h>
      #include <linux/of_device.h>
@@@@@@@ -1040,7 -1040,7 -1040,7 -1039,7 -1040,7 -1040,7 +1039,7 @@@@@@@ static bool fsl_spdif_writeable_reg(str
        }
      }
      
 -----static struct regmap_config fsl_spdif_regmap_config = {
 +++++static const struct regmap_config fsl_spdif_regmap_config = {
        .reg_bits = 32,
        .reg_stride = 4,
        .val_bits = 32,
@@@@@@@ -1184,6 -1184,9 -1184,9 -1183,9 -1184,9 -1184,9 +1183,6 @@@@@@@ static int fsl_spdif_probe(struct platf
        memcpy(&spdif_priv->cpu_dai_drv, &fsl_spdif_dai, sizeof(fsl_spdif_dai));
        spdif_priv->cpu_dai_drv.name = spdif_priv->name;
      
 -----  if (of_property_read_bool(np, "big-endian"))
 -----          fsl_spdif_regmap_config.val_format_endian = REGMAP_ENDIAN_BIG;
 -----
        /* Get the addresses and IRQ */
        res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
        regs = devm_ioremap_resource(&pdev->dev, res);
This page took 0.101937 seconds and 4 git commands to generate.