Source
46
46
ret = i2c_smbus_read_byte_data(tc3589x->i2c, reg);
47
47
if (ret < 0)
48
48
dev_err(tc3589x->dev, "failed to read reg %#x: %d\n",
49
49
reg, ret);
50
50
51
51
return ret;
52
52
}
53
53
EXPORT_SYMBOL_GPL(tc3589x_reg_read);
54
54
55
55
/**
56
-
* tc3589x_reg_read() - write a single TC3589x register
56
+
* tc3589x_reg_write() - write a single TC3589x register
57
57
* @tc3589x: Device to write to
58
58
* @reg: Register to read
59
59
* @data: Value to write
60
60
*/
61
61
int tc3589x_reg_write(struct tc3589x *tc3589x, u8 reg, u8 data)
62
62
{
63
63
int ret;
64
64
65
65
ret = i2c_smbus_write_byte_data(tc3589x->i2c, reg, data);
66
66
if (ret < 0)
111
111
112
112
return ret;
113
113
}
114
114
EXPORT_SYMBOL_GPL(tc3589x_block_write);
115
115
116
116
/**
117
117
* tc3589x_set_bits() - set the value of a bitfield in a TC3589x register
118
118
* @tc3589x: Device to write to
119
119
* @reg: Register to write
120
120
* @mask: Mask of bits to set
121
-
* @values: Value to set
121
+
* @val: Value to set
122
122
*/
123
123
int tc3589x_set_bits(struct tc3589x *tc3589x, u8 reg, u8 mask, u8 val)
124
124
{
125
125
int ret;
126
126
127
127
mutex_lock(&tc3589x->lock);
128
128
129
129
ret = tc3589x_reg_read(tc3589x, reg);
130
130
if (ret < 0)
131
131
goto out;