aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux
diff options
context:
space:
mode:
authorMark Brown <broonie@linaro.org>2014-03-23 10:00:41 -0400
committerMark Brown <broonie@linaro.org>2014-03-23 10:00:41 -0400
commitd66fa86956149a211db3d7ae9e9f2536b65ccde4 (patch)
tree013c71ec06c6d9710a183854ce1a0fe33530a0db /include/linux
parentebec909345bbb1e2d06cd0d94f65664edcc0f208 (diff)
parentdeeed33850c8a376addabbf971df433b2a1ba74c (diff)
Merge tag 'asoc-v3.15' into asoc-next
ASoC: Updates for v3.15 Quite a busy release for ASoC this time, more on janitorial work than exciting new features but welcome nontheless: - Lots of cleanups from Takashi for enumerations; the original API for these was error prone so he's refactored lots of code to use more modern APIs which avoid issues. - Elimination of the ASoC level wrappers for I2C and SPI moving us closer to converting to regmap completely and avoiding some randconfig hassle. - Provide both manually and transparently locked DAPM APIs rather than a mix of the two fixing some concurrency issues. - Start converting CODEC drivers to use separate bus interface drivers rather than having them all in one file helping avoid dependency issues. - DPCM support for Intel Haswell and Bay Trail platforms. - Lots of work on improvements for simple-card, DaVinci and the Renesas rcar drivers. - New drivers for Analog Devices ADAU1977, TI PCM512x and parts of the CSR SiRF SoC. # gpg: Signature made Wed 12 Mar 2014 23:05:45 GMT using RSA key ID 7EA229BD # gpg: Good signature from "Mark Brown <broonie@sirena.org.uk>" # gpg: aka "Mark Brown <broonie@debian.org>" # gpg: aka "Mark Brown <broonie@kernel.org>" # gpg: aka "Mark Brown <broonie@tardis.ed.ac.uk>" # gpg: aka "Mark Brown <broonie@linaro.org>" # gpg: aka "Mark Brown <Mark.Brown@linaro.org>"
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/atmel-ssc.h1
-rw-r--r--include/linux/mfd/arizona/registers.h6
-rw-r--r--include/linux/platform_data/adau1977.h45
-rw-r--r--include/linux/platform_data/asoc-s3c.h3
-rw-r--r--include/linux/platform_data/asoc-s3c24xx_simtec.h3
-rw-r--r--include/linux/platform_data/davinci_asp.h4
-rw-r--r--include/linux/regmap.h9
7 files changed, 63 insertions, 8 deletions
diff --git a/include/linux/atmel-ssc.h b/include/linux/atmel-ssc.h
index 66a0e5384edd..571a12ebb018 100644
--- a/include/linux/atmel-ssc.h
+++ b/include/linux/atmel-ssc.h
@@ -18,6 +18,7 @@ struct ssc_device {
18 struct clk *clk; 18 struct clk *clk;
19 int user; 19 int user;
20 int irq; 20 int irq;
21 bool clk_from_rk_pin;
21}; 22};
22 23
23struct ssc_device * __must_check ssc_request(unsigned int ssc_num); 24struct ssc_device * __must_check ssc_request(unsigned int ssc_num);
diff --git a/include/linux/mfd/arizona/registers.h b/include/linux/mfd/arizona/registers.h
index fdf3aa376eb2..3ddaa634b19d 100644
--- a/include/linux/mfd/arizona/registers.h
+++ b/include/linux/mfd/arizona/registers.h
@@ -1702,9 +1702,9 @@
1702/* 1702/*
1703 * R373 (0x175) - FLL1 Control 5 1703 * R373 (0x175) - FLL1 Control 5
1704 */ 1704 */
1705#define ARIZONA_FLL1_FRATIO_MASK 0x0700 /* FLL1_FRATIO - [10:8] */ 1705#define ARIZONA_FLL1_FRATIO_MASK 0x0F00 /* FLL1_FRATIO - [11:8] */
1706#define ARIZONA_FLL1_FRATIO_SHIFT 8 /* FLL1_FRATIO - [10:8] */ 1706#define ARIZONA_FLL1_FRATIO_SHIFT 8 /* FLL1_FRATIO - [11:8] */
1707#define ARIZONA_FLL1_FRATIO_WIDTH 3 /* FLL1_FRATIO - [10:8] */ 1707#define ARIZONA_FLL1_FRATIO_WIDTH 4 /* FLL1_FRATIO - [11:8] */
1708#define ARIZONA_FLL1_OUTDIV_MASK 0x000E /* FLL1_OUTDIV - [3:1] */ 1708#define ARIZONA_FLL1_OUTDIV_MASK 0x000E /* FLL1_OUTDIV - [3:1] */
1709#define ARIZONA_FLL1_OUTDIV_SHIFT 1 /* FLL1_OUTDIV - [3:1] */ 1709#define ARIZONA_FLL1_OUTDIV_SHIFT 1 /* FLL1_OUTDIV - [3:1] */
1710#define ARIZONA_FLL1_OUTDIV_WIDTH 3 /* FLL1_OUTDIV - [3:1] */ 1710#define ARIZONA_FLL1_OUTDIV_WIDTH 3 /* FLL1_OUTDIV - [3:1] */
diff --git a/include/linux/platform_data/adau1977.h b/include/linux/platform_data/adau1977.h
new file mode 100644
index 000000000000..bed11d908f92
--- /dev/null
+++ b/include/linux/platform_data/adau1977.h
@@ -0,0 +1,45 @@
1/*
2 * ADAU1977/ADAU1978/ADAU1979 driver
3 *
4 * Copyright 2014 Analog Devices Inc.
5 * Author: Lars-Peter Clausen <lars@metafoo.de>
6 *
7 * Licensed under the GPL-2.
8 */
9
10#ifndef __LINUX_PLATFORM_DATA_ADAU1977_H__
11#define __LINUX_PLATFORM_DATA_ADAU1977_H__
12
13/**
14 * enum adau1977_micbias - ADAU1977 MICBIAS pin voltage setting
15 * @ADAU1977_MICBIAS_5V0: MICBIAS is set to 5.0 V
16 * @ADAU1977_MICBIAS_5V5: MICBIAS is set to 5.5 V
17 * @ADAU1977_MICBIAS_6V0: MICBIAS is set to 6.0 V
18 * @ADAU1977_MICBIAS_6V5: MICBIAS is set to 6.5 V
19 * @ADAU1977_MICBIAS_7V0: MICBIAS is set to 7.0 V
20 * @ADAU1977_MICBIAS_7V5: MICBIAS is set to 7.5 V
21 * @ADAU1977_MICBIAS_8V0: MICBIAS is set to 8.0 V
22 * @ADAU1977_MICBIAS_8V5: MICBIAS is set to 8.5 V
23 * @ADAU1977_MICBIAS_9V0: MICBIAS is set to 9.0 V
24 */
25enum adau1977_micbias {
26 ADAU1977_MICBIAS_5V0 = 0x0,
27 ADAU1977_MICBIAS_5V5 = 0x1,
28 ADAU1977_MICBIAS_6V0 = 0x2,
29 ADAU1977_MICBIAS_6V5 = 0x3,
30 ADAU1977_MICBIAS_7V0 = 0x4,
31 ADAU1977_MICBIAS_7V5 = 0x5,
32 ADAU1977_MICBIAS_8V0 = 0x6,
33 ADAU1977_MICBIAS_8V5 = 0x7,
34 ADAU1977_MICBIAS_9V0 = 0x8,
35};
36
37/**
38 * struct adau1977_platform_data - Platform configuration data for the ADAU1977
39 * @micbias: Specifies the voltage for the MICBIAS pin
40 */
41struct adau1977_platform_data {
42 enum adau1977_micbias micbias;
43};
44
45#endif
diff --git a/include/linux/platform_data/asoc-s3c.h b/include/linux/platform_data/asoc-s3c.h
index 9efc04dd255a..709c6f7e2f8c 100644
--- a/include/linux/platform_data/asoc-s3c.h
+++ b/include/linux/platform_data/asoc-s3c.h
@@ -1,5 +1,4 @@
1/* arch/arm/plat-samsung/include/plat/audio.h 1/*
2 *
3 * Copyright (c) 2009 Samsung Electronics Co. Ltd 2 * Copyright (c) 2009 Samsung Electronics Co. Ltd
4 * Author: Jaswinder Singh <jassi.brar@samsung.com> 3 * Author: Jaswinder Singh <jassi.brar@samsung.com>
5 * 4 *
diff --git a/include/linux/platform_data/asoc-s3c24xx_simtec.h b/include/linux/platform_data/asoc-s3c24xx_simtec.h
index 376af5286a3e..d220e54123aa 100644
--- a/include/linux/platform_data/asoc-s3c24xx_simtec.h
+++ b/include/linux/platform_data/asoc-s3c24xx_simtec.h
@@ -1,5 +1,4 @@
1/* arch/arm/plat-samsung/include/plat/audio-simtec.h 1/*
2 *
3 * Copyright 2008 Simtec Electronics 2 * Copyright 2008 Simtec Electronics
4 * http://armlinux.simtec.co.uk/ 3 * http://armlinux.simtec.co.uk/
5 * Ben Dooks <ben@simtec.co.uk> 4 * Ben Dooks <ben@simtec.co.uk>
diff --git a/include/linux/platform_data/davinci_asp.h b/include/linux/platform_data/davinci_asp.h
index 5245992b0367..85ad68f9206a 100644
--- a/include/linux/platform_data/davinci_asp.h
+++ b/include/linux/platform_data/davinci_asp.h
@@ -18,7 +18,7 @@
18 18
19#include <linux/genalloc.h> 19#include <linux/genalloc.h>
20 20
21struct snd_platform_data { 21struct davinci_mcasp_pdata {
22 u32 tx_dma_offset; 22 u32 tx_dma_offset;
23 u32 rx_dma_offset; 23 u32 rx_dma_offset;
24 int asp_chan_q; /* event queue number for ASP channel */ 24 int asp_chan_q; /* event queue number for ASP channel */
@@ -87,6 +87,8 @@ struct snd_platform_data {
87 int tx_dma_channel; 87 int tx_dma_channel;
88 int rx_dma_channel; 88 int rx_dma_channel;
89}; 89};
90/* TODO: Fix arch/arm/mach-davinci/ users and remove this define */
91#define snd_platform_data davinci_mcasp_pdata
90 92
91enum { 93enum {
92 MCASP_VERSION_1 = 0, /* DM646x */ 94 MCASP_VERSION_1 = 0, /* DM646x */
diff --git a/include/linux/regmap.h b/include/linux/regmap.h
index 4149f1a9b003..3e1a2e4a92ad 100644
--- a/include/linux/regmap.h
+++ b/include/linux/regmap.h
@@ -423,6 +423,8 @@ bool regmap_check_range_table(struct regmap *map, unsigned int reg,
423 423
424int regmap_register_patch(struct regmap *map, const struct reg_default *regs, 424int regmap_register_patch(struct regmap *map, const struct reg_default *regs,
425 int num_regs); 425 int num_regs);
426int regmap_parse_val(struct regmap *map, const void *buf,
427 unsigned int *val);
426 428
427static inline bool regmap_reg_in_range(unsigned int reg, 429static inline bool regmap_reg_in_range(unsigned int reg,
428 const struct regmap_range *range) 430 const struct regmap_range *range)
@@ -695,6 +697,13 @@ static inline int regmap_register_patch(struct regmap *map,
695 return -EINVAL; 697 return -EINVAL;
696} 698}
697 699
700static inline int regmap_parse_val(struct regmap *map, const void *buf,
701 unsigned int *val)
702{
703 WARN_ONCE(1, "regmap API is disabled");
704 return -EINVAL;
705}
706
698static inline struct regmap *dev_get_regmap(struct device *dev, 707static inline struct regmap *dev_get_regmap(struct device *dev,
699 const char *name) 708 const char *name)
700{ 709{