[alsa-devel] [PATCH V2 1/4] regmap: cache: Add "was_reset" argument to regcache_sync_region()

Mark Brown broonie at kernel.org
Wed Apr 29 18:46:32 CEST 2015


On Wed, Apr 29, 2015 at 07:13:27AM -0700, Kevin Cernekee wrote:
> On Wed, Apr 29, 2015 at 3:40 AM, Mark Brown <broonie at kernel.org> wrote:

> > Like I said above we can tell if the hardware was reset because
> > mark_dirty() is called.

> That covers the public API, but I do not understand how you intended
> for this data to be stored in the rbtree if the use of a dirty bitmask
> is discouraged.

We just need a single boolean?

> i.e. regcache_sync() finds a register value marked "present".  How do
> we know whether we need to write it back to the hardware?  For the
> special case of "cached non default register values immediately after
> a HW reset" you can mostly figure this out, but if there was no HW
> reset how do we know which entries changed while the HW was
> inaccessible?

In the first instance do we care?

> > I'm not suggesting that we do anything based on the presence of a cache
> > entry, I'm suggesting that we could avoid having to ever cache values
> > that never get referenced on a system (which can be a lot of them for
> > common use cases) saving us memory.

> This seems to be solving a different problem.  It sounds like you are
> more worried about regcache_sync() writing back lots of default values
> for registers that were never touched, than performing unnecessary
> writes to a few (actively used) registers that weren't changed while
> we were in cache_only mode.  Is that accurate?

No.  This is nothing to do with sync, it's just something that might be
nice.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 473 bytes
Desc: Digital signature
URL: <http://mailman.alsa-project.org/pipermail/alsa-devel/attachments/20150429/4b424fce/attachment.sig>


More information about the Alsa-devel mailing list