Lines Matching refs:msg

1373  * @count: How many bytes to write, must be less than 64k since msg.len is u16
1381 struct i2c_msg msg;
1383 msg.addr = client->addr;
1384 msg.flags = client->flags & I2C_M_TEN;
1385 msg.len = count;
1386 msg.buf = (char *)buf;
1388 ret = i2c_transfer(adap, &msg, 1);
1391 * If everything went ok (i.e. 1 msg transmitted), return #bytes
1402 * @count: How many bytes to read, must be less than 64k since msg.len is u16
1409 struct i2c_msg msg;
1412 msg.addr = client->addr;
1413 msg.flags = client->flags & I2C_M_TEN;
1414 msg.flags |= I2C_M_RD;
1415 msg.len = count;
1416 msg.buf = buf;
1418 ret = i2c_transfer(adap, &msg, 1);
1421 * If everything went ok (i.e. 1 msg received), return #bytes received,
1656 static u8 i2c_smbus_msg_pec(u8 pec, struct i2c_msg *msg)
1659 u8 addr = (msg->addr << 1) | !!(msg->flags & I2C_M_RD);
1663 return i2c_smbus_pec(pec, msg->buf, msg->len);
1667 static inline void i2c_smbus_add_pec(struct i2c_msg *msg)
1669 msg->buf[msg->len] = i2c_smbus_msg_pec(0, msg);
1670 msg->len++;
1678 static int i2c_smbus_check_pec(u8 cpec, struct i2c_msg *msg)
1680 u8 rpec = msg->buf[--msg->len];
1681 cpec = i2c_smbus_msg_pec(cpec, msg);
1935 struct i2c_msg msg[2] = { { addr, flags, 1, msgbuf0 },
1945 msg[0].len = 0;
1947 msg[0].flags = flags | (read_write == I2C_SMBUS_READ ?
1954 msg[0].flags = I2C_M_RD | flags;
1960 msg[1].len = 1;
1962 msg[0].len = 2;
1968 msg[1].len = 2;
1970 msg[0].len = 3;
1978 msg[0].len = 3;
1979 msg[1].len = 2;
1985 msg[1].flags |= I2C_M_RECV_LEN;
1986 msg[1].len = 1; /* block length will be added by
1989 msg[0].len = data->block[0] + 2;
1990 if (msg[0].len > I2C_SMBUS_BLOCK_MAX + 2) {
1996 for (i = 1; i < msg[0].len; i++)
2009 msg[0].len = data->block[0] + 2;
2010 for (i = 1; i < msg[0].len; i++)
2012 msg[1].flags |= I2C_M_RECV_LEN;
2013 msg[1].len = 1; /* block length will be added by
2018 msg[1].len = data->block[0];
2020 msg[0].len = data->block[0] + 1;
2021 if (msg[0].len > I2C_SMBUS_BLOCK_MAX + 1) {
2040 if (!(msg[0].flags & I2C_M_RD)) {
2042 i2c_smbus_add_pec(&msg[0]);
2044 partial_pec = i2c_smbus_msg_pec(0, &msg[0]);
2047 if (msg[num-1].flags & I2C_M_RD)
2048 msg[num-1].len++;
2051 status = i2c_transfer(adapter, msg, num);
2056 if (i && (msg[num-1].flags & I2C_M_RD)) {
2057 status = i2c_smbus_check_pec(partial_pec, &msg[num-1]);