[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190730141822.GI54126@ediswmail.ad.cirrus.com>
Date: Tue, 30 Jul 2019 15:18:22 +0100
From: Charles Keepax <ckeepax@...nsource.cirrus.com>
To: Thomas Preston <thomas.preston@...ethink.co.uk>
CC: Mark Rutland <mark.rutland@....com>, <devicetree@...r.kernel.org>,
<alsa-devel@...a-project.org>,
Marco Felsch <m.felsch@...gutronix.de>,
Kuninori Morimoto <kuninori.morimoto.gx@...esas.com>,
Kirill Marinushkin <kmarinushkin@...dec.tech>,
Cheng-Yi Chiang <cychiang@...omium.org>,
<linux-kernel@...r.kernel.org>, Takashi Iwai <tiwai@...e.com>,
Rob Herring <robh+dt@...nel.org>,
Liam Girdwood <lgirdwood@...il.com>,
Paul Cercueil <paul@...pouillou.net>,
Vinod Koul <vkoul@...nel.org>, Mark Brown <broonie@...nel.org>,
Srinivas Kandagatla <srinivas.kandagatla@...aro.org>,
Annaliese McDermond <nh6z@...z.net>,
Jerome Brunet <jbrunet@...libre.com>
Subject: Re: [alsa-devel] [PATCH v2 3/3] ASoC: TDA7802: Add turn-on
diagnostic routine
On Tue, Jul 30, 2019 at 03:04:19PM +0100, Thomas Preston wrote:
> On 30/07/2019 13:41, Charles Keepax wrote:
> >> +static int tda7802_bulk_update(struct regmap *map, struct reg_update *update,
> >> + size_t update_count)
> >> +{
> >> + int i, err;
> >> +
> >> + for (i = 0; i < update_count; i++) {
> >> + err = regmap_update_bits(map, update[i].reg, update[i].mask,
> >> + update[i].val);
> >> + if (err < 0)
> >> + return err;
> >> + }
> >> +
> >> + return i;
> >> +}
> >
> > This could probably be removed using regmap_multi_reg_write.
> >
>
> The problem is that I want to retain the state of the other bits in those
> registers. Maybe I should make a copy of the backed up state, set the bits
> I want to off-device, then either:
>
> 1. Write the changes with regmap_multi_reg_write
> 2. Write all six regs again (if my device doesn't support the multi_reg)
>
Nah sorry my bad you are probably better off they way you are.
Thanks,
Charles
Powered by blists - more mailing lists