[alsa-devel] CS4279 and hw_read_t/hw_write_t

Jon Smirl jonsmirl at gmail.com
Mon Jul 21 17:16:13 CEST 2008


On 7/21/08, Timur Tabi <timur at freescale.com> wrote:
> Jon Smirl wrote:
>  > From soc/codecs/cs4270.c...
>  >
>  >  *
>  >  * Note that we don't use the hw_write function pointer of snd_soc_codec.
>  >  * That's because it's too clunky: the hw_write_t prototype does not match
>  >  * i2c_smbus_write_byte_data(), and it's just another layer of overhead.
>  >  */
>  >
>  > The prototype doesn't match because you are using
>  > i2c_smbus_write_byte_data() instead of
>  > i2c_master_send()/i2c_master_recv().
>
>
> Should I be using i2c_master_send() instead?  I remember reading somewhere that
>  I should be using the i2c smbus functions if possible.

i2c_smbus... will work with either a smbus controller or an i2c
controller. Inside the routine it decides which type of controller and
then ends up calling i2c_master....

You're on an i2c bus, no need to the overhead.

You'd have to read the CS4270 datasheet in detail to see if can even
be hooked up to an smbus controller. smbus is a subset of full i2c.

>
>
>  --
>  Timur Tabi
>  Linux kernel developer at Freescale
>


-- 
Jon Smirl
jonsmirl at gmail.com


More information about the Alsa-devel mailing list