linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: codekipper@gmail.com (codekipper at gmail.com)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v3 01/12] ASoC: sun4i-i2s: Extend quirks scope
Date: Sat, 29 Jul 2017 16:17:42 +0200	[thread overview]
Message-ID: <20170729141753.20174-2-codekipper@gmail.com> (raw)
In-Reply-To: <20170729141753.20174-1-codekipper@gmail.com>

From: Marcus Cooper <codekipper@gmail.com>

In preparation for the changes required to support newer SoCs then
quirks has been moved and also added to the device structure.

Signed-off-by: Marcus Cooper <codekipper@gmail.com>
---
 sound/soc/sunxi/sun4i-i2s.c | 22 ++++++++++++++--------
 1 file changed, 14 insertions(+), 8 deletions(-)

diff --git a/sound/soc/sunxi/sun4i-i2s.c b/sound/soc/sunxi/sun4i-i2s.c
index 62b307b0c846..d7ee7a443e4e 100644
--- a/sound/soc/sunxi/sun4i-i2s.c
+++ b/sound/soc/sunxi/sun4i-i2s.c
@@ -90,6 +90,15 @@
 #define SUN4I_I2S_RX_CHAN_SEL_REG	0x38
 #define SUN4I_I2S_RX_CHAN_MAP_REG	0x3c
 
+/**
+ * struct sun4i_i2s_quirks - Differences between SoC variants.
+ *
+ * @has_reset: SoC needs reset deasserted.
+ */
+struct sun4i_i2s_quirks {
+	bool				has_reset;
+};
+
 struct sun4i_i2s {
 	struct clk	*bus_clk;
 	struct clk	*mod_clk;
@@ -100,6 +109,8 @@ struct sun4i_i2s {
 
 	struct snd_dmaengine_dai_dma_data	capture_dma_data;
 	struct snd_dmaengine_dai_dma_data	playback_dma_data;
+
+	const struct sun4i_i2s_quirks	*variant;
 };
 
 struct sun4i_i2s_clk_div {
@@ -654,10 +665,6 @@ static int sun4i_i2s_runtime_suspend(struct device *dev)
 	return 0;
 }
 
-struct sun4i_i2s_quirks {
-	bool has_reset;
-};
-
 static const struct sun4i_i2s_quirks sun4i_a10_i2s_quirks = {
 	.has_reset	= false,
 };
@@ -669,7 +676,6 @@ static const struct sun4i_i2s_quirks sun6i_a31_i2s_quirks = {
 static int sun4i_i2s_probe(struct platform_device *pdev)
 {
 	struct sun4i_i2s *i2s;
-	const struct sun4i_i2s_quirks *quirks;
 	struct resource *res;
 	void __iomem *regs;
 	int irq, ret;
@@ -690,8 +696,8 @@ static int sun4i_i2s_probe(struct platform_device *pdev)
 		return irq;
 	}
 
-	quirks = of_device_get_match_data(&pdev->dev);
-	if (!quirks) {
+	i2s->variant = of_device_get_match_data(&pdev->dev);
+	if (!i2s->variant) {
 		dev_err(&pdev->dev, "Failed to determine the quirks to use\n");
 		return -ENODEV;
 	}
@@ -715,7 +721,7 @@ static int sun4i_i2s_probe(struct platform_device *pdev)
 		return PTR_ERR(i2s->mod_clk);
 	}
 
-	if (quirks->has_reset) {
+	if (i2s->variant->has_reset) {
 		i2s->rst = devm_reset_control_get_exclusive(&pdev->dev, NULL);
 		if (IS_ERR(i2s->rst)) {
 			dev_err(&pdev->dev, "Failed to get reset control\n");
-- 
2.13.3

  reply	other threads:[~2017-07-29 14:17 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-07-29 14:17 [PATCH v3 00/12] ASoC: Add I2S support for Allwinner H3 SoCs codekipper at gmail.com
2017-07-29 14:17 ` codekipper at gmail.com [this message]
2017-08-01  2:50   ` [linux-sunxi] [PATCH v3 01/12] ASoC: sun4i-i2s: Extend quirks scope Chen-Yu Tsai
2017-08-01 14:16   ` Applied "ASoC: sun4i-i2s: Extend quirks scope" to the asoc tree Mark Brown
2017-07-29 14:17 ` [PATCH v3 02/12] ASoC: sun4i-i2s: Add clkdiv offsets to quirks codekipper at gmail.com
2017-08-01  2:55   ` [linux-sunxi] " Chen-Yu Tsai
2017-08-07  6:20     ` Code Kipper
2017-07-29 14:17 ` [PATCH v3 03/12] ASoC: sun4i-i2s: Add regmap config " codekipper at gmail.com
2017-08-01  8:10   ` [linux-sunxi] " Chen-Yu Tsai
2017-08-14 16:43   ` Applied "ASoC: sun4i-i2s: Add regmap config to quirks" to the asoc tree Mark Brown
2017-07-29 14:17 ` [PATCH v3 04/12] ASoC: sun4i-i2s: Add TX FIFO offset to quirks codekipper at gmail.com
2017-08-01  8:18   ` [linux-sunxi] " Chen-Yu Tsai
2017-08-14 16:43   ` Applied "ASoC: sun4i-i2s: Add TX FIFO offset to quirks" to the asoc tree Mark Brown
2017-07-29 14:17 ` [PATCH v3 05/12] ASoC: sun4i-i2s: Add regmap fields for channels codekipper at gmail.com
2017-07-30 16:43   ` [alsa-devel] " kbuild test robot
2017-07-30 16:43   ` [PATCH] ASoC: sun4i-i2s: fix ptr_ret.cocci warnings kbuild test robot
2017-08-01  8:31   ` [linux-sunxi] [PATCH v3 05/12] ASoC: sun4i-i2s: Add regmap fields for channels Chen-Yu Tsai
2017-08-07  7:39     ` Code Kipper
2017-07-29 14:17 ` [PATCH v3 06/12] ASoC: sun4i-i2s: Add changes for wss and sr codekipper at gmail.com
2017-08-01  8:49   ` [linux-sunxi] " Chen-Yu Tsai
2017-08-02  3:06   ` Chen-Yu Tsai
2017-07-29 14:17 ` [PATCH v3 07/12] ASoC: sun4i-i2s: bclk and lrclk polarity tidyup codekipper at gmail.com
2017-08-02  3:09   ` [linux-sunxi] " Chen-Yu Tsai
2017-07-29 14:17 ` [PATCH v3 08/12] ASoC: sun4i-i2s: Add mclk enable regmap field codekipper at gmail.com
2017-08-02  3:20   ` [linux-sunxi] " Chen-Yu Tsai
2017-07-29 14:17 ` [PATCH v3 09/12] ASoC: sun4i-i2s: Add regmap field to set format codekipper at gmail.com
2017-08-02  3:32   ` [linux-sunxi] " Chen-Yu Tsai
2017-07-29 14:17 ` [PATCH v3 10/12] ASoC: sun4i-i2s: Check for slave select bit codekipper at gmail.com
2017-08-02  3:50   ` [linux-sunxi] " Chen-Yu Tsai
2017-07-29 14:17 ` [PATCH v3 11/12] ASoC: sun4i-i2s: Update global enable with bitmask codekipper at gmail.com
2017-08-02  3:55   ` [linux-sunxi] " Chen-Yu Tsai
2017-07-29 14:17 ` [PATCH v3 12/12] ASoC: sun4i-i2s: Add support for H3 codekipper at gmail.com
2017-08-02  4:37   ` [linux-sunxi] " Chen-Yu Tsai
2017-07-31  7:05 ` [linux-sunxi] [PATCH v3 00/12] ASoC: Add I2S support for Allwinner H3 SoCs Olliver Schinagl
2017-07-31 14:22   ` Code Kipper

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20170729141753.20174-2-codekipper@gmail.com \
    --to=codekipper@gmail.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).