From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mark Brown Date: Tue, 07 Sep 2010 10:02:55 +0000 Subject: Re: [PATCH 2/4 v2] ASoC: Add sh_mobile_hdmi sound support Message-Id: <20100907100255.GC7886@rakim.wolfsonmicro.main> List-Id: References: <20100906102557.GE10367@rakim.wolfsonmicro.main> <20100907094047.GA7886@rakim.wolfsonmicro.main> In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: Guennadi Liakhovetski Cc: Linux-ALSA , Paul Mundt , Liam Girdwood , Kuninori Morimoto , Linux-SH On Tue, Sep 07, 2010 at 11:56:34AM +0200, Guennadi Liakhovetski wrote: > On Tue, 7 Sep 2010, Mark Brown wrote: > > Could you please be more explicit here? Register I/O needs to happen > > somehow... > Sorry, maybe I am missing something, but my understanding is, that the > ASoC core knows nothing about codec's specific register layout, so, the > core itself cannot initiate any register IO. So, I presume, there can be > only two instances, that can do that - the codec driver itself and some > user-space (debugging) programs. The driver doesn't use cached register > accesses, so, it can access the registers directly, and it doesn't have to > provide an ability to the user-space to access registers - if it chooses > so. So, I don't see, who should be trying to use generic ASoC register > access routines here. All register I/O, cached or not, is supposed to go through the register I/O operations. Any cache is abstraced away within those operations. Since the driver presumably needs do do some I/O (even if only in the hw_params() you have identified as missing) I would expect it to provide register I/O functionality.