drivers/xpowers/axp209: Adapt to new I²C API
Originally, axp209_(read|write) accessors relied on i2c_(read|write)
to return the number of bytes transferred. This was changed in
* cdb61a6
i2c: Replace the i2c API.
to return an error code or 0 on success. This caused the AXP209 check
to fail. Fix the accessors to account for this new behavior.
Change-Id: Ib0f492bd52260d224d87f8e8f2d3c1244d1507df
Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Reviewed-on: http://review.coreboot.org/8432
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Tested-by: build bot (Jenkins)
This commit is contained in:
parent
1cc77e0f89
commit
1959abd790
|
@ -43,16 +43,22 @@ enum registers {
|
||||||
* is no limitation on the AXP209 as to how many registers we may read or write
|
* is no limitation on the AXP209 as to how many registers we may read or write
|
||||||
* in one transaction.
|
* in one transaction.
|
||||||
* These return the number of bytes read/written, or an error code. In this
|
* These return the number of bytes read/written, or an error code. In this
|
||||||
* case, they return 1 on success, or an error code otherwise.
|
* case, they return 1 on success, or an error code otherwise. This is done to
|
||||||
|
* work with I²C drivers that return either 0 on success or the number of bytes
|
||||||
|
* actually transferred.
|
||||||
*/
|
*/
|
||||||
static int axp209_read(u8 bus, u8 reg, u8 *val)
|
static int axp209_read(u8 bus, u8 reg, u8 *val)
|
||||||
{
|
{
|
||||||
return i2c_readb(bus, AXP209_I2C_ADDR, reg, val);
|
if (i2c_readb(bus, AXP209_I2C_ADDR, reg, val) < 0)
|
||||||
|
return CB_ERR;
|
||||||
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int axp209_write(u8 bus, u8 reg, u8 val)
|
static int axp209_write(u8 bus, u8 reg, u8 val)
|
||||||
{
|
{
|
||||||
return i2c_writeb(bus, AXP209_I2C_ADDR, reg, val);
|
if (i2c_writeb(bus, AXP209_I2C_ADDR, reg, val) < 0)
|
||||||
|
return CB_ERR;
|
||||||
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Reference in New Issue