2015-07-17 04:39:37

by Stephen Rothwell

[permalink] [raw]
Subject: linux-next: build warnings after merge of the regmap tree

Hi Mark,

After merging the regmap tree, today's linux-next build (powerpc
allyesconfig) produced these warnings:

sound/soc/codecs/wm5110.c: In function 'wm5110_hp_pre_enable':
sound/soc/codecs/wm5110.c:294:9: warning: passing argument 2 of 'regmap_multi_reg_write' from incompatible pointer type
return regmap_multi_reg_write(arizona->regmap, wseq, nregs);
^
In file included from sound/soc/codecs/wm5110.c:19:0:
include/linux/regmap.h:427:5: note: expected 'const struct reg_sequence *' but argument is of type 'const struct reg_default *'
int regmap_multi_reg_write(struct regmap *map, const struct reg_sequence *regs,
^
sound/soc/codecs/wm5110.c: In function 'wm5110_clear_pga_volume':
sound/soc/codecs/wm5110.c:362:8: warning: passing argument 2 of 'regmap_multi_reg_write_bypassed' from incompatible pointer type
ret = regmap_multi_reg_write_bypassed(arizona->regmap, &clear_pga, 1);
^
In file included from sound/soc/codecs/wm5110.c:19:0:
include/linux/regmap.h:429:5: note: expected 'const struct reg_sequence *' but argument is of type 'struct reg_default *'
int regmap_multi_reg_write_bypassed(struct regmap *map,
^
drivers/mfd/wm5110-tables.c: In function 'wm5110_patch':
drivers/mfd/wm5110-tables.c:279:10: warning: passing argument 2 of 'regmap_register_patch' from incompatible pointer type
return regmap_register_patch(arizona->regmap,
^
In file included from include/linux/mfd/arizona/core.h:17:0,
from drivers/mfd/wm5110-tables.c:15:
include/linux/regmap.h:469:5: note: expected 'const struct reg_sequence *' but argument is of type 'const struct reg_default *'
int regmap_register_patch(struct regmap *map, const struct reg_sequence *regs,
^
drivers/mfd/wm8998-tables.c: In function 'wm8998_patch':
drivers/mfd/wm8998-tables.c:48:9: warning: passing argument 2 of 'regmap_register_patch' from incompatible pointer type
return regmap_register_patch(arizona->regmap,
^
In file included from include/linux/mfd/arizona/core.h:17:0,
from drivers/mfd/wm8998-tables.c:15:
include/linux/regmap.h:469:5: note: expected 'const struct reg_sequence *' but argument is of type 'const struct reg_default *'
int regmap_register_patch(struct regmap *map, const struct reg_sequence *regs,
^

Introduced by commit

8019ff6cfc04 ("regmap: Use reg_sequence for multi_reg_write / register_patch")

interacting with commit

561629755a21 ("mfd: arizona: Add support for WM8998 and WM1814")

from the mfd tree and commits

d1acd31883d7 ("ASoC: wm5110: Add special DRE on/off handling for the headphone path")
81207880cef2 ("mfd: wm5110: Add register patch for rev E and above")

from the sound-asoc tree.

I may make up a merge fix for these on Monday ... I love API changes :-(
--
Cheers,
Stephen Rothwell [email protected]


2015-07-17 09:44:40

by Nariman Poushin

[permalink] [raw]
Subject: Re: linux-next: build warnings after merge of the regmap tree

On Fri, Jul 17, 2015 at 02:39:34PM +1000, Stephen Rothwell wrote:
> Hi Mark,
>
> After merging the regmap tree, today's linux-next build (powerpc
> allyesconfig) produced these warnings:
>
> sound/soc/codecs/wm5110.c: In function 'wm5110_hp_pre_enable':
> sound/soc/codecs/wm5110.c:294:9: warning: passing argument 2 of 'regmap_multi_reg_write' from incompatible pointer type
> return regmap_multi_reg_write(arizona->regmap, wseq, nregs);
> ^
> In file included from sound/soc/codecs/wm5110.c:19:0:
> include/linux/regmap.h:427:5: note: expected 'const struct reg_sequence *' but argument is of type 'const struct reg_default *'
> int regmap_multi_reg_write(struct regmap *map, const struct reg_sequence *regs,
> ^
> sound/soc/codecs/wm5110.c: In function 'wm5110_clear_pga_volume':
> sound/soc/codecs/wm5110.c:362:8: warning: passing argument 2 of 'regmap_multi_reg_write_bypassed' from incompatible pointer type
> ret = regmap_multi_reg_write_bypassed(arizona->regmap, &clear_pga, 1);
> ^
> In file included from sound/soc/codecs/wm5110.c:19:0:
> include/linux/regmap.h:429:5: note: expected 'const struct reg_sequence *' but argument is of type 'struct reg_default *'
> int regmap_multi_reg_write_bypassed(struct regmap *map,
> ^
> drivers/mfd/wm5110-tables.c: In function 'wm5110_patch':
> drivers/mfd/wm5110-tables.c:279:10: warning: passing argument 2 of 'regmap_register_patch' from incompatible pointer type
> return regmap_register_patch(arizona->regmap,
> ^
> In file included from include/linux/mfd/arizona/core.h:17:0,
> from drivers/mfd/wm5110-tables.c:15:
> include/linux/regmap.h:469:5: note: expected 'const struct reg_sequence *' but argument is of type 'const struct reg_default *'
> int regmap_register_patch(struct regmap *map, const struct reg_sequence *regs,
> ^
> drivers/mfd/wm8998-tables.c: In function 'wm8998_patch':
> drivers/mfd/wm8998-tables.c:48:9: warning: passing argument 2 of 'regmap_register_patch' from incompatible pointer type
> return regmap_register_patch(arizona->regmap,
> ^
> In file included from include/linux/mfd/arizona/core.h:17:0,
> from drivers/mfd/wm8998-tables.c:15:
> include/linux/regmap.h:469:5: note: expected 'const struct reg_sequence *' but argument is of type 'const struct reg_default *'
> int regmap_register_patch(struct regmap *map, const struct reg_sequence *regs,
> ^
>
> Introduced by commit
>
> 8019ff6cfc04 ("regmap: Use reg_sequence for multi_reg_write / register_patch")
>
> interacting with commit
>
> 561629755a21 ("mfd: arizona: Add support for WM8998 and WM1814")
>
> from the mfd tree and commits
>
> d1acd31883d7 ("ASoC: wm5110: Add special DRE on/off handling for the headphone path")
> 81207880cef2 ("mfd: wm5110: Add register patch for rev E and above")
>
> from the sound-asoc tree.
>
> I may make up a merge fix for these on Monday ... I love API changes :-(

Hi Stephen, Mark,

What is the best course of action here? I am more than happy to help with
whatever is needed but unsure of the etiquette here and also not sure
what I can do.

Clearly there are some clients that need updating but they were not
present in the regmap tree, so is the correct thing to do to merge
in the mfd and sound-asoc tree and provide a fixup commit?

Just let me know and I am happy to do whatever is deemed correct.

Thanks
Nariman

> --
> Cheers,
> Stephen Rothwell [email protected]

2015-07-17 10:35:03

by Mark Brown

[permalink] [raw]
Subject: Re: linux-next: build warnings after merge of the regmap tree

On Fri, Jul 17, 2015 at 10:44:36AM +0100, Nariman Poushin wrote:

> What is the best course of action here? I am more than happy to help with
> whatever is needed but unsure of the etiquette here and also not sure
> what I can do.

> Clearly there are some clients that need updating but they were not
> present in the regmap tree, so is the correct thing to do to merge
> in the mfd and sound-asoc tree and provide a fixup commit?

> Just let me know and I am happy to do whatever is deemed correct.

Please send patches fixing the problems you have introduced.


Attachments:
(No filename) (563.00 B)
signature.asc (473.00 B)
Digital signature
Download all attachments

2015-07-17 14:09:31

by Nariman Poushin

[permalink] [raw]
Subject: [PATCH 1/2] mfd: Fixup clients of multi_reg_write/register_patch

Introduced by:
commit 8019ff6cfc04
("regmap: Use reg_sequence for multi_reg_write / register_patch")

Interacting with:
commit 561629755a21 ("mfd: arizona: Add support for WM8998 and WM1814")
commit 81207880cef2 ("mfd: wm5110: Add register patch for rev E and above")

Signed-off-by: Nariman Poushin <[email protected]>
---
drivers/mfd/wm5110-tables.c | 2 +-
drivers/mfd/wm8998-tables.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/mfd/wm5110-tables.c b/drivers/mfd/wm5110-tables.c
index 90b84c1..31a132a 100644
--- a/drivers/mfd/wm5110-tables.c
+++ b/drivers/mfd/wm5110-tables.c
@@ -250,7 +250,7 @@ static const struct reg_sequence wm5110_revd_patch[] = {
};

/* Add extra headphone write sequence locations */
-static const struct reg_default wm5110_reve_patch[] = {
+static const struct reg_sequence wm5110_reve_patch[] = {
{ 0x80, 0x3 },
{ 0x80, 0x3 },
{ 0x4b, 0x138 },
diff --git a/drivers/mfd/wm8998-tables.c b/drivers/mfd/wm8998-tables.c
index 60e8622..73d6842 100644
--- a/drivers/mfd/wm8998-tables.c
+++ b/drivers/mfd/wm8998-tables.c
@@ -21,7 +21,7 @@
#define WM8998_NUM_AOD_ISR 2
#define WM8998_NUM_ISR 5

-static const struct reg_default wm8998_rev_a_patch[] = {
+static const struct reg_sequence wm8998_rev_a_patch[] = {
{ 0x0212, 0x0000 },
{ 0x0211, 0x0014 },
{ 0x04E4, 0x0E0D },
--
2.1.4

2015-07-17 14:11:13

by Nariman Poushin

[permalink] [raw]
Subject: [PATCH 2/2] ASoC: wm5110: Use reg_sequence for multi_reg_write/register_patch

Introduced by:
commit 8019ff6cfc04
("regmap: Use reg_sequence for multi_reg_write / register_patch")

Interacting with:
commit d1acd31883d7
("ASoC: wm5110: Add special DRE on/off handling for the headphone path")

Signed-off-by: Nariman Poushin <[email protected]>
---
sound/soc/codecs/wm5110.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/sound/soc/codecs/wm5110.c b/sound/soc/codecs/wm5110.c
index df6a998..9756578 100644
--- a/sound/soc/codecs/wm5110.c
+++ b/sound/soc/codecs/wm5110.c
@@ -185,7 +185,7 @@ static int wm5110_sysclk_ev(struct snd_soc_dapm_widget *w,
return 0;
}

-static const struct reg_default wm5110_no_dre_left_enable[] = {
+static const struct reg_sequence wm5110_no_dre_left_enable[] = {
{ 0x3024, 0xE410 },
{ 0x3025, 0x0056 },
{ 0x301B, 0x0224 },
@@ -203,7 +203,7 @@ static const struct reg_default wm5110_no_dre_left_enable[] = {
{ 0x3039, 0x3080 },
};

-static const struct reg_default wm5110_dre_left_enable[] = {
+static const struct reg_sequence wm5110_dre_left_enable[] = {
{ 0x3024, 0x0231 },
{ 0x3025, 0x0B00 },
{ 0x301B, 0x0227 },
@@ -221,7 +221,7 @@ static const struct reg_default wm5110_dre_left_enable[] = {
{ 0x3039, 0x0B00 },
};

-static const struct reg_default wm5110_no_dre_right_enable[] = {
+static const struct reg_sequence wm5110_no_dre_right_enable[] = {
{ 0x3074, 0xE414 },
{ 0x3075, 0x0056 },
{ 0x306B, 0x0224 },
@@ -239,7 +239,7 @@ static const struct reg_default wm5110_no_dre_right_enable[] = {
{ 0x3089, 0x3080 },
};

-static const struct reg_default wm5110_dre_right_enable[] = {
+static const struct reg_sequence wm5110_dre_right_enable[] = {
{ 0x3074, 0x0231 },
{ 0x3075, 0x0B00 },
{ 0x306B, 0x0227 },
@@ -263,7 +263,7 @@ static int wm5110_hp_pre_enable(struct snd_soc_dapm_widget *w)
struct arizona_priv *priv = snd_soc_codec_get_drvdata(codec);
struct arizona *arizona = priv->arizona;
unsigned int val = snd_soc_read(codec, ARIZONA_DRE_ENABLE);
- const struct reg_default *wseq;
+ const struct reg_sequence *wseq;
int nregs;

switch (w->shift) {
@@ -354,7 +354,7 @@ static int wm5110_hp_ev(struct snd_soc_dapm_widget *w,

static int wm5110_clear_pga_volume(struct arizona *arizona, int output)
{
- struct reg_default clear_pga = {
+ struct reg_sequence clear_pga = {
ARIZONA_OUTPUT_PATH_CONFIG_1L + output * 4, 0x80
};
int ret;
--
2.1.4

2015-07-17 15:29:59

by Nariman Poushin

[permalink] [raw]
Subject: Re: linux-next: build warnings after merge of the regmap tree

On Fri, Jul 17, 2015 at 11:34:50AM +0100, Mark Brown wrote:
> On Fri, Jul 17, 2015 at 10:44:36AM +0100, Nariman Poushin wrote:
>
> > What is the best course of action here? I am more than happy to help with
> > whatever is needed but unsure of the etiquette here and also not sure
> > what I can do.
>
> > Clearly there are some clients that need updating but they were not
> > present in the regmap tree, so is the correct thing to do to merge
> > in the mfd and sound-asoc tree and provide a fixup commit?
>
> > Just let me know and I am happy to do whatever is deemed correct.
>
> Please send patches fixing the problems you have introduced.

I have sent the patches to fix the build errors you found Stephen.
Just wanted to let you guys know I will be on vacation for 1 week,
so if there are any issues they might not be addressed until then.

Thanks
Nariman

2015-07-17 16:45:20

by Charles Keepax

[permalink] [raw]
Subject: Re: linux-next: build warnings after merge of the regmap tree

On Fri, Jul 17, 2015 at 04:29:55PM +0100, Nariman Poushin wrote:
> On Fri, Jul 17, 2015 at 11:34:50AM +0100, Mark Brown wrote:
> > On Fri, Jul 17, 2015 at 10:44:36AM +0100, Nariman Poushin wrote:
> >
> > > What is the best course of action here? I am more than happy to help with
> > > whatever is needed but unsure of the etiquette here and also not sure
> > > what I can do.
> >
> > > Clearly there are some clients that need updating but they were not
> > > present in the regmap tree, so is the correct thing to do to merge
> > > in the mfd and sound-asoc tree and provide a fixup commit?
> >
> > > Just let me know and I am happy to do whatever is deemed correct.
> >
> > Please send patches fixing the problems you have introduced.
>
> I have sent the patches to fix the build errors you found Stephen.
> Just wanted to let you guys know I will be on vacation for 1 week,
> so if there are any issues they might not be addressed until then.
>
> Thanks
> Nariman

If you include myself and Richard Fitzgerald
([email protected]) one of us will pick things up if
there are any issues.

Thanks,
Charles

2015-07-17 17:57:16

by Mark Brown

[permalink] [raw]
Subject: Re: [PATCH 1/2] mfd: Fixup clients of multi_reg_write/register_patch

On Fri, Jul 17, 2015 at 03:09:26PM +0100, Nariman Poushin wrote:
> Introduced by:
> commit 8019ff6cfc04
> ("regmap: Use reg_sequence for multi_reg_write / register_patch")

Lee, feel free to pull the request below in to get the API update or let
me know if you want me to merge some MFD changes instead:

The following changes since commit d770e558e21961ad6cfdf0ff7df0eb5d7d4f0754:

Linux 4.2-rc1 (2015-07-05 11:01:52 -0700)

are available in the git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap.git tags/regmap-seq-delay-api

for you to fetch changes up to 8019ff6cfc0440415fcfb6352c58c3951e6ab053:

regmap: Use reg_sequence for multi_reg_write / register_patch (2015-07-16 22:02:55 +0100)

----------------------------------------------------------------
regmap: Create a new struct reg_sequence for register sequences

In order to allow us to start adding extra annotations for sequences
without bloating register default tables duplicate the structure under
the new name reg_sequence and update the APIs to use that instead of
reg_default.

----------------------------------------------------------------
Nariman Poushin (1):
regmap: Use reg_sequence for multi_reg_write / register_patch

drivers/base/regmap/internal.h | 2 +-
drivers/base/regmap/regmap.c | 22 +++++++++++-----------
drivers/gpu/drm/i2c/adv7511.c | 2 +-
drivers/input/misc/drv260x.c | 6 +++---
drivers/input/misc/drv2665.c | 2 +-
drivers/input/misc/drv2667.c | 4 ++--
drivers/mfd/arizona-core.c | 2 +-
drivers/mfd/twl6040.c | 2 +-
drivers/mfd/wm5102-tables.c | 6 +++---
drivers/mfd/wm5110-tables.c | 6 +++---
drivers/mfd/wm8994-core.c | 8 ++++----
drivers/mfd/wm8997-tables.c | 2 +-
include/linux/regmap.h | 17 ++++++++++++++---
sound/soc/codecs/arizona.c | 2 +-
sound/soc/codecs/cs35l32.c | 2 +-
sound/soc/codecs/cs42l52.c | 2 +-
sound/soc/codecs/da7210.c | 4 ++--
sound/soc/codecs/rt5640.c | 2 +-
sound/soc/codecs/rt5645.c | 4 ++--
sound/soc/codecs/rt5651.c | 2 +-
sound/soc/codecs/rt5670.c | 2 +-
sound/soc/codecs/rt5677.c | 2 +-
sound/soc/codecs/tlv320aic3x.c | 2 +-
sound/soc/codecs/wm2200.c | 2 +-
sound/soc/codecs/wm5100.c | 2 +-
sound/soc/codecs/wm8962.c | 2 +-
sound/soc/codecs/wm8993.c | 2 +-
27 files changed, 62 insertions(+), 51 deletions(-)


Attachments:
(No filename) (2.37 kB)
signature.asc (473.00 B)
Digital signature
Download all attachments

2015-07-20 01:59:38

by Stephen Rothwell

[permalink] [raw]
Subject: Re: [PATCH 1/2] mfd: Fixup clients of multi_reg_write/register_patch

Hi Nariman,

On Fri, 17 Jul 2015 15:09:26 +0100 Nariman Poushin <[email protected]> wrote:
>
> Introduced by:
> commit 8019ff6cfc04
> ("regmap: Use reg_sequence for multi_reg_write / register_patch")
>
> Interacting with:
> commit 561629755a21 ("mfd: arizona: Add support for WM8998 and WM1814")
> commit 81207880cef2 ("mfd: wm5110: Add register patch for rev E and above")
>
> Signed-off-by: Nariman Poushin <[email protected]>
> ---
> drivers/mfd/wm5110-tables.c | 2 +-
> drivers/mfd/wm8998-tables.c | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)

I will apply both these patches as merge fix patches in linux-next
today. Thanks.

--
Cheers,
Stephen Rothwell [email protected]