devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Maxime Ripard <maxime.ripard-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>
To: Chen-Yu Tsai <wens-jdAy2FN1RRM@public.gmane.org>
Cc: Liam Girdwood <lgirdwood-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
	Mark Brown <broonie-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
	Jaroslav Kysela <perex-/Fr2/VpizcU@public.gmane.org>,
	Takashi Iwai <tiwai-IBi9RG/b67k@public.gmane.org>,
	Rob Herring <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
	Mark Rutland <mark.rutland-5wv7dgnIgG8@public.gmane.org>,
	Russell King <linux-I+IVW8TIWO2tmTQ+vhA3Yw@public.gmane.org>,
	Linux-ALSA <alsa-devel-K7yf7f+aM1XWsZ/bQMPhNw@public.gmane.org>,
	linux-arm-kernel
	<linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org>,
	linux-kernel
	<linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	devicetree <devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	linux-sunxi <linux-sunxi-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>
Subject: Re: [PATCH 05/12] ASoC: sun4i-codec: Add support for A31 playback through headphone output
Date: Mon, 10 Oct 2016 12:04:44 +0200	[thread overview]
Message-ID: <20161010100444.GD3462@lukather> (raw)
In-Reply-To: <CAGb2v66b_zG=xK_JVBnwY=SPtvJ+c-fZjuugAHUybzZdkkcScg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>

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

On Tue, Oct 04, 2016 at 12:26:08PM +0800, Chen-Yu Tsai wrote:
> >> +struct sun4i_codec_regs {
> >> +     u32     adc_fifoc;
> >> +     u32     adc_fifos;
> >> +     u32     adc_rxdata;
> >> +};
> >> +
> >>  struct sun4i_codec {
> >>       struct device   *dev;
> >>       struct regmap   *regmap;
> >>       struct clk      *clk_apb;
> >>       struct clk      *clk_module;
> >>       struct gpio_desc *gpio_pa;
> >> +     const struct sun4i_codec_regs *regs;
> >
> > You're reimplementing reg_field here.
> 
> Are you suggesting we do reg_fields for each register?
> Or all the bit fields separately. The latter would add
> quite a few pointers.

only the one that change, so judging from your structure, only the ADC
fifo control, status and data registers.
> >> +static const struct of_device_id sun4i_codec_of_match[] = {
> >> +     {
> >> +             .compatible = "allwinner,sun4i-a10-codec",
> >> +             .data = &sun4i_codec_quirks,
> >> +     },
> >> +     {
> >> +             .compatible = "allwinner,sun6i-a31-codec",
> >> +             .data = &sun6i_a31_codec_quirks,
> >> +     },
> >> +     {
> >> +             .compatible = "allwinner,sun7i-a20-codec",
> >> +             .data = &sun7i_codec_quirks,
> >> +     },
> >> +     {}
> >> +};
> >> +MODULE_DEVICE_TABLE(of, sun4i_codec_of_match);
> >> +
> >
> > I don't really like moving blocks of code over and over again,
> > especially in the middle of an unrelated patch.
> 
> It's not completely unrelated. I want different create_card
> functions for the different SoCs, and that has to be part of the
> quirks, so the quirks and the of_match list have to be moved
> below them. I suppose I could leave the regmap parts in place,
> but keeping them together is nicer.
> 
> If I split out the addition of the .create_card field and
> code movement into a separate patch, would that be OK?

Yep, that would work.

Thanks!
Maxime

-- 
Maxime Ripard, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com

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

  parent reply	other threads:[~2016-10-10 10:04 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-10-03 11:07 [PATCH 00/12] ASoC: sun4i-codec: Add support for A31 Codec Chen-Yu Tsai
     [not found] ` <20161003110804.28235-1-wens-jdAy2FN1RRM@public.gmane.org>
2016-10-03 11:07   ` [PATCH 01/12] ASoC: dapm: Support second register for DAPM control updates Chen-Yu Tsai
2016-10-03 11:07   ` [PATCH 02/12] ASoC: dapm: Implement stereo mixer control support Chen-Yu Tsai
     [not found]     ` <20161003110804.28235-3-wens-jdAy2FN1RRM@public.gmane.org>
2016-10-26 16:57       ` Mark Brown
     [not found]         ` <20161026165753.GC25322-GFdadSzt00ze9xe1eoZjHA@public.gmane.org>
2016-10-27  1:20           ` Chen-Yu Tsai
2016-10-26 17:50       ` Mark Brown
     [not found]         ` <20161026175052.GE25322-GFdadSzt00ze9xe1eoZjHA@public.gmane.org>
2016-10-27 14:02           ` Chen-Yu Tsai
2016-10-03 11:07   ` [PATCH 03/12] ASoC: dapm: Introduce DAPM_DOUBLE dual channel control type Chen-Yu Tsai
2016-11-02 16:47     ` Applied "ASoC: dapm: Introduce DAPM_DOUBLE dual channel control type" to the asoc tree Mark Brown
2016-10-03 11:07   ` [PATCH 04/12] ASoC: dapm: Introduce DAPM_DOUBLE_R dual channel dual register control type Chen-Yu Tsai
2016-11-02 16:46     ` Applied "ASoC: dapm: Introduce DAPM_DOUBLE_R dual channel dual register control type" to the asoc tree Mark Brown
2016-10-03 11:07   ` [PATCH 05/12] ASoC: sun4i-codec: Add support for A31 playback through headphone output Chen-Yu Tsai
2016-10-03 11:47     ` Maxime Ripard
2016-10-04  4:26       ` Chen-Yu Tsai
     [not found]         ` <CAGb2v66b_zG=xK_JVBnwY=SPtvJ+c-fZjuugAHUybzZdkkcScg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-10-10 10:04           ` Maxime Ripard [this message]
     [not found]     ` <20161003110804.28235-6-wens-jdAy2FN1RRM@public.gmane.org>
2016-10-09  1:29       ` Rob Herring
2016-10-03 11:07   ` [PATCH 06/12] ASoC: sun4i-codec: Add support for A31 Line In playback Chen-Yu Tsai
     [not found]     ` <20161003110804.28235-7-wens-jdAy2FN1RRM@public.gmane.org>
2016-11-03 20:33       ` Applied "ASoC: sun4i-codec: Add support for A31 Line In playback" to the asoc tree Mark Brown
2016-10-03 11:07   ` [PATCH 07/12] ASoC: sun4i-codec: Add support for A31 Line Out playback Chen-Yu Tsai
2016-10-03 11:08   ` [PATCH 08/12] ASoC: sun4i-codec: Add support for A31 analog microphone inputs Chen-Yu Tsai
2016-10-03 11:08   ` [PATCH 09/12] ASoC: sun4i-codec: Add support for A31 ADC capture path Chen-Yu Tsai
2016-11-09 14:59     ` Applied "ASoC: sun4i-codec: Add support for A31 ADC capture path" to the asoc tree Mark Brown
2016-10-03 11:08   ` [PATCH 10/12] ASoC: sun4i-codec: Add support for A31 board level audio routing Chen-Yu Tsai
     [not found]     ` <20161003110804.28235-11-wens-jdAy2FN1RRM@public.gmane.org>
2016-10-09  1:29       ` Rob Herring
2016-10-03 11:08   ` [PATCH 11/12] ARM: dts: sun6i: Add audio codec device node Chen-Yu Tsai
2016-10-03 11:08   ` [PATCH 12/12] ARM: dts: sun6i: hummingbird: Enable internal audio codec Chen-Yu Tsai

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=20161010100444.GD3462@lukather \
    --to=maxime.ripard-wi1+55scjutkeb57/3fjtnbpr1lh4cv8@public.gmane.org \
    --cc=alsa-devel-K7yf7f+aM1XWsZ/bQMPhNw@public.gmane.org \
    --cc=broonie-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
    --cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=lgirdwood-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    --cc=linux-I+IVW8TIWO2tmTQ+vhA3Yw@public.gmane.org \
    --cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
    --cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-sunxi-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org \
    --cc=mark.rutland-5wv7dgnIgG8@public.gmane.org \
    --cc=perex-/Fr2/VpizcU@public.gmane.org \
    --cc=robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
    --cc=tiwai-IBi9RG/b67k@public.gmane.org \
    --cc=wens-jdAy2FN1RRM@public.gmane.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).