/linux-master/drivers/media/pci/saa7164/ |
H A D | saa7164-i2c.c | 16 static int i2c_xfer(struct i2c_adapter *i2c_adap, struct i2c_msg *msgs, int num) argument 26 __func__, num, msgs[i].addr, msgs[i].len); 27 if (msgs[i].flags & I2C_M_RD) { 29 msgs[i].addr, 31 NULL /* reg */, msgs[i].len, msgs[i].buf); 32 } else if (i + 1 < num && (msgs[i + 1].flags & I2C_M_RD) && 33 msgs[i].addr == msgs[ [all...] |
/linux-master/drivers/net/mdio/ |
H A D | mdio-i2c.c | 37 struct i2c_msg msgs[2]; local 52 msgs[0].addr = bus_addr; 53 msgs[0].flags = 0; 54 msgs[0].len = p - addr; 55 msgs[0].buf = addr; 56 msgs[1].addr = bus_addr; 57 msgs[1].flags = I2C_M_RD; 58 msgs[1].len = sizeof(data); 59 msgs[1].buf = data; 61 ret = i2c_transfer(i2c, msgs, ARRAY_SIZ 133 __i2c_transfer_err(struct i2c_adapter *i2c, struct i2c_msg *msgs, int num) argument 150 struct i2c_msg msgs[2]; local 196 i2c_transfer_rollball(struct i2c_adapter *i2c, struct i2c_msg *msgs, int num) argument 232 struct i2c_msg msgs[2]; local 275 struct i2c_msg msgs[2]; local [all...] |
/linux-master/sound/soc/codecs/ |
H A D | sigmadsp-i2c.c | 43 struct i2c_msg msgs[2]; local 49 msgs[0].addr = client->addr; 50 msgs[0].len = sizeof(buf); 51 msgs[0].buf = buf; 52 msgs[0].flags = 0; 54 msgs[1].addr = client->addr; 55 msgs[1].len = len; 56 msgs[1].buf = data; 57 msgs[1].flags = I2C_M_RD; 59 ret = i2c_transfer(client->adapter, msgs, ARRAY_SIZ [all...] |
/linux-master/drivers/input/touchscreen/ |
H A D | cyttsp_i2c_common.c | 32 struct i2c_msg msgs[] = { local 48 retval = i2c_transfer(client->adapter, msgs, ARRAY_SIZE(msgs)); 52 return retval != ARRAY_SIZE(msgs) ? -EIO : 0; 62 struct i2c_msg msgs[] = { local 75 retval = i2c_transfer(client->adapter, msgs, ARRAY_SIZE(msgs)); 79 return retval != ARRAY_SIZE(msgs) ? -EIO : 0;
|
/linux-master/drivers/video/fbdev/via/ |
H A D | via_i2c.c | 111 struct i2c_msg msgs[2]; local 116 msgs[0].flags = 0; 117 msgs[1].flags = I2C_M_RD; 118 msgs[0].addr = msgs[1].addr = slave_addr / 2; 120 msgs[0].len = 1; msgs[1].len = 1; 121 msgs[0].buf = mm1; msgs[1].buf = pdata; 122 ret = i2c_transfer(&via_i2c_par[adap].adapter, msgs, 135 struct i2c_msg msgs; local 156 struct i2c_msg msgs[2]; local [all...] |
/linux-master/drivers/i2c/busses/ |
H A D | i2c-octeon-core.c | 416 static int octeon_i2c_hlc_read(struct octeon_i2c *i2c, struct i2c_msg *msgs) argument 426 cmd |= (u64)(msgs[0].len - 1) << SW_TWSI_SIZE_SHIFT; 428 cmd |= (u64)(msgs[0].addr & 0x7full) << SW_TWSI_ADDR_SHIFT; 430 if (msgs[0].flags & I2C_M_TEN) 444 for (i = 0, j = msgs[0].len - 1; i < msgs[0].len && i < 4; i++, j--) 445 msgs[0].buf[j] = (cmd >> (8 * i)) & 0xff; 447 if (msgs[0].len > 4) { 449 for (i = 0; i < msgs[0].len - 4 && i < 4; i++, j--) 450 msgs[ 458 octeon_i2c_hlc_write(struct octeon_i2c *i2c, struct i2c_msg *msgs) argument 502 octeon_i2c_hlc_comp_read(struct octeon_i2c *i2c, struct i2c_msg *msgs) argument 556 octeon_i2c_hlc_comp_write(struct octeon_i2c *i2c, struct i2c_msg *msgs) argument 618 octeon_i2c_xfer(struct i2c_adapter *adap, struct i2c_msg *msgs, int num) argument [all...] |
H A D | i2c-tegra-bpmp.c | 84 struct i2c_msg *msgs, 91 struct i2c_msg *msg = &msgs[i]; 128 struct i2c_msg *msgs, 136 if (msgs[i].flags & I2C_M_RD) 137 len += msgs[i].len; 143 if (msgs[i].flags & I2C_M_RD) { 144 memcpy(msgs[i].buf, buf + pos, msgs[i].len); 145 pos += msgs[i].len; 152 static int tegra_bpmp_i2c_msg_len_check(struct i2c_msg *msgs, unsigne argument 82 tegra_bpmp_serialize_i2c_msg(struct tegra_bpmp_i2c *i2c, struct mrq_i2c_request *request, struct i2c_msg *msgs, unsigned int num) argument 126 tegra_bpmp_i2c_deserialize(struct tegra_bpmp_i2c *i2c, struct mrq_i2c_response *response, struct i2c_msg *msgs, unsigned int num) argument 225 tegra_bpmp_i2c_xfer_common(struct i2c_adapter *adapter, struct i2c_msg *msgs, int num, bool atomic) argument 259 tegra_bpmp_i2c_xfer(struct i2c_adapter *adapter, struct i2c_msg *msgs, int num) argument 265 tegra_bpmp_i2c_xfer_atomic(struct i2c_adapter *adapter, struct i2c_msg *msgs, int num) argument [all...] |
H A D | i2c-virtio.c | 59 struct i2c_msg *msgs, int num) 73 reqs[i].out_hdr.addr = cpu_to_le16(msgs[i].addr << 1); 75 if (msgs[i].flags & I2C_M_RD) 84 if (msgs[i].len) { 85 reqs[i].buf = i2c_get_dma_safe_msg_buf(&msgs[i], 1); 89 sg_init_one(&msg_buf, reqs[i].buf, msgs[i].len); 91 if (msgs[i].flags & I2C_M_RD) 101 i2c_put_dma_safe_msg_buf(reqs[i].buf, &msgs[i], false); 111 struct i2c_msg *msgs, int num) 124 i2c_put_dma_safe_msg_buf(reqs[i].buf, &msgs[ 57 virtio_i2c_prepare_reqs(struct virtqueue *vq, struct virtio_i2c_req *reqs, struct i2c_msg *msgs, int num) argument 109 virtio_i2c_complete_reqs(struct virtqueue *vq, struct virtio_i2c_req *reqs, struct i2c_msg *msgs, int num) argument 133 virtio_i2c_xfer(struct i2c_adapter *adap, struct i2c_msg *msgs, int num) argument [all...] |
H A D | i2c-opal.c | 73 static int i2c_opal_master_xfer(struct i2c_adapter *adap, struct i2c_msg *msgs, argument 86 req.type = (msgs[0].flags & I2C_M_RD) ? 88 req.addr = cpu_to_be16(msgs[0].addr); 89 req.size = cpu_to_be32(msgs[0].len); 90 req.buffer_ra = cpu_to_be64(__pa(msgs[0].buf)); 93 req.type = (msgs[1].flags & I2C_M_RD) ? 95 req.addr = cpu_to_be16(msgs[0].addr); 96 req.subaddr_sz = msgs[0].len; 97 for (i = 0; i < msgs[0].len; i++) 98 req.subaddr = (req.subaddr << 8) | msgs[ [all...] |
/linux-master/drivers/gpu/drm/amd/amdgpu/ |
H A D | amdgpu_eeprom.c | 96 struct i2c_msg msgs[] = { local 114 msgs[0].addr = MAKE_I2C_ADDR(eeprom_addr); 115 msgs[1].addr = msgs[0].addr; 116 msgs[0].buf[0] = (eeprom_addr >> 8) & 0xff; 117 msgs[0].buf[1] = eeprom_addr & 0xff; 146 msgs[1].len = len; 147 msgs[1].buf = eeprom_buf; 151 r = i2c_transfer(i2c_adap, msgs, ARRAY_SIZE(msgs)); [all...] |
H A D | atombios_i2c.h | 28 struct i2c_msg *msgs, int num);
|
/linux-master/drivers/iio/imu/bmi323/ |
H A D | bmi323_i2c.c | 30 struct i2c_msg msgs[2]; local 33 msgs[0].addr = priv->i2c->addr; 34 msgs[0].flags = priv->i2c->flags; 35 msgs[0].len = reg_size; 36 msgs[0].buf = (u8 *)reg_buf; 38 msgs[1].addr = priv->i2c->addr; 39 msgs[1].len = val_size + BMI323_I2C_DUMMY; 40 msgs[1].buf = priv->i2c_rx_buffer; 41 msgs[1].flags = priv->i2c->flags | I2C_M_RD; 43 ret = i2c_transfer(priv->i2c->adapter, msgs, ARRAY_SIZ [all...] |
/linux-master/drivers/mfd/ |
H A D | tps6594-i2c.c | 23 static int tps6594_i2c_transfer(struct i2c_adapter *adap, struct i2c_msg *msgs, int num) argument 25 int ret = i2c_transfer(adap, msgs, num); 37 struct i2c_msg msgs[2]; local 54 msgs[0].addr = addr; 55 msgs[0].flags = 0; 56 msgs[0].len = 1; 57 msgs[0].buf = ® 60 msgs[1].addr = msgs[0].addr; 61 msgs[ 108 struct i2c_msg msgs[2]; local [all...] |
/linux-master/drivers/media/usb/stk1160/ |
H A D | stk1160-i2c.c | 152 struct i2c_msg msgs[], int num) 158 addr = msgs[i].addr << 1; 161 if (!msgs[i].len) { 169 } else if (msgs[i].flags & I2C_M_RD) { 175 } else if (i + 1 < num && msgs[i].len <= 2 && 176 (msgs[i + 1].flags & I2C_M_RD) && 177 msgs[i].addr == msgs[i + 1].addr) { 179 if (msgs[i].len != 1 || msgs[ 151 stk1160_i2c_xfer(struct i2c_adapter *i2c_adap, struct i2c_msg msgs[], int num) argument [all...] |
/linux-master/drivers/media/pci/solo6x10/ |
H A D | solo6x10-i2c.c | 27 struct i2c_msg msgs[2]; local 30 msgs[0].flags = 0; 31 msgs[0].addr = addr; 32 msgs[0].len = 1; 33 msgs[0].buf = &off; 35 msgs[1].flags = I2C_M_RD; 36 msgs[1].addr = addr; 37 msgs[1].len = 1; 38 msgs[1].buf = &data; 40 i2c_transfer(&solo_dev->i2c_adap[id], msgs, 48 struct i2c_msg msgs; local 206 solo_i2c_master_xfer(struct i2c_adapter *adap, struct i2c_msg msgs[], int num) argument [all...] |
/linux-master/drivers/media/pci/ddbridge/ |
H A D | ddbridge-i2c.h | 27 struct i2c_msg msgs[2] = { { .addr = adr, .flags = 0, local 32 return (i2c_transfer(adapter, msgs, 2) == 2) ? 0 : -1; 46 struct i2c_msg msgs[1] = { { .addr = adr, .flags = I2C_M_RD, local 49 return (i2c_transfer(adapter, msgs, 1) == 1) ? 0 : -1; 55 struct i2c_msg msgs[2] = { { .addr = adr, .flags = 0, local 60 return (i2c_transfer(adapter, msgs, 2) == 2) ? 0 : -1; 67 struct i2c_msg msgs[2] = { { .addr = adr, .flags = 0, local 72 return (i2c_transfer(adapter, msgs, 2) == 2) ? 0 : -1;
|
/linux-master/drivers/media/usb/hdpvr/ |
H A D | hdpvr-i2c.c | 110 static int hdpvr_transfer(struct i2c_adapter *i2c_adapter, struct i2c_msg *msgs, argument 118 addr = msgs[0].addr << 1; 121 if (msgs[0].flags & I2C_M_RD) 123 msgs[0].buf, msgs[0].len); 125 retval = hdpvr_i2c_write(dev, 1, addr, msgs[0].buf, 126 msgs[0].len); 128 if (msgs[0].addr != msgs[1].addr) { 134 if ((msgs[ [all...] |
/linux-master/drivers/media/usb/go7007/ |
H A D | go7007-i2c.c | 146 struct i2c_msg msgs[], int num) 154 if (msgs[i].len == 2) { 155 if (i + 1 == num || msgs[i].addr != msgs[i + 1].addr || 156 (msgs[i].flags & I2C_M_RD) || 157 !(msgs[i + 1].flags & I2C_M_RD) || 158 msgs[i + 1].len != 1) 160 if (go7007_i2c_xfer(go, msgs[i].addr, 1, 161 (msgs[i].buf[0] << 8) | msgs[ 145 go7007_i2c_master_xfer(struct i2c_adapter *adapter, struct i2c_msg msgs[], int num) argument [all...] |
/linux-master/drivers/gpu/drm/xe/ |
H A D | xe_gpu_scheduler_types.h | 48 /** @msgs: list of messages to be processed in @work_process_msg */ 49 struct list_head msgs; member in struct:xe_gpu_scheduler
|
/linux-master/drivers/media/pci/cx25821/ |
H A D | cx25821-i2c.c | 224 static int i2c_xfer(struct i2c_adapter *i2c_adap, struct i2c_msg *msgs, int num) argument 234 __func__, num, msgs[i].addr, msgs[i].len); 236 if (msgs[i].flags & I2C_M_RD) { 238 retval = i2c_readbytes(i2c_adap, &msgs[i], 0); 239 } else if (i + 1 < num && (msgs[i + 1].flags & I2C_M_RD) && 240 msgs[i].addr == msgs[i + 1].addr) { 242 retval = i2c_sendbytes(i2c_adap, &msgs[i], 243 msgs[ 351 struct i2c_msg msgs[2] = { local 384 struct i2c_msg msgs[1] = { local [all...] |
/linux-master/drivers/rtc/ |
H A D | rtc-isl12026.c | 48 struct i2c_msg msgs[] = { local 62 ret = i2c_transfer(client->adapter, msgs, ARRAY_SIZE(msgs)); 63 if (ret != ARRAY_SIZE(msgs)) { 210 struct i2c_msg msgs[] = { local 225 msgs[1].len = 1; 226 msgs[1].buf = &sr; 228 ret = i2c_transfer(client->adapter, msgs, ARRAY_SIZE(msgs)); 229 if (ret != ARRAY_SIZE(msgs)) { 283 struct i2c_msg msgs[] = { local 329 struct i2c_msg msgs[] = { local [all...] |
/linux-master/drivers/media/pci/pt3/ |
H A D | pt3_i2c.c | 103 /* translates msgs to internal commands for bit-banging */ 104 static void translate(struct pt3_i2cbuf *cbuf, struct i2c_msg *msgs, int num) argument 111 rd = !!(msgs[i].flags & I2C_M_RD); 113 put_byte_write(cbuf, msgs[i].addr << 1 | rd); 115 put_byte_read(cbuf, msgs[i].len); 117 for (j = 0; j < msgs[i].len; j++) 118 put_byte_write(cbuf, msgs[i].buf[j]); 144 /* send [pre-]translated i2c msgs stored at addr */ 192 pt3_i2c_master_xfer(struct i2c_adapter *adap, struct i2c_msg *msgs, int num) argument 203 if (msgs[ [all...] |
/linux-master/drivers/gpu/drm/gma500/ |
H A D | psb_intel_modes.c | 23 struct i2c_msg msgs[] = { local 38 ret = i2c_transfer(adapter, msgs, 2);
|
/linux-master/drivers/gpu/drm/nouveau/include/nvkm/subdev/ |
H A D | i2c.h | 93 struct i2c_msg msgs[] = { local 98 int ret = i2c_transfer(adap, msgs, ARRAY_SIZE(msgs)); 109 struct i2c_msg msgs[] = { local 114 int ret = i2c_transfer(adap, msgs, ARRAY_SIZE(msgs)); 125 struct i2c_msg msgs[] = { local 129 int ret = i2c_transfer(adap, msgs, ARRAY_SIZE(msgs)); 140 struct i2c_msg msgs[] local [all...] |
/linux-master/drivers/i2c/ |
H A D | i2c-dev.c | 236 unsigned nmsgs, struct i2c_msg *msgs) 243 kfree(msgs); 250 if (msgs[i].len > 8192) { 255 data_ptrs[i] = (u8 __user *)msgs[i].buf; 256 msgs[i].buf = memdup_user(data_ptrs[i], msgs[i].len); 257 if (IS_ERR(msgs[i].buf)) { 258 res = PTR_ERR(msgs[i].buf); 262 msgs[i].flags |= I2C_M_DMA_SAFE; 275 if (msgs[ 235 i2cdev_ioctl_rdwr(struct i2c_client *client, unsigned nmsgs, struct i2c_msg *msgs) argument 515 compat_caddr_t msgs; /* struct i2c_msg __user *msgs */ member in struct:i2c_rdwr_ioctl_data32 [all...] |