原创作品,允许转载,转载时请务必以超链接形式标明文章
原始出处 、作者信息和本声明。否则将追究法律责任。
http://ticktick.blog.51cto.com/823160/760965
- extern int i2c_master_send(struct i2c_client *,const char* ,int);
- extern int i2c_master_recv(struct i2c_client *,char* ,int);
- static int tvp5158_i2c_write( struct i2c_client* client,uint8_t reg,uint8_t data)
- {
- unsigned char buffer[2];
- buffer[0] = reg;
- buffer[1] = data;
- if( 2!= i2c_master_send(client,buffer,2) ) {
- printk( KERN_ERR " tvp5158_i2c_write fail! \n" );
- return -1;
- }
- return 0;
- }
- static int tvp5158_i2c_read( struct i2c_client* client,uint8_t reg,uint8_t *data)
- {
- // write reg addr
- if( 1!= i2c_master_send(client,®,1) ) {
- printk( KERN_ERR " tvp5158_i2c_read fail! \n" );
- return -1;
- }
- // wait
- msleep(10);
- // read
- if( 1!= i2c_master_recv(client,data,1) ) {
- printk( KERN_ERR " tvp5158_i2c_read fail! \n" );
- return -1;
- }
- return 0;
- }