devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/5]  Minor fixes and DT support
@ 2016-02-16 12:56 Andreas Irestål
  2016-02-16 12:56 ` [PATCH v2 1/5] ASoC: adau17x1: Fix incorrect BCLK ratio definitions Andreas Irestål
                   ` (4 more replies)
  0 siblings, 5 replies; 11+ messages in thread
From: Andreas Irestål @ 2016-02-16 12:56 UTC (permalink / raw)
  To: Lars-Peter Clausen, Liam Girdwood, Mark Brown, Rob Herring,
	Pawel Moll, Mark Rutland, Ian Campbell, Kumar Gala
  Cc: Andreas Irestål, devicetree, alsa-devel, linux-kernel

This set of patches fixes some minor typos and adds DT support for the
adau17x1 codec drivers. I've only been able to test the 1761 part on
real hardware since I don't have any adau1781 hardware at the moment.

Currently, quite a lot of options are provided through the platform_data
struct, so it made sense parsing the DT and create a platform_data struct
from these parameters not to break anything.

Changes since v1:
 - Added vendor prefix "adi," to DT properties
 - DT parsing moved to main probe function

Andreas Irestål (5):
  ASoC: adau17x1: Fix incorrect BCLK ratio definitions
  ASoC: adau17x1: Correct typos in file headers
  ASoC: adau17x1: Add adau17x1 bindings document
  ASoC: adau17x1: Add basic DT support for adau17x1
  ASoC: adau17x1: Support platform data via DT

 .../devicetree/bindings/sound/adi,adau17x1.txt     |  55 +++++++++
 include/dt-bindings/sound/adau17x1.h               |  14 +++
 include/linux/platform_data/adau17x1.h             |   2 +-
 sound/soc/codecs/adau1761-i2c.c                    |  14 ++-
 sound/soc/codecs/adau1761-spi.c                    |  14 ++-
 sound/soc/codecs/adau1761.c                        | 129 ++++++++++++++++++++-
 sound/soc/codecs/adau1781-i2c.c                    |  10 ++
 sound/soc/codecs/adau1781-spi.c                    |  10 ++
 sound/soc/codecs/adau1781.c                        |  50 +++++++-
 sound/soc/codecs/adau17x1.h                        |   6 +-
 10 files changed, 296 insertions(+), 8 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/sound/adi,adau17x1.txt
 create mode 100644 include/dt-bindings/sound/adau17x1.h

-- 
2.1.4

_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH v2 1/5] ASoC: adau17x1: Fix incorrect BCLK ratio definitions
  2016-02-16 12:56 [PATCH v2 0/5] Minor fixes and DT support Andreas Irestål
@ 2016-02-16 12:56 ` Andreas Irestål
  2016-02-16 12:56 ` [PATCH v2 2/5] ASoC: adau17x1: Correct typos in file headers Andreas Irestål
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 11+ messages in thread
From: Andreas Irestål @ 2016-02-16 12:56 UTC (permalink / raw)
  To: Lars-Peter Clausen, Liam Girdwood, Mark Brown, Rob Herring,
	Pawel Moll, Mark Rutland, Ian Campbell, Kumar Gala
  Cc: devicetree, alsa-devel, linux-kernel, Andreas Irestål

Signed-off-by: Andreas Irestål <andire@axis.com>
---
 sound/soc/codecs/adau17x1.h | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/sound/soc/codecs/adau17x1.h b/sound/soc/codecs/adau17x1.h
index e13583e..5ae87a0 100644
--- a/sound/soc/codecs/adau17x1.h
+++ b/sound/soc/codecs/adau17x1.h
@@ -103,9 +103,9 @@ bool adau17x1_has_dsp(struct adau *adau);
 #define ADAU17X1_CLOCK_CONTROL_CORECLK_SRC_PLL	BIT(3)
 #define ADAU17X1_CLOCK_CONTROL_SYSCLK_EN	BIT(0)
 
-#define ADAU17X1_SERIAL_PORT1_BCLK32		(0x0 << 5)
-#define ADAU17X1_SERIAL_PORT1_BCLK48		(0x1 << 5)
-#define ADAU17X1_SERIAL_PORT1_BCLK64		(0x2 << 5)
+#define ADAU17X1_SERIAL_PORT1_BCLK64		(0x0 << 5)
+#define ADAU17X1_SERIAL_PORT1_BCLK32		(0x1 << 5)
+#define ADAU17X1_SERIAL_PORT1_BCLK48		(0x2 << 5)
 #define ADAU17X1_SERIAL_PORT1_BCLK128		(0x3 << 5)
 #define ADAU17X1_SERIAL_PORT1_BCLK256		(0x4 << 5)
 #define ADAU17X1_SERIAL_PORT1_BCLK_MASK		(0x7 << 5)
-- 
2.1.4

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH v2 2/5] ASoC: adau17x1: Correct typos in file headers
  2016-02-16 12:56 [PATCH v2 0/5] Minor fixes and DT support Andreas Irestål
  2016-02-16 12:56 ` [PATCH v2 1/5] ASoC: adau17x1: Fix incorrect BCLK ratio definitions Andreas Irestål
@ 2016-02-16 12:56 ` Andreas Irestål
  2016-02-16 12:56 ` [PATCH v2 3/5] ASoC: adau17x1: Add adau17x1 bindings document Andreas Irestål
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 11+ messages in thread
From: Andreas Irestål @ 2016-02-16 12:56 UTC (permalink / raw)
  To: Lars-Peter Clausen, Liam Girdwood, Mark Brown, Rob Herring,
	Pawel Moll, Mark Rutland, Ian Campbell, Kumar Gala
  Cc: devicetree, alsa-devel, linux-kernel, Andreas Irestål

Signed-off-by: Andreas Irestål <andire@axis.com>
---
 include/linux/platform_data/adau17x1.h | 2 +-
 sound/soc/codecs/adau1761-i2c.c        | 2 +-
 sound/soc/codecs/adau1761-spi.c        | 2 +-
 sound/soc/codecs/adau1761.c            | 2 +-
 sound/soc/codecs/adau1781.c            | 2 +-
 5 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/include/linux/platform_data/adau17x1.h b/include/linux/platform_data/adau17x1.h
index a81766c..9db1b90 100644
--- a/include/linux/platform_data/adau17x1.h
+++ b/include/linux/platform_data/adau17x1.h
@@ -1,5 +1,5 @@
 /*
- * Driver for ADAU1761/ADAU1461/ADAU1761/ADAU1961/ADAU1781/ADAU1781 codecs
+ * Driver for ADAU1361/ADAU1461/ADAU1761/ADAU1961/ADAU1381/ADAU1781 codecs
  *
  * Copyright 2011-2014 Analog Devices Inc.
  * Author: Lars-Peter Clausen <lars@metafoo.de>
diff --git a/sound/soc/codecs/adau1761-i2c.c b/sound/soc/codecs/adau1761-i2c.c
index 348ccb1..a1b1267 100644
--- a/sound/soc/codecs/adau1761-i2c.c
+++ b/sound/soc/codecs/adau1761-i2c.c
@@ -1,5 +1,5 @@
 /*
- * Driver for ADAU1761/ADAU1461/ADAU1761/ADAU1961 codec
+ * Driver for ADAU1361/ADAU1461/ADAU1761/ADAU1961 codec
  *
  * Copyright 2014 Analog Devices Inc.
  *  Author: Lars-Peter Clausen <lars@metafoo.de>
diff --git a/sound/soc/codecs/adau1761-spi.c b/sound/soc/codecs/adau1761-spi.c
index 8bc1fbd..1883349 100644
--- a/sound/soc/codecs/adau1761-spi.c
+++ b/sound/soc/codecs/adau1761-spi.c
@@ -1,5 +1,5 @@
 /*
- * Driver for ADAU1761/ADAU1461/ADAU1761/ADAU1961 codec
+ * Driver for ADAU1361/ADAU1461/ADAU1761/ADAU1961 codec
  *
  * Copyright 2014 Analog Devices Inc.
  *  Author: Lars-Peter Clausen <lars@metafoo.de>
diff --git a/sound/soc/codecs/adau1761.c b/sound/soc/codecs/adau1761.c
index 2f12477..16fed36 100644
--- a/sound/soc/codecs/adau1761.c
+++ b/sound/soc/codecs/adau1761.c
@@ -1,5 +1,5 @@
 /*
- * Driver for ADAU1761/ADAU1461/ADAU1761/ADAU1961 codec
+ * Driver for ADAU1361/ADAU1461/ADAU1761/ADAU1961 codec
  *
  * Copyright 2011-2013 Analog Devices Inc.
  * Author: Lars-Peter Clausen <lars@metafoo.de>
diff --git a/sound/soc/codecs/adau1781.c b/sound/soc/codecs/adau1781.c
index fde9068..bc1bb56 100644
--- a/sound/soc/codecs/adau1781.c
+++ b/sound/soc/codecs/adau1781.c
@@ -1,5 +1,5 @@
 /*
- * Driver for ADAU1781/ADAU1781 codec
+ * Driver for ADAU1381/ADAU1781 codec
  *
  * Copyright 2011-2013 Analog Devices Inc.
  * Author: Lars-Peter Clausen <lars@metafoo.de>
-- 
2.1.4

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH v2 3/5] ASoC: adau17x1: Add adau17x1 bindings document
  2016-02-16 12:56 [PATCH v2 0/5] Minor fixes and DT support Andreas Irestål
  2016-02-16 12:56 ` [PATCH v2 1/5] ASoC: adau17x1: Fix incorrect BCLK ratio definitions Andreas Irestål
  2016-02-16 12:56 ` [PATCH v2 2/5] ASoC: adau17x1: Correct typos in file headers Andreas Irestål
@ 2016-02-16 12:56 ` Andreas Irestål
  2016-02-18 14:37   ` Rob Herring
  2016-02-16 12:56 ` [PATCH v2 4/5] ASoC: adau17x1: Add basic DT support for adau17x1 Andreas Irestål
  2016-02-16 12:56 ` [PATCH v2 5/5] ASoC: adau17x1: Support platform data via DT Andreas Irestål
  4 siblings, 1 reply; 11+ messages in thread
From: Andreas Irestål @ 2016-02-16 12:56 UTC (permalink / raw)
  To: Lars-Peter Clausen, Liam Girdwood, Mark Brown, Rob Herring,
	Pawel Moll, Mark Rutland, Ian Campbell, Kumar Gala
  Cc: devicetree, alsa-devel, linux-kernel, Andreas Irestål

Signed-off-by: Andreas Irestål <andire@axis.com>
---
 .../devicetree/bindings/sound/adi,adau17x1.txt     | 24 ++++++++++++++++++++++
 1 file changed, 24 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/sound/adi,adau17x1.txt

diff --git a/Documentation/devicetree/bindings/sound/adi,adau17x1.txt b/Documentation/devicetree/bindings/sound/adi,adau17x1.txt
new file mode 100644
index 0000000..8dbce0e
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/adi,adau17x1.txt
@@ -0,0 +1,24 @@
+Analog Devices ADAU1361/ADAU1461/ADAU1761/ADAU1961/ADAU1381/ADAU1781
+
+Required properties:
+
+ - compatible:		Should contain one of the following:
+			"adi,adau1361"
+			"adi,adau1461"
+			"adi,adau1761"
+			"adi,adau1961"
+			"adi,adau1381"
+			"adi,adau1781"
+
+ - reg:			The i2c address. Value depends on the state of ADDR0
+			and ADDR1, as wired in hardware.
+
+Examples:
+#include <dt-bindings/sound/adau17x1.h>
+
+	i2c_bus {
+		adau1361@38 {
+			compatible = "adi,adau1761";
+			reg = <0x38>;
+		};
+	};
-- 
2.1.4

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH v2 4/5] ASoC: adau17x1: Add basic DT support for adau17x1
  2016-02-16 12:56 [PATCH v2 0/5] Minor fixes and DT support Andreas Irestål
                   ` (2 preceding siblings ...)
  2016-02-16 12:56 ` [PATCH v2 3/5] ASoC: adau17x1: Add adau17x1 bindings document Andreas Irestål
@ 2016-02-16 12:56 ` Andreas Irestål
  2016-02-16 12:56 ` [PATCH v2 5/5] ASoC: adau17x1: Support platform data via DT Andreas Irestål
  4 siblings, 0 replies; 11+ messages in thread
From: Andreas Irestål @ 2016-02-16 12:56 UTC (permalink / raw)
  To: Lars-Peter Clausen, Liam Girdwood, Mark Brown, Rob Herring,
	Pawel Moll, Mark Rutland, Ian Campbell, Kumar Gala
  Cc: devicetree, alsa-devel, linux-kernel, Andreas Irestål

Signed-off-by: Andreas Irestål <andire@axis.com>
---
 sound/soc/codecs/adau1761-i2c.c | 12 ++++++++++++
 sound/soc/codecs/adau1761-spi.c | 12 ++++++++++++
 sound/soc/codecs/adau1781-i2c.c | 10 ++++++++++
 sound/soc/codecs/adau1781-spi.c | 10 ++++++++++
 4 files changed, 44 insertions(+)

diff --git a/sound/soc/codecs/adau1761-i2c.c b/sound/soc/codecs/adau1761-i2c.c
index a1b1267..8de010f 100644
--- a/sound/soc/codecs/adau1761-i2c.c
+++ b/sound/soc/codecs/adau1761-i2c.c
@@ -44,9 +44,21 @@ static const struct i2c_device_id adau1761_i2c_ids[] = {
 };
 MODULE_DEVICE_TABLE(i2c, adau1761_i2c_ids);
 
+#if defined(CONFIG_OF)
+static const struct of_device_id adau1761_i2c_dt_ids[] = {
+	{ .compatible = "adi,adau1361", },
+	{ .compatible = "adi,adau1461", },
+	{ .compatible = "adi,adau1761", },
+	{ .compatible = "adi,adau1961", },
+	{ },
+};
+MODULE_DEVICE_TABLE(of, adau1761_i2c_dt_ids);
+#endif
+
 static struct i2c_driver adau1761_i2c_driver = {
 	.driver = {
 		.name = "adau1761",
+		.of_match_table = of_match_ptr(adau1761_i2c_dt_ids),
 	},
 	.probe = adau1761_i2c_probe,
 	.remove = adau1761_i2c_remove,
diff --git a/sound/soc/codecs/adau1761-spi.c b/sound/soc/codecs/adau1761-spi.c
index 1883349..d917124 100644
--- a/sound/soc/codecs/adau1761-spi.c
+++ b/sound/soc/codecs/adau1761-spi.c
@@ -61,9 +61,21 @@ static const struct spi_device_id adau1761_spi_id[] = {
 };
 MODULE_DEVICE_TABLE(spi, adau1761_spi_id);
 
+#if defined(CONFIG_OF)
+static const struct of_device_id adau1761_spi_dt_ids[] = {
+	{ .compatible = "adi,adau1361", },
+	{ .compatible = "adi,adau1461", },
+	{ .compatible = "adi,adau1761", },
+	{ .compatible = "adi,adau1961", },
+	{ },
+};
+MODULE_DEVICE_TABLE(of, adau1761_spi_dt_ids);
+#endif
+
 static struct spi_driver adau1761_spi_driver = {
 	.driver = {
 		.name = "adau1761",
+		.of_match_table = of_match_ptr(adau1761_spi_dt_ids),
 	},
 	.probe = adau1761_spi_probe,
 	.remove = adau1761_spi_remove,
diff --git a/sound/soc/codecs/adau1781-i2c.c b/sound/soc/codecs/adau1781-i2c.c
index 0e32bba..06cbca8 100644
--- a/sound/soc/codecs/adau1781-i2c.c
+++ b/sound/soc/codecs/adau1781-i2c.c
@@ -42,9 +42,19 @@ static const struct i2c_device_id adau1781_i2c_ids[] = {
 };
 MODULE_DEVICE_TABLE(i2c, adau1781_i2c_ids);
 
+#if defined(CONFIG_OF)
+static const struct of_device_id adau1781_i2c_dt_ids[] = {
+	{ .compatible = "adi,adau1381", },
+	{ .compatible = "adi,adau1781", },
+	{ },
+};
+MODULE_DEVICE_TABLE(of, adau1781_i2c_dt_ids);
+#endif
+
 static struct i2c_driver adau1781_i2c_driver = {
 	.driver = {
 		.name = "adau1781",
+		.of_match_table = of_match_ptr(adau1781_i2c_dt_ids),
 	},
 	.probe = adau1781_i2c_probe,
 	.remove = adau1781_i2c_remove,
diff --git a/sound/soc/codecs/adau1781-spi.c b/sound/soc/codecs/adau1781-spi.c
index 33a73ff..3d965a0 100644
--- a/sound/soc/codecs/adau1781-spi.c
+++ b/sound/soc/codecs/adau1781-spi.c
@@ -59,9 +59,19 @@ static const struct spi_device_id adau1781_spi_id[] = {
 };
 MODULE_DEVICE_TABLE(spi, adau1781_spi_id);
 
+#if defined(CONFIG_OF)
+static const struct of_device_id adau1781_spi_dt_ids[] = {
+	{ .compatible = "adi,adau1381", },
+	{ .compatible = "adi,adau1781", },
+	{ },
+};
+MODULE_DEVICE_TABLE(of, adau1781_spi_dt_ids);
+#endif
+
 static struct spi_driver adau1781_spi_driver = {
 	.driver = {
 		.name = "adau1781",
+		.of_match_table = of_match_ptr(adau1781_spi_dt_ids),
 	},
 	.probe = adau1781_spi_probe,
 	.remove = adau1781_spi_remove,
-- 
2.1.4

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH v2 5/5] ASoC: adau17x1: Support platform data via DT
  2016-02-16 12:56 [PATCH v2 0/5] Minor fixes and DT support Andreas Irestål
                   ` (3 preceding siblings ...)
  2016-02-16 12:56 ` [PATCH v2 4/5] ASoC: adau17x1: Add basic DT support for adau17x1 Andreas Irestål
@ 2016-02-16 12:56 ` Andreas Irestål
       [not found]   ` <1455627405-18155-6-git-send-email-andire-VrBV9hrLPhE@public.gmane.org>
  4 siblings, 1 reply; 11+ messages in thread
From: Andreas Irestål @ 2016-02-16 12:56 UTC (permalink / raw)
  To: Lars-Peter Clausen, Liam Girdwood, Mark Brown, Rob Herring,
	Pawel Moll, Mark Rutland, Ian Campbell, Kumar Gala
  Cc: devicetree, alsa-devel, linux-kernel, Andreas Irestål

Currently, it is only possible to configure HW-specific options to the
adau17x1 codecs by providing a platform data struct. With this patch,
it is possible to provide the same data via DT instead.

Signed-off-by: Andreas Irestål <andire@axis.com>
---
 .../devicetree/bindings/sound/adi,adau17x1.txt     |  31 +++++
 include/dt-bindings/sound/adau17x1.h               |  14 +++
 sound/soc/codecs/adau1761.c                        | 127 +++++++++++++++++++++
 sound/soc/codecs/adau1781.c                        |  48 ++++++++
 4 files changed, 220 insertions(+)
 create mode 100644 include/dt-bindings/sound/adau17x1.h

diff --git a/Documentation/devicetree/bindings/sound/adi,adau17x1.txt b/Documentation/devicetree/bindings/sound/adi,adau17x1.txt
index 8dbce0e..6050602 100644
--- a/Documentation/devicetree/bindings/sound/adi,adau17x1.txt
+++ b/Documentation/devicetree/bindings/sound/adi,adau17x1.txt
@@ -13,6 +13,32 @@ Required properties:
  - reg:			The i2c address. Value depends on the state of ADDR0
 			and ADDR1, as wired in hardware.
 
+Optional properties:
+
+ - adi,input-differential	bool to set if the input is differential
+ - adi,digital-microphone	bool to set if there is a digital microphone
+				connected to digmic/jackdet pin.
+ - adi,micbias-vg		Microphone bias voltage
+	MICBIAS_0_90_AVDD - 0.9 * AVDD
+	MICBIAS_0_65_AVDD - 0.65 * AVDD
+
+Optional properties (ADAU1361/ADAU1461/ADAU1761/ADAU1961 only)
+
+ - adi,jack-detection	If present, configures codec to use the digmic/jackdet
+			pin for jack detection. must provide one of
+			JACKDETECT_ACTIVE_LO or JACKDETECT_ACTIVE_HI followed
+			by debounce time in ms, which must be 5, 10, 20, or 40.
+
+ - adi,lineout-mode	Set output mode of the lineout pins.
+ - adi,headphone-mode	Set output mode of the headphone pins.
+
+The output mode must be one of:
+	OUTPUT_MODE_HEADPHONE           - Headphone output
+	OUTPUT_MODE_HEADPHONE_CAPLESS   - Capless headphone output
+	OUTPUT_MODE_LINE                - Line output
+
+
+
 Examples:
 #include <dt-bindings/sound/adau17x1.h>
 
@@ -20,5 +46,10 @@ Examples:
 		adau1361@38 {
 			compatible = "adi,adau1761";
 			reg = <0x38>;
+			input-differential;
+			jack-detection = <JACKDETECT_ACTIVE_LO 40>;
+			lineout-mode = <OUTPUT_MODE_LINE>;
+			headphone-mode = <OUTPUT_MODE_HEADPHONE>;
+			micbias-vg = <MICBIAS_0_90_AVDD>;
 		};
 	};
diff --git a/include/dt-bindings/sound/adau17x1.h b/include/dt-bindings/sound/adau17x1.h
new file mode 100644
index 0000000..3152019
--- /dev/null
+++ b/include/dt-bindings/sound/adau17x1.h
@@ -0,0 +1,14 @@
+#ifndef __DT_ADAU17X1_H
+#define __DT_ADAU17X1_H
+
+#define MICBIAS_0_90_AVDD		0
+#define MICBIAS_0_65_AVDD		1
+
+#define OUTPUT_MODE_HEADPHONE		0
+#define OUTPUT_MODE_HEADPHONE_CAPLESS	1
+#define OUTPUT_MODE_LINE		2
+
+#define JACKDETECT_ACTIVE_HI		0
+#define JACKDETECT_ACTIVE_LO		1
+
+#endif
diff --git a/sound/soc/codecs/adau1761.c b/sound/soc/codecs/adau1761.c
index 16fed36..caba102 100644
--- a/sound/soc/codecs/adau1761.c
+++ b/sound/soc/codecs/adau1761.c
@@ -18,6 +18,7 @@
 #include <sound/soc.h>
 #include <sound/tlv.h>
 #include <linux/platform_data/adau17x1.h>
+#include <dt-bindings/sound/adau17x1.h>
 
 #include "adau17x1.h"
 #include "adau1761.h"
@@ -709,6 +710,122 @@ static int adau1761_codec_probe(struct snd_soc_codec *codec)
 	return 0;
 }
 
+#ifdef CONFIG_OF
+static inline void adau1761_parse_of_outmode(struct device *dev,
+					    uint32_t of_val,
+					    enum adau1761_output_mode *mode)
+{
+	switch (of_val) {
+	case OUTPUT_MODE_HEADPHONE:
+		*mode = ADAU1761_OUTPUT_MODE_HEADPHONE;
+		break;
+	case OUTPUT_MODE_HEADPHONE_CAPLESS:
+		*mode = ADAU1761_OUTPUT_MODE_HEADPHONE_CAPLESS;
+		break;
+	case OUTPUT_MODE_LINE:
+		*mode = ADAU1761_OUTPUT_MODE_LINE;
+		break;
+	default:
+		dev_warn(dev, "Invalid output mode %d\n", of_val);
+		*mode = ADAU1761_OUTPUT_MODE_LINE;
+		break;
+	}
+}
+
+static void adau1761_pdata_from_of(struct device *dev,
+				   struct adau1761_platform_data *pdata)
+{
+	struct device_node *np = dev->of_node;
+	uint32_t val;
+	uint32_t debounce_pars[2];
+
+	pdata->input_differential =
+		of_property_read_bool(np, "adi,input-differential");
+
+	if (of_get_property(np, "adi,jack-detection", NULL)) {
+		pdata->digmic_jackdetect_pin_mode =
+			ADAU1761_DIGMIC_JACKDET_PIN_MODE_JACKDETECT;
+		if (!of_property_read_u32_array(np, "adi,jack-detection",
+						debounce_pars, 2)) {
+			pdata->jackdetect_active_low =
+				debounce_pars[0] == JACKDETECT_ACTIVE_LO;
+			switch (debounce_pars[1]) {
+			case 5:
+				pdata->jackdetect_debounce_time =
+					ADAU1761_JACKDETECT_DEBOUNCE_5MS;
+				break;
+			case 10:
+				pdata->jackdetect_debounce_time =
+					ADAU1761_JACKDETECT_DEBOUNCE_10MS;
+				break;
+			case 20:
+				pdata->jackdetect_debounce_time =
+					ADAU1761_JACKDETECT_DEBOUNCE_20MS;
+				break;
+			case 40:
+				pdata->jackdetect_debounce_time =
+					ADAU1761_JACKDETECT_DEBOUNCE_40MS;
+				break;
+			default:
+				dev_warn(dev, "Invalid debounce_time %d\n",
+					debounce_pars[1]);
+				pdata->jackdetect_debounce_time =
+					ADAU1761_JACKDETECT_DEBOUNCE_40MS;
+				break;
+			}
+		} else if (!of_property_read_u32_array(np, "adi,jack-detection",
+						debounce_pars, 1)) {
+			dev_warn(dev, "Debounce time not provided\n");
+			pdata->jackdetect_active_low =
+				debounce_pars[0] == JACKDETECT_ACTIVE_LO;
+		} else {
+			dev_warn(dev, "No jack detection settings found\n");
+			pdata->jackdetect_active_low = 0;
+			pdata->jackdetect_debounce_time =
+				ADAU1761_JACKDETECT_DEBOUNCE_40MS;
+		}
+	} else if (of_property_read_bool(np, "adi,digital-microphone")) {
+		pdata->digmic_jackdetect_pin_mode =
+			ADAU1761_DIGMIC_JACKDET_PIN_MODE_DIGMIC;
+	} else {
+		pdata->digmic_jackdetect_pin_mode =
+			ADAU1761_DIGMIC_JACKDET_PIN_MODE_NONE;
+	}
+
+	if (!of_property_read_u32(np, "adi,headphone-mode", &val))
+		adau1761_parse_of_outmode(dev, val, &pdata->headphone_mode);
+	else
+		pdata->headphone_mode = ADAU1761_OUTPUT_MODE_LINE;
+
+	if (!of_property_read_u32(np, "adi,lineout-mode", &val))
+		adau1761_parse_of_outmode(dev, val, &pdata->lineout_mode);
+	else
+		pdata->lineout_mode = ADAU1761_OUTPUT_MODE_LINE;
+
+	if (!of_property_read_u32(np, "adi,micbias-vg", &val)) {
+		switch (val) {
+		case MICBIAS_0_65_AVDD:
+			pdata->micbias_voltage = ADAU17X1_MICBIAS_0_65_AVDD;
+			break;
+		case MICBIAS_0_90_AVDD:
+			pdata->micbias_voltage = ADAU17X1_MICBIAS_0_90_AVDD;
+			break;
+		default:
+			dev_warn(dev, "Invalid micbias voltage setting\n");
+			pdata->micbias_voltage = ADAU17X1_MICBIAS_0_90_AVDD;
+			break;
+		}
+	} else {
+		pdata->micbias_voltage = ADAU17X1_MICBIAS_0_90_AVDD;
+	}
+}
+#else
+static void adau1761_pdata_from_of(struct device *dev,
+				   struct adau1761_platform_data *pdata)
+{
+}
+#endif
+
 static const struct snd_soc_codec_driver adau1761_codec_driver = {
 	.probe = adau1761_codec_probe,
 	.resume	= adau17x1_resume,
@@ -768,6 +885,8 @@ int adau1761_probe(struct device *dev, struct regmap *regmap,
 	enum adau17x1_type type, void (*switch_mode)(struct device *dev))
 {
 	struct snd_soc_dai_driver *dai_drv;
+	struct adau1761_platform_data *of_pdata;
+	struct device_node *np = dev->of_node;
 	const char *firmware_name;
 	int ret;
 
@@ -779,6 +898,14 @@ int adau1761_probe(struct device *dev, struct regmap *regmap,
 		firmware_name = ADAU1761_FIRMWARE;
 	}
 
+	if (!dev->platform_data && np) {
+		of_pdata = devm_kzalloc(dev, sizeof(*of_pdata), GFP_KERNEL);
+		if (!of_pdata)
+			return -ENOMEM;
+		adau1761_pdata_from_of(dev, of_pdata);
+		dev->platform_data = of_pdata;
+	}
+
 	ret = adau17x1_probe(dev, regmap, type, switch_mode, firmware_name);
 	if (ret)
 		return ret;
diff --git a/sound/soc/codecs/adau1781.c b/sound/soc/codecs/adau1781.c
index bc1bb56..401220e 100644
--- a/sound/soc/codecs/adau1781.c
+++ b/sound/soc/codecs/adau1781.c
@@ -18,6 +18,7 @@
 #include <sound/soc.h>
 #include <sound/tlv.h>
 #include <linux/platform_data/adau17x1.h>
+#include <dt-bindings/sound/adau17x1.h>
 
 #include "adau17x1.h"
 #include "adau1781.h"
@@ -426,6 +427,43 @@ static int adau1781_codec_probe(struct snd_soc_codec *codec)
 	return 0;
 }
 
+#ifdef CONFIG_OF
+static void adau1781_pdata_from_of(struct device *dev,
+				   struct adau1781_platform_data *pdata)
+{
+	struct device_node *np = dev->of_node;
+	uint32_t val;
+
+	val = of_property_read_bool(np, "adi,input-differential");
+	pdata->left_input_differential = val;
+	pdata->right_input_differential = val;
+
+	of_property_read_bool(np, "adi,digital-microphone");
+
+	if (!of_property_read_u32(np, "adi,micbias-vg", &val)) {
+		switch (val) {
+		case MICBIAS_0_65_AVDD:
+			pdata->micbias_voltage = ADAU17X1_MICBIAS_0_65_AVDD;
+			break;
+		case MICBIAS_0_90_AVDD:
+			pdata->micbias_voltage = ADAU17X1_MICBIAS_0_90_AVDD;
+			break;
+		default:
+			dev_warn(dev, "Invalid micbias voltage setting\n");
+			pdata->micbias_voltage = ADAU17X1_MICBIAS_0_90_AVDD;
+			break;
+		}
+	} else {
+		pdata->micbias_voltage = ADAU17X1_MICBIAS_0_90_AVDD;
+	}
+}
+#else
+static void adau1781_pdata_from_of(struct device *dev,
+				   struct adau1781_platform_data *pdata)
+{
+}
+#endif
+
 static const struct snd_soc_codec_driver adau1781_codec_driver = {
 	.probe = adau1781_codec_probe,
 	.resume = adau17x1_resume,
@@ -479,6 +517,8 @@ int adau1781_probe(struct device *dev, struct regmap *regmap,
 	enum adau17x1_type type, void (*switch_mode)(struct device *dev))
 {
 	const char *firmware_name;
+	struct adau1781_platform_data *of_pdata;
+	struct device_node *np = dev->of_node;
 	int ret;
 
 	switch (type) {
@@ -492,6 +532,14 @@ int adau1781_probe(struct device *dev, struct regmap *regmap,
 		return -EINVAL;
 	}
 
+	if (!dev->platform_data && np) {
+		of_pdata = devm_kzalloc(dev, sizeof(*of_pdata), GFP_KERNEL);
+		if (!of_pdata)
+			return -ENOMEM;
+		adau1781_pdata_from_of(dev, of_pdata);
+		dev->platform_data = of_pdata;
+	}
+
 	ret = adau17x1_probe(dev, regmap, type, switch_mode, firmware_name);
 	if (ret)
 		return ret;
-- 
2.1.4

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* Re: [PATCH v2 5/5] ASoC: adau17x1: Support platform data via DT
       [not found]   ` <1455627405-18155-6-git-send-email-andire-VrBV9hrLPhE@public.gmane.org>
@ 2016-02-16 13:42     ` Arnd Bergmann
  2016-02-17  8:58       ` Andreas Irestål
  2016-02-18 14:37     ` Rob Herring
  1 sibling, 1 reply; 11+ messages in thread
From: Arnd Bergmann @ 2016-02-16 13:42 UTC (permalink / raw)
  To: Andreas Irestål
  Cc: Lars-Peter Clausen, Liam Girdwood, Mark Brown, Rob Herring,
	Pawel Moll, Mark Rutland, Ian Campbell, Kumar Gala,
	devicetree-u79uwXL29TY76Z2rM5mHXA,
	alsa-devel-K7yf7f+aM1XWsZ/bQMPhNw,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA, Andreas Irestål

On Tuesday 16 February 2016 13:56:45 Andreas Irestål wrote:
> Currently, it is only possible to configure HW-specific options to the
> adau17x1 codecs by providing a platform data struct. With this patch,
> it is possible to provide the same data via DT instead.
> 
> Signed-off-by: Andreas Irestål <andire-VrBV9hrLPhE@public.gmane.org>
> ---
>  .../devicetree/bindings/sound/adi,adau17x1.txt     |  31 +++++
>  include/dt-bindings/sound/adau17x1.h               |  14 +++
>  sound/soc/codecs/adau1761.c                        | 127 +++++++++++++++++++++
>  sound/soc/codecs/adau1781.c                        |  48 ++++++++
>  4 files changed, 220 insertions(+)
>  create mode 100644 include/dt-bindings/sound/adau17x1.h

It would be nicer to avoid the need for the extra header file, those
tend to cause more problems than they solve.
 
> diff --git a/Documentation/devicetree/bindings/sound/adi,adau17x1.txt b/Documentation/devicetree/bindings/sound/adi,adau17x1.txt
> index 8dbce0e..6050602 100644
> --- a/Documentation/devicetree/bindings/sound/adi,adau17x1.txt
> +++ b/Documentation/devicetree/bindings/sound/adi,adau17x1.txt
> @@ -13,6 +13,32 @@ Required properties:
>   - reg:			The i2c address. Value depends on the state of ADDR0
>  			and ADDR1, as wired in hardware.
>  
> +Optional properties:
> +
> + - adi,input-differential	bool to set if the input is differential
> + - adi,digital-microphone	bool to set if there is a digital microphone
> +				connected to digmic/jackdet pin.
> + - adi,micbias-vg		Microphone bias voltage
> +	MICBIAS_0_90_AVDD - 0.9 * AVDD
> +	MICBIAS_0_65_AVDD - 0.65 * AVDD

This could be an integer property, or possibly two (mutually exclusive)
boolean properties.

> +Optional properties (ADAU1361/ADAU1461/ADAU1761/ADAU1961 only)
> +
> + - adi,jack-detection	If present, configures codec to use the digmic/jackdet
> +			pin for jack detection. must provide one of
> +			JACKDETECT_ACTIVE_LO or JACKDETECT_ACTIVE_HI followed
> +			by debounce time in ms, which must be 5, 10, 20, or 40.

I would use one integer property for debounce and one bool property for
polarity.

> +The output mode must be one of:
> +	OUTPUT_MODE_HEADPHONE           - Headphone output
> +	OUTPUT_MODE_HEADPHONE_CAPLESS   - Capless headphone output
> +	OUTPUT_MODE_LINE                - Line output

And something along the same lines here. Or just document the three modes
as numbers in the binding file.

> +#ifdef CONFIG_OF
> +static void adau1781_pdata_from_of(struct device *dev,
> +				   struct adau1781_platform_data *pdata)

You can remove the #ifdef here...

> +	if (!dev->platform_data && np) {

if you change this to 

	if (IS_ENABLED(CONFIG_OF) && np) {

> +		of_pdata = devm_kzalloc(dev, sizeof(*of_pdata), GFP_KERNEL);
> +		if (!of_pdata)
> +			return -ENOMEM;
> +		adau1781_pdata_from_of(dev, of_pdata);
> +		dev->platform_data = of_pdata;

and here I'd try to avoid the dynamic allocation and just add the fields to the
driver private structure. You can copy the information from the platform
data in the 'else' path.

	Arnd
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH v2 5/5] ASoC: adau17x1: Support platform data via DT
  2016-02-16 13:42     ` Arnd Bergmann
@ 2016-02-17  8:58       ` Andreas Irestål
  0 siblings, 0 replies; 11+ messages in thread
From: Andreas Irestål @ 2016-02-17  8:58 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: Andreas Irestål, Lars-Peter Clausen, Liam Girdwood,
	Mark Brown, Rob Herring, Pawel Moll, Mark Rutland, Ian Campbell,
	Kumar Gala, devicetree-u79uwXL29TY76Z2rM5mHXA,
	alsa-devel-K7yf7f+aM1XWsZ/bQMPhNw,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA

On Tue, Feb 16, 2016 at 02:42:02PM +0100, Arnd Bergmann wrote:
> On Tuesday 16 February 2016 13:56:45 Andreas Irestål wrote:
> > Currently, it is only possible to configure HW-specific options to the
> > adau17x1 codecs by providing a platform data struct. With this patch,
> > it is possible to provide the same data via DT instead.
> > 
> > Signed-off-by: Andreas Irestål <andire-VrBV9hrLPhE@public.gmane.org>
> > ---
> >  .../devicetree/bindings/sound/adi,adau17x1.txt     |  31 +++++
> >  include/dt-bindings/sound/adau17x1.h               |  14 +++
> >  sound/soc/codecs/adau1761.c                        | 127 +++++++++++++++++++++
> >  sound/soc/codecs/adau1781.c                        |  48 ++++++++
> >  4 files changed, 220 insertions(+)
> >  create mode 100644 include/dt-bindings/sound/adau17x1.h
> 
> > +		of_pdata = devm_kzalloc(dev, sizeof(*of_pdata), GFP_KERNEL);
> > +		if (!of_pdata)
> > +			return -ENOMEM;
> > +		adau1781_pdata_from_of(dev, of_pdata);
> > +		dev->platform_data = of_pdata;
> 
> and here I'd try to avoid the dynamic allocation and just add the fields to the
> driver private structure. You can copy the information from the platform
> data in the 'else' path.

Since the driver private structure is shared between two different
codecs, the platform_data struct can be of 2 different types, but I
guess it should be OK to have two fields or a
union in the private struct.

I was thinking about this too but chose the approach above since providing
platform_data is optional. However, I could add some default values and
submit again.

Thanks a lot for the feedback.
/Andreas

> 
> 	Arnd
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH v2 3/5] ASoC: adau17x1: Add adau17x1 bindings document
  2016-02-16 12:56 ` [PATCH v2 3/5] ASoC: adau17x1: Add adau17x1 bindings document Andreas Irestål
@ 2016-02-18 14:37   ` Rob Herring
  0 siblings, 0 replies; 11+ messages in thread
From: Rob Herring @ 2016-02-18 14:37 UTC (permalink / raw)
  To: Andreas Irestål
  Cc: Lars-Peter Clausen, Liam Girdwood, Mark Brown, Pawel Moll,
	Mark Rutland, Ian Campbell, Kumar Gala, devicetree, alsa-devel,
	linux-kernel, Andreas Irestål

On Tue, Feb 16, 2016 at 01:56:43PM +0100, Andreas Irestål wrote:
> Signed-off-by: Andreas Irestål <andire@axis.com>
> ---
>  .../devicetree/bindings/sound/adi,adau17x1.txt     | 24 ++++++++++++++++++++++
>  1 file changed, 24 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/sound/adi,adau17x1.txt
> 
> diff --git a/Documentation/devicetree/bindings/sound/adi,adau17x1.txt b/Documentation/devicetree/bindings/sound/adi,adau17x1.txt
> new file mode 100644
> index 0000000..8dbce0e
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/sound/adi,adau17x1.txt
> @@ -0,0 +1,24 @@
> +Analog Devices ADAU1361/ADAU1461/ADAU1761/ADAU1961/ADAU1381/ADAU1781
> +
> +Required properties:
> +
> + - compatible:		Should contain one of the following:
> +			"adi,adau1361"
> +			"adi,adau1461"
> +			"adi,adau1761"
> +			"adi,adau1961"
> +			"adi,adau1381"
> +			"adi,adau1781"
> +
> + - reg:			The i2c address. Value depends on the state of ADDR0
> +			and ADDR1, as wired in hardware.
> +
> +Examples:
> +#include <dt-bindings/sound/adau17x1.h>
> +
> +	i2c_bus {
> +		adau1361@38 {

codec@38

Otherwise:

Acked-by: Rob Herring <robh@kernel.org>


> +			compatible = "adi,adau1761";
> +			reg = <0x38>;
> +		};
> +	};
> -- 
> 2.1.4
> 
> --
> To unsubscribe from this list: send the line "unsubscribe devicetree" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH v2 5/5] ASoC: adau17x1: Support platform data via DT
       [not found]   ` <1455627405-18155-6-git-send-email-andire-VrBV9hrLPhE@public.gmane.org>
  2016-02-16 13:42     ` Arnd Bergmann
@ 2016-02-18 14:37     ` Rob Herring
  2016-02-18 17:38       ` Mark Brown
  1 sibling, 1 reply; 11+ messages in thread
From: Rob Herring @ 2016-02-18 14:37 UTC (permalink / raw)
  To: Andreas Irestål
  Cc: Lars-Peter Clausen, Liam Girdwood, Mark Brown, Pawel Moll,
	Mark Rutland, Ian Campbell, Kumar Gala,
	devicetree-u79uwXL29TY76Z2rM5mHXA,
	alsa-devel-K7yf7f+aM1XWsZ/bQMPhNw,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA, Andreas Irestål

On Tue, Feb 16, 2016 at 01:56:45PM +0100, Andreas Irestål wrote:
> Currently, it is only possible to configure HW-specific options to the
> adau17x1 codecs by providing a platform data struct. With this patch,
> it is possible to provide the same data via DT instead.

The subject is a red flag. Platform data and DT properties are not 
necessarily equivalent.

This should be part of the previous patch.

> 
> Signed-off-by: Andreas Irestål <andire-VrBV9hrLPhE@public.gmane.org>
> ---
>  .../devicetree/bindings/sound/adi,adau17x1.txt     |  31 +++++
>  include/dt-bindings/sound/adau17x1.h               |  14 +++
>  sound/soc/codecs/adau1761.c                        | 127 +++++++++++++++++++++
>  sound/soc/codecs/adau1781.c                        |  48 ++++++++
>  4 files changed, 220 insertions(+)
>  create mode 100644 include/dt-bindings/sound/adau17x1.h
> 
> diff --git a/Documentation/devicetree/bindings/sound/adi,adau17x1.txt b/Documentation/devicetree/bindings/sound/adi,adau17x1.txt
> index 8dbce0e..6050602 100644
> --- a/Documentation/devicetree/bindings/sound/adi,adau17x1.txt
> +++ b/Documentation/devicetree/bindings/sound/adi,adau17x1.txt
> @@ -13,6 +13,32 @@ Required properties:
>   - reg:			The i2c address. Value depends on the state of ADDR0
>  			and ADDR1, as wired in hardware.
>  
> +Optional properties:
> +
> + - adi,input-differential	bool to set if the input is differential
> + - adi,digital-microphone	bool to set if there is a digital microphone
> +				connected to digmic/jackdet pin.
> + - adi,micbias-vg		Microphone bias voltage

In what units? Add units suffix. Also, this seems like something that 
should be common.

> +	MICBIAS_0_90_AVDD - 0.9 * AVDD
> +	MICBIAS_0_65_AVDD - 0.65 * AVDD

What does this mean?

> +
> +Optional properties (ADAU1361/ADAU1461/ADAU1761/ADAU1961 only)
> +
> + - adi,jack-detection	If present, configures codec to use the digmic/jackdet
> +			pin for jack detection. must provide one of
> +			JACKDETECT_ACTIVE_LO or JACKDETECT_ACTIVE_HI followed
> +			by debounce time in ms, which must be 5, 10, 20, or 40.

Seems like this could be common. No existing examples to copy?

> +
> + - adi,lineout-mode	Set output mode of the lineout pins.
> + - adi,headphone-mode	Set output mode of the headphone pins.
> +
> +The output mode must be one of:
> +	OUTPUT_MODE_HEADPHONE           - Headphone output
> +	OUTPUT_MODE_HEADPHONE_CAPLESS   - Capless headphone output
> +	OUTPUT_MODE_LINE                - Line output
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH v2 5/5] ASoC: adau17x1: Support platform data via DT
  2016-02-18 14:37     ` Rob Herring
@ 2016-02-18 17:38       ` Mark Brown
  0 siblings, 0 replies; 11+ messages in thread
From: Mark Brown @ 2016-02-18 17:38 UTC (permalink / raw)
  To: Rob Herring
  Cc: Andreas Irestål, Lars-Peter Clausen, Liam Girdwood,
	Pawel Moll, Mark Rutland, Ian Campbell, Kumar Gala,
	devicetree-u79uwXL29TY76Z2rM5mHXA,
	alsa-devel-K7yf7f+aM1XWsZ/bQMPhNw,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA, Andreas Irestål

[-- Attachment #1: Type: text/plain, Size: 965 bytes --]

On Thu, Feb 18, 2016 at 08:37:35AM -0600, Rob Herring wrote:
> On Tue, Feb 16, 2016 at 01:56:45PM +0100, Andreas Irestål wrote:

> > +	MICBIAS_0_90_AVDD - 0.9 * AVDD
> > +	MICBIAS_0_65_AVDD - 0.65 * AVDD

> What does this mean?

It's specifying the microphone bias as a function of the AVDD supply
voltage.  This should be obvious to anyone with any knowledge of the
domain, it's a fairly common way of configuring such things.

> > +Optional properties (ADAU1361/ADAU1461/ADAU1761/ADAU1961 only)

> > + - adi,jack-detection	If present, configures codec to use the digmic/jackdet
> > +			pin for jack detection. must provide one of
> > +			JACKDETECT_ACTIVE_LO or JACKDETECT_ACTIVE_HI followed
> > +			by debounce time in ms, which must be 5, 10, 20, or 40.

> Seems like this could be common. No existing examples to copy?

If it's just a GPIO with a fancy name and some offloading (sounds like
it) there's an existing binding for the GPIO.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 473 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2016-02-18 17:38 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-02-16 12:56 [PATCH v2 0/5] Minor fixes and DT support Andreas Irestål
2016-02-16 12:56 ` [PATCH v2 1/5] ASoC: adau17x1: Fix incorrect BCLK ratio definitions Andreas Irestål
2016-02-16 12:56 ` [PATCH v2 2/5] ASoC: adau17x1: Correct typos in file headers Andreas Irestål
2016-02-16 12:56 ` [PATCH v2 3/5] ASoC: adau17x1: Add adau17x1 bindings document Andreas Irestål
2016-02-18 14:37   ` Rob Herring
2016-02-16 12:56 ` [PATCH v2 4/5] ASoC: adau17x1: Add basic DT support for adau17x1 Andreas Irestål
2016-02-16 12:56 ` [PATCH v2 5/5] ASoC: adau17x1: Support platform data via DT Andreas Irestål
     [not found]   ` <1455627405-18155-6-git-send-email-andire-VrBV9hrLPhE@public.gmane.org>
2016-02-16 13:42     ` Arnd Bergmann
2016-02-17  8:58       ` Andreas Irestål
2016-02-18 14:37     ` Rob Herring
2016-02-18 17:38       ` Mark Brown

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).