diff --git a/bsp/nxp/imx/imx6ull-smart/drivers/drv_i2c.c b/bsp/nxp/imx/imx6ull-smart/drivers/drv_i2c.c index c9981d340b7..b0ac8c1ab60 100644 --- a/bsp/nxp/imx/imx6ull-smart/drivers/drv_i2c.c +++ b/bsp/nxp/imx/imx6ull-smart/drivers/drv_i2c.c @@ -79,7 +79,7 @@ static rt_ssize_t imx6ull_i2c_mst_xfer(struct rt_i2c_bus_device *bus, struct rt_ if(msgs[i].flags & RT_I2C_RD) { xfer.flags = kI2C_TransferNoStartFlag; - xfer.slaveAddress = msgs[i].addr; + xfer.slaveAddress = msgs[i].addr >> 1; xfer.direction = kI2C_Read; xfer.subaddress = 0; xfer.subaddressSize = 0; @@ -107,7 +107,7 @@ static rt_ssize_t imx6ull_i2c_mst_xfer(struct rt_i2c_bus_device *bus, struct rt_ else { xfer.flags = kI2C_TransferNoStartFlag; - xfer.slaveAddress = msgs[i].addr; + xfer.slaveAddress = msgs[i].addr >> 1; xfer.direction = kI2C_Write; xfer.subaddress = 0; xfer.subaddressSize = 0; diff --git a/bsp/nxp/imx/imxrt/libraries/drivers/drv_i2c.c b/bsp/nxp/imx/imxrt/libraries/drivers/drv_i2c.c index 7210421c318..afa90695df8 100644 --- a/bsp/nxp/imx/imxrt/libraries/drivers/drv_i2c.c +++ b/bsp/nxp/imx/imxrt/libraries/drivers/drv_i2c.c @@ -269,7 +269,7 @@ static rt_ssize_t imxrt_i2c_mst_xfer(struct rt_i2c_bus_device *bus, { if ((imxrt_i2c->msg[i].flags & RT_I2C_NO_START) != RT_I2C_NO_START) { - if (LPI2C_MasterStart(imxrt_i2c->I2C, imxrt_i2c->msg[i].addr, kLPI2C_Write) != kStatus_Success) + if (LPI2C_MasterStart(imxrt_i2c->I2C, imxrt_i2c->msg[i].addr >> 1, kLPI2C_Write) != kStatus_Success) { i = 0; break; @@ -279,7 +279,7 @@ static rt_ssize_t imxrt_i2c_mst_xfer(struct rt_i2c_bus_device *bus, { } - if (LPI2C_MasterRepeatedStart(imxrt_i2c->I2C, imxrt_i2c->msg[i].addr, kLPI2C_Read) != kStatus_Success) + if (LPI2C_MasterRepeatedStart(imxrt_i2c->I2C, imxrt_i2c->msg[i].addr >> 1, kLPI2C_Read) != kStatus_Success) { i = 0; break; @@ -287,7 +287,7 @@ static rt_ssize_t imxrt_i2c_mst_xfer(struct rt_i2c_bus_device *bus, } else { - if (LPI2C_MasterStart(imxrt_i2c->I2C, imxrt_i2c->msg[i].addr, kLPI2C_Read) != kStatus_Success) + if (LPI2C_MasterStart(imxrt_i2c->I2C, imxrt_i2c->msg[i].addr >> 1, kLPI2C_Read) != kStatus_Success) { i = 0; break; @@ -298,7 +298,7 @@ static rt_ssize_t imxrt_i2c_mst_xfer(struct rt_i2c_bus_device *bus, } } - if (LPI2C_MasterStart(imxrt_i2c->I2C, imxrt_i2c->msg[i].addr, kLPI2C_Read) != kStatus_Success) + if (LPI2C_MasterStart(imxrt_i2c->I2C, imxrt_i2c->msg[i].addr >> 1, kLPI2C_Read) != kStatus_Success) { i = 0; break; @@ -316,7 +316,7 @@ static rt_ssize_t imxrt_i2c_mst_xfer(struct rt_i2c_bus_device *bus, } else { - if (LPI2C_MasterStart(imxrt_i2c->I2C, imxrt_i2c->msg[i].addr, kLPI2C_Write) != kStatus_Success) + if (LPI2C_MasterStart(imxrt_i2c->I2C, imxrt_i2c->msg[i].addr >> 1, kLPI2C_Write) != kStatus_Success) { i = 0; break; diff --git a/bsp/nxp/lpc/lpc54114-lite/drivers/drv_i2c.c b/bsp/nxp/lpc/lpc54114-lite/drivers/drv_i2c.c index c98e3c9cc6c..09f9bc769ad 100644 --- a/bsp/nxp/lpc/lpc54114-lite/drivers/drv_i2c.c +++ b/bsp/nxp/lpc/lpc54114-lite/drivers/drv_i2c.c @@ -55,7 +55,7 @@ static rt_ssize_t master_xfer(struct rt_i2c_bus_device *bus, struct rt_i2c_msg m if (!(msg->flags & RT_I2C_NO_START)) { /* Start condition and slave address. */ - result = I2C_MasterStart(lpc_i2c->base, msg->addr, direction); + result = I2C_MasterStart(lpc_i2c->base, msg->addr >> 1, direction); } if (result == kStatus_Success) diff --git a/bsp/nxp/lpc/lpc54608-LPCXpresso/drivers/drv_i2c.c b/bsp/nxp/lpc/lpc54608-LPCXpresso/drivers/drv_i2c.c index 9ac4704b462..e2669170d09 100644 --- a/bsp/nxp/lpc/lpc54608-LPCXpresso/drivers/drv_i2c.c +++ b/bsp/nxp/lpc/lpc54608-LPCXpresso/drivers/drv_i2c.c @@ -159,7 +159,7 @@ static rt_ssize_t lpc_i2c_xfer(struct rt_i2c_bus_device *bus, if (msg->flags & RT_I2C_RD) { - xfer.slaveAddress = msg->addr; + xfer.slaveAddress = msg->addr >> 1; xfer.direction = kI2C_Read; xfer.subaddress = 1; xfer.subaddressSize = 1; @@ -175,7 +175,7 @@ static rt_ssize_t lpc_i2c_xfer(struct rt_i2c_bus_device *bus, } else { - xfer.slaveAddress = msg->addr; + xfer.slaveAddress = msg->addr >> 1; xfer.direction = kI2C_Write; xfer.subaddress = 0; xfer.subaddressSize = 1; diff --git a/bsp/nxp/lpc/lpc55sxx/Libraries/drivers/drv_i2c.c b/bsp/nxp/lpc/lpc55sxx/Libraries/drivers/drv_i2c.c index 128d53a9f75..9b8a9b00526 100644 --- a/bsp/nxp/lpc/lpc55sxx/Libraries/drivers/drv_i2c.c +++ b/bsp/nxp/lpc/lpc55sxx/Libraries/drivers/drv_i2c.c @@ -99,7 +99,7 @@ static rt_ssize_t lpc_i2c_xfer(struct rt_i2c_bus_device *bus, if (msg->flags & RT_I2C_RD) { - xfer.slaveAddress = msg->addr; + xfer.slaveAddress = msg->addr >> 1; xfer.direction = kI2C_Read; xfer.subaddress = 0; xfer.subaddressSize = 0; @@ -120,7 +120,7 @@ static rt_ssize_t lpc_i2c_xfer(struct rt_i2c_bus_device *bus, } else { - xfer.slaveAddress = msg->addr; + xfer.slaveAddress = msg->addr >> 1; xfer.direction = kI2C_Write; xfer.subaddress = 0; xfer.subaddressSize = 0; diff --git a/bsp/nxp/mcx/mcxa/Libraries/drivers/drv_i2c.c b/bsp/nxp/mcx/mcxa/Libraries/drivers/drv_i2c.c index 5f79a1828f5..e72adab7187 100644 --- a/bsp/nxp/mcx/mcxa/Libraries/drivers/drv_i2c.c +++ b/bsp/nxp/mcx/mcxa/Libraries/drivers/drv_i2c.c @@ -67,7 +67,7 @@ static rt_ssize_t lpc_i2c_xfer(struct rt_i2c_bus_device *bus, struct rt_i2c_msg if (msg->flags & RT_I2C_RD) { - xfer.slaveAddress = msg->addr; + xfer.slaveAddress = msg->addr >> 1; xfer.direction = kLPI2C_Read; xfer.subaddress = 0; xfer.subaddressSize = 0; @@ -86,7 +86,7 @@ static rt_ssize_t lpc_i2c_xfer(struct rt_i2c_bus_device *bus, struct rt_i2c_msg } else { - xfer.slaveAddress = msg->addr; + xfer.slaveAddress = msg->addr >> 1; xfer.direction = kLPI2C_Write; xfer.subaddress = 0; xfer.subaddressSize = 0; diff --git a/bsp/nxp/mcx/mcxc/Libraries/drivers/drv_i2c.c b/bsp/nxp/mcx/mcxc/Libraries/drivers/drv_i2c.c index 0c1b75cc55e..1d29923b16b 100644 --- a/bsp/nxp/mcx/mcxc/Libraries/drivers/drv_i2c.c +++ b/bsp/nxp/mcx/mcxc/Libraries/drivers/drv_i2c.c @@ -57,7 +57,7 @@ static int mcx_i2c_master_xfer(struct rt_i2c_bus_device *bus, struct rt_i2c_msg if (msg->flags & RT_I2C_RD) { - xfer.slaveAddress = msg->addr; + xfer.slaveAddress = msg->addr >> 1; xfer.direction = kI2C_Read; xfer.subaddress = 0; xfer.subaddressSize = 0; @@ -84,7 +84,7 @@ static int mcx_i2c_master_xfer(struct rt_i2c_bus_device *bus, struct rt_i2c_msg } else { - xfer.slaveAddress = msg->addr; + xfer.slaveAddress = msg->addr >> 1; xfer.direction = kI2C_Write; xfer.subaddress = 0; xfer.subaddressSize = 0; diff --git a/bsp/nxp/mcx/mcxn/Libraries/drivers/drv_i2c.c b/bsp/nxp/mcx/mcxn/Libraries/drivers/drv_i2c.c index 4f27fd7e410..ab5b971b94f 100644 --- a/bsp/nxp/mcx/mcxn/Libraries/drivers/drv_i2c.c +++ b/bsp/nxp/mcx/mcxn/Libraries/drivers/drv_i2c.c @@ -93,7 +93,7 @@ static rt_ssize_t lpc_i2c_xfer(struct rt_i2c_bus_device *bus, struct rt_i2c_msg if (msg->flags & RT_I2C_RD) { - xfer.slaveAddress = msg->addr; + xfer.slaveAddress = msg->addr >> 1; xfer.direction = kLPI2C_Read; xfer.subaddress = 0; xfer.subaddressSize = 0; @@ -112,7 +112,7 @@ static rt_ssize_t lpc_i2c_xfer(struct rt_i2c_bus_device *bus, struct rt_i2c_msg } else { - xfer.slaveAddress = msg->addr; + xfer.slaveAddress = msg->addr >> 1; xfer.direction = kLPI2C_Write; xfer.subaddress = 0; xfer.subaddressSize = 0;