Commit 2e10e74d authored by Alexandre Belloni's avatar Alexandre Belloni

rtc: rx8025: fix transfer mode

The datasheet specifies that transfer mode must be 0 for write and either
0x4 (simplified read) or 0 (standard read). 0x8 is not specified, use
standard mode.
Signed-off-by: default avatarAlexandre Belloni <alexandre.belloni@free-electrons.com>
parent 32672c55
......@@ -77,7 +77,7 @@ struct rx8025_data {
static int rx8025_read_reg(struct i2c_client *client, int number, u8 *value)
{
int ret = i2c_smbus_read_byte_data(client, (number << 4) | 0x08);
int ret = i2c_smbus_read_byte_data(client, number << 4);
if (ret < 0) {
dev_err(&client->dev, "Unable to read register #%d\n", number);
......@@ -91,7 +91,7 @@ static int rx8025_read_reg(struct i2c_client *client, int number, u8 *value)
static int rx8025_read_regs(struct i2c_client *client,
int number, u8 length, u8 *values)
{
int ret = i2c_smbus_read_i2c_block_data(client, (number << 4) | 0x08,
int ret = i2c_smbus_read_i2c_block_data(client, number << 4,
length, values);
if (ret != length) {
......@@ -117,7 +117,7 @@ static int rx8025_write_reg(struct i2c_client *client, int number, u8 value)
static int rx8025_write_regs(struct i2c_client *client,
int number, u8 length, u8 *values)
{
int ret = i2c_smbus_write_i2c_block_data(client, (number << 4) | 0x08,
int ret = i2c_smbus_write_i2c_block_data(client, number << 4,
length, values);
if (ret)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment