diff --git a/drivers/gpio/gpio_pca95xx.c b/drivers/gpio/gpio_pca95xx.c index 38aec647941..1ab895f1ae6 100644 --- a/drivers/gpio/gpio_pca95xx.c +++ b/drivers/gpio/gpio_pca95xx.c @@ -113,16 +113,12 @@ static int write_port_regs(struct device *dev, u8_t reg, "0x%X", i2c_addr, reg, buf->byte[0], (reg + 1), buf->byte[1]); - ret = i2c_reg_write_byte(i2c_master, i2c_addr, reg, buf->byte[0]); + ret = i2c_burst_write(i2c_master, i2c_addr, reg, buf->byte, 2); if (ret) { LOG_ERR("PCA95XX[0x%X]: error writing to register 0x%X " "(%d)", i2c_addr, reg, ret); } - ret = i2c_reg_write_byte(i2c_master, i2c_addr, reg+1, buf->byte[1]); - if (ret) { - LOG_ERR("PCA95XX[0x%X]: error writing to register 0x%X " - "(%d)", i2c_addr, reg, ret); - } + return ret; }