Hi, Charles: On 15 February 2017 at 19:24, Charles Keepax < ckeepax@xxxxxxxxxxxxxxxxxxxxxxxxxxx> wrote: > On Wed, Feb 15, 2017 at 06:55:10PM +0800, Baoyou Xie wrote: > > This patch adds aud96p22 controller driver for zte's SoC family. > > > > Signed-off-by: Baoyou Xie <baoyou.xie@xxxxxxxxxx> > > --- > <snip> > > +static int zx_aud96p22_i2c_write(struct i2c_client *i2c_client, > > + const void *data, size_t count) > > +{ > > + int xfer; > > + > > + xfer = i2c_master_send(i2c_client, data, count); > > + if (xfer == count) > > + return 0; > > + else if (xfer < 0) > > + return xfer; > > + else > > + return -EIO; > > +} > > + > > +static int zx_aud96p22_i2c_read(struct i2c_client *i2c_client, > > + unsigned char addr) > > +{ > > + int xfer; > > + > > + xfer = i2c_smbus_read_word_data(i2c_client, addr); > > + if (xfer < 0) > > + dev_warn(&i2c_client->dev, "transfer error %d\n", xfer); > > + > > + return xfer; > > +} > > + > > Is there any reason this isn't using regmap? It looks like it > should be, have a look at any of the other mainline CODECs for an > example. > > We can not read the i2c register directly, cause of the i2c is responded asynchronous, and involves i2c irq. I suggest that we access i2c through general i2c interface. > Thanks, > Charles > _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel