Skip to content

Commit 9a9c401

Browse files
committed
fix:nxp i2c addr err
1 parent 3fdb940 commit 9a9c401

File tree

8 files changed

+18
-18
lines changed

8 files changed

+18
-18
lines changed

bsp/nxp/imx/imx6ull-smart/drivers/drv_i2c.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ static rt_ssize_t imx6ull_i2c_mst_xfer(struct rt_i2c_bus_device *bus, struct rt_
7979
if(msgs[i].flags & RT_I2C_RD)
8080
{
8181
xfer.flags = kI2C_TransferNoStartFlag;
82-
xfer.slaveAddress = msgs[i].addr;
82+
xfer.slaveAddress = msgs[i].addr >> 1;
8383
xfer.direction = kI2C_Read;
8484
xfer.subaddress = 0;
8585
xfer.subaddressSize = 0;
@@ -107,7 +107,7 @@ static rt_ssize_t imx6ull_i2c_mst_xfer(struct rt_i2c_bus_device *bus, struct rt_
107107
else
108108
{
109109
xfer.flags = kI2C_TransferNoStartFlag;
110-
xfer.slaveAddress = msgs[i].addr;
110+
xfer.slaveAddress = msgs[i].addr >> 1;
111111
xfer.direction = kI2C_Write;
112112
xfer.subaddress = 0;
113113
xfer.subaddressSize = 0;

bsp/nxp/imx/imxrt/libraries/drivers/drv_i2c.c

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -269,7 +269,7 @@ static rt_ssize_t imxrt_i2c_mst_xfer(struct rt_i2c_bus_device *bus,
269269
{
270270
if ((imxrt_i2c->msg[i].flags & RT_I2C_NO_START) != RT_I2C_NO_START)
271271
{
272-
if (LPI2C_MasterStart(imxrt_i2c->I2C, imxrt_i2c->msg[i].addr, kLPI2C_Write) != kStatus_Success)
272+
if (LPI2C_MasterStart(imxrt_i2c->I2C, imxrt_i2c->msg[i].addr >> 1, kLPI2C_Write) != kStatus_Success)
273273
{
274274
i = 0;
275275
break;
@@ -279,15 +279,15 @@ static rt_ssize_t imxrt_i2c_mst_xfer(struct rt_i2c_bus_device *bus,
279279
{
280280
}
281281

282-
if (LPI2C_MasterRepeatedStart(imxrt_i2c->I2C, imxrt_i2c->msg[i].addr, kLPI2C_Read) != kStatus_Success)
282+
if (LPI2C_MasterRepeatedStart(imxrt_i2c->I2C, imxrt_i2c->msg[i].addr >> 1, kLPI2C_Read) != kStatus_Success)
283283
{
284284
i = 0;
285285
break;
286286
}
287287
}
288288
else
289289
{
290-
if (LPI2C_MasterStart(imxrt_i2c->I2C, imxrt_i2c->msg[i].addr, kLPI2C_Read) != kStatus_Success)
290+
if (LPI2C_MasterStart(imxrt_i2c->I2C, imxrt_i2c->msg[i].addr >> 1, kLPI2C_Read) != kStatus_Success)
291291
{
292292
i = 0;
293293
break;
@@ -298,7 +298,7 @@ static rt_ssize_t imxrt_i2c_mst_xfer(struct rt_i2c_bus_device *bus,
298298
}
299299
}
300300

301-
if (LPI2C_MasterStart(imxrt_i2c->I2C, imxrt_i2c->msg[i].addr, kLPI2C_Read) != kStatus_Success)
301+
if (LPI2C_MasterStart(imxrt_i2c->I2C, imxrt_i2c->msg[i].addr >> 1, kLPI2C_Read) != kStatus_Success)
302302
{
303303
i = 0;
304304
break;
@@ -316,7 +316,7 @@ static rt_ssize_t imxrt_i2c_mst_xfer(struct rt_i2c_bus_device *bus,
316316
}
317317
else
318318
{
319-
if (LPI2C_MasterStart(imxrt_i2c->I2C, imxrt_i2c->msg[i].addr, kLPI2C_Write) != kStatus_Success)
319+
if (LPI2C_MasterStart(imxrt_i2c->I2C, imxrt_i2c->msg[i].addr >> 1, kLPI2C_Write) != kStatus_Success)
320320
{
321321
i = 0;
322322
break;

bsp/nxp/lpc/lpc54114-lite/drivers/drv_i2c.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ static rt_ssize_t master_xfer(struct rt_i2c_bus_device *bus, struct rt_i2c_msg m
5555
if (!(msg->flags & RT_I2C_NO_START))
5656
{
5757
/* Start condition and slave address. */
58-
result = I2C_MasterStart(lpc_i2c->base, msg->addr, direction);
58+
result = I2C_MasterStart(lpc_i2c->base, msg->addr >> 1, direction);
5959
}
6060

6161
if (result == kStatus_Success)

bsp/nxp/lpc/lpc54608-LPCXpresso/drivers/drv_i2c.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,7 @@ static rt_ssize_t lpc_i2c_xfer(struct rt_i2c_bus_device *bus,
159159

160160
if (msg->flags & RT_I2C_RD)
161161
{
162-
xfer.slaveAddress = msg->addr;
162+
xfer.slaveAddress = msg->addr >> 1;
163163
xfer.direction = kI2C_Read;
164164
xfer.subaddress = 1;
165165
xfer.subaddressSize = 1;
@@ -175,7 +175,7 @@ static rt_ssize_t lpc_i2c_xfer(struct rt_i2c_bus_device *bus,
175175
}
176176
else
177177
{
178-
xfer.slaveAddress = msg->addr;
178+
xfer.slaveAddress = msg->addr >> 1;
179179
xfer.direction = kI2C_Write;
180180
xfer.subaddress = 0;
181181
xfer.subaddressSize = 1;

bsp/nxp/lpc/lpc55sxx/Libraries/drivers/drv_i2c.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ static rt_ssize_t lpc_i2c_xfer(struct rt_i2c_bus_device *bus,
9999

100100
if (msg->flags & RT_I2C_RD)
101101
{
102-
xfer.slaveAddress = msg->addr;
102+
xfer.slaveAddress = msg->addr >> 1;
103103
xfer.direction = kI2C_Read;
104104
xfer.subaddress = 0;
105105
xfer.subaddressSize = 0;
@@ -120,7 +120,7 @@ static rt_ssize_t lpc_i2c_xfer(struct rt_i2c_bus_device *bus,
120120
}
121121
else
122122
{
123-
xfer.slaveAddress = msg->addr;
123+
xfer.slaveAddress = msg->addr >> 1;
124124
xfer.direction = kI2C_Write;
125125
xfer.subaddress = 0;
126126
xfer.subaddressSize = 0;

bsp/nxp/mcx/mcxa/Libraries/drivers/drv_i2c.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ static rt_ssize_t lpc_i2c_xfer(struct rt_i2c_bus_device *bus, struct rt_i2c_msg
6767

6868
if (msg->flags & RT_I2C_RD)
6969
{
70-
xfer.slaveAddress = msg->addr;
70+
xfer.slaveAddress = msg->addr >> 1;
7171
xfer.direction = kLPI2C_Read;
7272
xfer.subaddress = 0;
7373
xfer.subaddressSize = 0;
@@ -86,7 +86,7 @@ static rt_ssize_t lpc_i2c_xfer(struct rt_i2c_bus_device *bus, struct rt_i2c_msg
8686
}
8787
else
8888
{
89-
xfer.slaveAddress = msg->addr;
89+
xfer.slaveAddress = msg->addr >> 1;
9090
xfer.direction = kLPI2C_Write;
9191
xfer.subaddress = 0;
9292
xfer.subaddressSize = 0;

bsp/nxp/mcx/mcxc/Libraries/drivers/drv_i2c.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ static int mcx_i2c_master_xfer(struct rt_i2c_bus_device *bus, struct rt_i2c_msg
5757

5858
if (msg->flags & RT_I2C_RD)
5959
{
60-
xfer.slaveAddress = msg->addr;
60+
xfer.slaveAddress = msg->addr >> 1;
6161
xfer.direction = kI2C_Read;
6262
xfer.subaddress = 0;
6363
xfer.subaddressSize = 0;
@@ -84,7 +84,7 @@ static int mcx_i2c_master_xfer(struct rt_i2c_bus_device *bus, struct rt_i2c_msg
8484
}
8585
else
8686
{
87-
xfer.slaveAddress = msg->addr;
87+
xfer.slaveAddress = msg->addr >> 1;
8888
xfer.direction = kI2C_Write;
8989
xfer.subaddress = 0;
9090
xfer.subaddressSize = 0;

bsp/nxp/mcx/mcxn/Libraries/drivers/drv_i2c.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@ static rt_ssize_t lpc_i2c_xfer(struct rt_i2c_bus_device *bus, struct rt_i2c_msg
9393

9494
if (msg->flags & RT_I2C_RD)
9595
{
96-
xfer.slaveAddress = msg->addr;
96+
xfer.slaveAddress = msg->addr >> 1;
9797
xfer.direction = kLPI2C_Read;
9898
xfer.subaddress = 0;
9999
xfer.subaddressSize = 0;
@@ -112,7 +112,7 @@ static rt_ssize_t lpc_i2c_xfer(struct rt_i2c_bus_device *bus, struct rt_i2c_msg
112112
}
113113
else
114114
{
115-
xfer.slaveAddress = msg->addr;
115+
xfer.slaveAddress = msg->addr >> 1;
116116
xfer.direction = kLPI2C_Write;
117117
xfer.subaddress = 0;
118118
xfer.subaddressSize = 0;

0 commit comments

Comments
 (0)