Re: [alsa-devel] [PATCH 1/2] regmap: cache: Fix regcache_sync_block for non-autoincrementing devices

From: Mark Brown
Date: Wed Aug 27 2014 - 04:19:12 EST


On Wed, Aug 27, 2014 at 08:52:16AM +0300, Jarkko Nikula wrote:

> I don't know. I was thinking that also but was unsure about it since
> regcache_sync_block_raw() and regcache_sync_block_single() code paths use
> different regmap write functions. regcache_sync_block_raw() ends up calling
> _regmap_raw_write() which takes care of page select operation when needed
> and regcache_sync_block_single() uses _regmap_write() which doesn't.

> Which makes me thinking should the regcache_sync_block_single() also use
> _regmap_raw_write() in order to take care of page selects?

We can't use raw_write() for everything since not every bus can do a raw
write. We probably need to push the select_page() operation into the
_regmap_write() path though, it looks like it's getting missed at the
minute. I ought to redo a lot of that code to simplify it, it's got too
many tentacles at the minute.

Attachment: signature.asc
Description: Digital signature