/Linux-v4.19/drivers/i2c/busses/ |
D | i2c-octeon-core.c | 403 static int octeon_i2c_hlc_read(struct octeon_i2c *i2c, struct i2c_msg *msgs) in octeon_i2c_hlc_read() argument 413 cmd |= (u64)(msgs[0].len - 1) << SW_TWSI_SIZE_SHIFT; in octeon_i2c_hlc_read() 415 cmd |= (u64)(msgs[0].addr & 0x7full) << SW_TWSI_ADDR_SHIFT; in octeon_i2c_hlc_read() 417 if (msgs[0].flags & I2C_M_TEN) in octeon_i2c_hlc_read() 431 for (i = 0, j = msgs[0].len - 1; i < msgs[0].len && i < 4; i++, j--) in octeon_i2c_hlc_read() 432 msgs[0].buf[j] = (cmd >> (8 * i)) & 0xff; in octeon_i2c_hlc_read() 434 if (msgs[0].len > 4) { in octeon_i2c_hlc_read() 436 for (i = 0; i < msgs[0].len - 4 && i < 4; i++, j--) in octeon_i2c_hlc_read() 437 msgs[0].buf[j] = (cmd >> (8 * i)) & 0xff; in octeon_i2c_hlc_read() 445 static int octeon_i2c_hlc_write(struct octeon_i2c *i2c, struct i2c_msg *msgs) in octeon_i2c_hlc_write() argument [all …]
|
D | i2c-tegra-bpmp.c | 113 struct i2c_msg *msgs, in tegra_bpmp_serialize_i2c_msg() argument 121 struct i2c_msg *msg = &msgs[i]; in tegra_bpmp_serialize_i2c_msg() 162 struct i2c_msg *msgs, in tegra_bpmp_i2c_deserialize() argument 170 if (msgs[i].flags & I2C_M_RD) in tegra_bpmp_i2c_deserialize() 171 len += msgs[i].len; in tegra_bpmp_i2c_deserialize() 177 if (msgs[i].flags & I2C_M_RD) { in tegra_bpmp_i2c_deserialize() 178 memcpy(msgs[i].buf, buf + pos, msgs[i].len); in tegra_bpmp_i2c_deserialize() 179 pos += msgs[i].len; in tegra_bpmp_i2c_deserialize() 186 static int tegra_bpmp_i2c_msg_len_check(struct i2c_msg *msgs, unsigned int num) in tegra_bpmp_i2c_msg_len_check() argument 192 if (!(msgs[i].flags & I2C_M_RD)) in tegra_bpmp_i2c_msg_len_check() [all …]
|
D | i2c-mt65xx.c | 436 static int mtk_i2c_do_transfer(struct mtk_i2c *i2c, struct i2c_msg *msgs, in mtk_i2c_do_transfer() argument 471 addr_reg = i2c_8bit_addr_from_msg(msgs); in mtk_i2c_do_transfer() 486 writew(msgs->len, i2c->base + OFFSET_TRANSFER_LEN); in mtk_i2c_do_transfer() 487 writew((msgs + 1)->len, i2c->base + in mtk_i2c_do_transfer() 490 writew(msgs->len | ((msgs + 1)->len) << 8, in mtk_i2c_do_transfer() 495 writew(msgs->len, i2c->base + OFFSET_TRANSFER_LEN); in mtk_i2c_do_transfer() 503 rpaddr = dma_map_single(i2c->dev, msgs->buf, in mtk_i2c_do_transfer() 504 msgs->len, DMA_FROM_DEVICE); in mtk_i2c_do_transfer() 514 writel(msgs->len, i2c->pdmabase + OFFSET_RX_LEN); in mtk_i2c_do_transfer() 518 wpaddr = dma_map_single(i2c->dev, msgs->buf, in mtk_i2c_do_transfer() [all …]
|
D | i2c-designware-master.c | 190 struct i2c_msg *msgs = dev->msgs; in i2c_dw_xfer_init() local 198 if (msgs[dev->msg_write_idx].flags & I2C_M_TEN) { in i2c_dw_xfer_init() 217 dw_writel(dev, msgs[dev->msg_write_idx].addr | ic_tar, DW_IC_TAR); in i2c_dw_xfer_init() 242 struct i2c_msg *msgs = dev->msgs; in i2c_dw_xfer_msg() local 245 u32 addr = msgs[dev->msg_write_idx].addr; in i2c_dw_xfer_msg() 253 u32 flags = msgs[dev->msg_write_idx].flags; in i2c_dw_xfer_msg() 260 if (msgs[dev->msg_write_idx].addr != addr) { in i2c_dw_xfer_msg() 269 buf = msgs[dev->msg_write_idx].buf; in i2c_dw_xfer_msg() 270 buf_len = msgs[dev->msg_write_idx].len; in i2c_dw_xfer_msg() 309 if (msgs[dev->msg_write_idx].flags & I2C_M_RD) { in i2c_dw_xfer_msg() [all …]
|
D | i2c-mv64xxx.c | 119 struct i2c_msg *msgs; member 334 drv_data->msg = drv_data->msgs; in mv64xxx_i2c_send_start() 340 mv64xxx_i2c_prepare_for_io(drv_data, drv_data->msgs); in mv64xxx_i2c_send_start() 353 drv_data->msgs++; in mv64xxx_i2c_do_action() 468 if (drv_data->num_msgs == 1 && drv_data->msgs[0].flags & I2C_M_RD) { in mv64xxx_i2c_intr_offload() 469 mv64xxx_i2c_read_offload_rx_data(drv_data, drv_data->msgs); in mv64xxx_i2c_intr_offload() 470 drv_data->msgs++; in mv64xxx_i2c_intr_offload() 478 !(drv_data->msgs[0].flags & I2C_M_RD) && in mv64xxx_i2c_intr_offload() 479 drv_data->msgs[1].flags & I2C_M_RD) { in mv64xxx_i2c_intr_offload() 480 mv64xxx_i2c_read_offload_rx_data(drv_data, drv_data->msgs + 1); in mv64xxx_i2c_intr_offload() [all …]
|
/Linux-v4.19/drivers/media/pci/saa7164/ |
D | saa7164-i2c.c | 26 static int i2c_xfer(struct i2c_adapter *i2c_adap, struct i2c_msg *msgs, int num) in i2c_xfer() argument 36 __func__, num, msgs[i].addr, msgs[i].len); in i2c_xfer() 37 if (msgs[i].flags & I2C_M_RD) { in i2c_xfer() 39 msgs[i].addr, in i2c_xfer() 41 NULL /* reg */, msgs[i].len, msgs[i].buf); in i2c_xfer() 42 } else if (i + 1 < num && (msgs[i + 1].flags & I2C_M_RD) && in i2c_xfer() 43 msgs[i].addr == msgs[i + 1].addr) { in i2c_xfer() 46 retval = saa7164_api_i2c_read(bus, msgs[i].addr, in i2c_xfer() 47 msgs[i].len, msgs[i].buf, in i2c_xfer() 48 msgs[i+1].len, msgs[i+1].buf in i2c_xfer() [all …]
|
/Linux-v4.19/drivers/video/fbdev/via/ |
D | via_i2c.c | 125 struct i2c_msg msgs[2]; in viafb_i2c_readbyte() local 130 msgs[0].flags = 0; in viafb_i2c_readbyte() 131 msgs[1].flags = I2C_M_RD; in viafb_i2c_readbyte() 132 msgs[0].addr = msgs[1].addr = slave_addr / 2; in viafb_i2c_readbyte() 134 msgs[0].len = 1; msgs[1].len = 1; in viafb_i2c_readbyte() 135 msgs[0].buf = mm1; msgs[1].buf = pdata; in viafb_i2c_readbyte() 136 ret = i2c_transfer(&via_i2c_par[adap].adapter, msgs, 2); in viafb_i2c_readbyte() 149 struct i2c_msg msgs; in viafb_i2c_writebyte() local 153 msgs.flags = 0; in viafb_i2c_writebyte() 154 msgs.addr = slave_addr / 2; in viafb_i2c_writebyte() [all …]
|
/Linux-v4.19/drivers/media/usb/tm6000/ |
D | tm6000-i2c.c | 143 struct i2c_msg msgs[], int num) in tm6000_i2c_xfer() argument 149 addr = (msgs[i].addr << 1) & 0xff; in tm6000_i2c_xfer() 151 (msgs[i].flags & I2C_M_RD) ? "read" : "write", in tm6000_i2c_xfer() 152 i == num - 1 ? "stop" : "nonstop", addr, msgs[i].len); in tm6000_i2c_xfer() 153 if (msgs[i].flags & I2C_M_RD) { in tm6000_i2c_xfer() 163 } else if (i + 1 < num && msgs[i].len <= 2 && in tm6000_i2c_xfer() 164 (msgs[i + 1].flags & I2C_M_RD) && in tm6000_i2c_xfer() 165 msgs[i].addr == msgs[i + 1].addr) { in tm6000_i2c_xfer() 168 for (byte = 0; byte < msgs[i].len; byte++) in tm6000_i2c_xfer() 169 printk(KERN_CONT " %02x", msgs[i].buf[byte]); in tm6000_i2c_xfer() [all …]
|
/Linux-v4.19/drivers/media/usb/go7007/ |
D | go7007-i2c.c | 154 struct i2c_msg msgs[], int num) in go7007_i2c_master_xfer() argument 162 if (msgs[i].len == 2) { in go7007_i2c_master_xfer() 163 if (i + 1 == num || msgs[i].addr != msgs[i + 1].addr || in go7007_i2c_master_xfer() 164 (msgs[i].flags & I2C_M_RD) || in go7007_i2c_master_xfer() 165 !(msgs[i + 1].flags & I2C_M_RD) || in go7007_i2c_master_xfer() 166 msgs[i + 1].len != 1) in go7007_i2c_master_xfer() 168 if (go7007_i2c_xfer(go, msgs[i].addr, 1, in go7007_i2c_master_xfer() 169 (msgs[i].buf[0] << 8) | msgs[i].buf[1], in go7007_i2c_master_xfer() 170 0x01, &msgs[i + 1].buf[0]) < 0) in go7007_i2c_master_xfer() 173 } else if (msgs[i].len == 3) { in go7007_i2c_master_xfer() [all …]
|
/Linux-v4.19/sound/soc/codecs/ |
D | sigmadsp-i2c.c | 44 struct i2c_msg msgs[2]; in sigmadsp_read_i2c() local 50 msgs[0].addr = client->addr; in sigmadsp_read_i2c() 51 msgs[0].len = sizeof(buf); in sigmadsp_read_i2c() 52 msgs[0].buf = buf; in sigmadsp_read_i2c() 53 msgs[0].flags = 0; in sigmadsp_read_i2c() 55 msgs[1].addr = client->addr; in sigmadsp_read_i2c() 56 msgs[1].len = len; in sigmadsp_read_i2c() 57 msgs[1].buf = data; in sigmadsp_read_i2c() 58 msgs[1].flags = I2C_M_RD; in sigmadsp_read_i2c() 60 ret = i2c_transfer(client->adapter, msgs, ARRAY_SIZE(msgs)); in sigmadsp_read_i2c() [all …]
|
/Linux-v4.19/drivers/media/usb/stk1160/ |
D | stk1160-i2c.c | 162 struct i2c_msg msgs[], int num) in stk1160_i2c_xfer() argument 168 addr = msgs[i].addr << 1; in stk1160_i2c_xfer() 171 if (!msgs[i].len) { in stk1160_i2c_xfer() 179 } else if (msgs[i].flags & I2C_M_RD) { in stk1160_i2c_xfer() 185 } else if (i + 1 < num && msgs[i].len <= 2 && in stk1160_i2c_xfer() 186 (msgs[i + 1].flags & I2C_M_RD) && in stk1160_i2c_xfer() 187 msgs[i].addr == msgs[i + 1].addr) { in stk1160_i2c_xfer() 189 if (msgs[i].len != 1 || msgs[i + 1].len != 1) { in stk1160_i2c_xfer() 195 dprintk_i2c(" subaddr=%x", msgs[i].buf[0]); in stk1160_i2c_xfer() 197 rc = stk1160_i2c_read_reg(dev, addr, msgs[i].buf[0], in stk1160_i2c_xfer() [all …]
|
/Linux-v4.19/drivers/net/phy/ |
D | mdio-i2c.c | 38 struct i2c_msg msgs[2]; in i2c_mii_read() local 46 msgs[0].addr = bus_addr; in i2c_mii_read() 47 msgs[0].flags = 0; in i2c_mii_read() 48 msgs[0].len = 1; in i2c_mii_read() 49 msgs[0].buf = &dev_addr; in i2c_mii_read() 50 msgs[1].addr = bus_addr; in i2c_mii_read() 51 msgs[1].flags = I2C_M_RD; in i2c_mii_read() 52 msgs[1].len = sizeof(data); in i2c_mii_read() 53 msgs[1].buf = data; in i2c_mii_read() 55 ret = i2c_transfer(i2c, msgs, ARRAY_SIZE(msgs)); in i2c_mii_read() [all …]
|
/Linux-v4.19/drivers/media/usb/hdpvr/ |
D | hdpvr-i2c.c | 114 static int hdpvr_transfer(struct i2c_adapter *i2c_adapter, struct i2c_msg *msgs, in hdpvr_transfer() argument 122 addr = msgs[0].addr << 1; in hdpvr_transfer() 125 if (msgs[0].flags & I2C_M_RD) in hdpvr_transfer() 127 msgs[0].buf, msgs[0].len); in hdpvr_transfer() 129 retval = hdpvr_i2c_write(dev, 1, addr, msgs[0].buf, in hdpvr_transfer() 130 msgs[0].len); in hdpvr_transfer() 132 if (msgs[0].addr != msgs[1].addr) { in hdpvr_transfer() 138 if ((msgs[0].flags & I2C_M_RD) || !(msgs[1].flags & I2C_M_RD)) { in hdpvr_transfer() 140 msgs[0].flags & I2C_M_RD, in hdpvr_transfer() 141 msgs[1].flags & I2C_M_RD); in hdpvr_transfer() [all …]
|
/Linux-v4.19/drivers/rtc/ |
D | rtc-pcf8523.c | 47 struct i2c_msg msgs[2]; in pcf8523_read() local 51 msgs[0].addr = client->addr; in pcf8523_read() 52 msgs[0].flags = 0; in pcf8523_read() 53 msgs[0].len = sizeof(reg); in pcf8523_read() 54 msgs[0].buf = ® in pcf8523_read() 56 msgs[1].addr = client->addr; in pcf8523_read() 57 msgs[1].flags = I2C_M_RD; in pcf8523_read() 58 msgs[1].len = sizeof(value); in pcf8523_read() 59 msgs[1].buf = &value; in pcf8523_read() 61 err = i2c_transfer(client->adapter, msgs, ARRAY_SIZE(msgs)); in pcf8523_read() [all …]
|
D | rtc-isl12026.c | 49 struct i2c_msg msgs[] = { in isl12026_read_reg() local 63 ret = i2c_transfer(client->adapter, msgs, ARRAY_SIZE(msgs)); in isl12026_read_reg() 64 if (ret != ARRAY_SIZE(msgs)) { in isl12026_read_reg() 211 struct i2c_msg msgs[] = { in isl12026_rtc_read_time() local 226 msgs[1].len = 1; in isl12026_rtc_read_time() 227 msgs[1].buf = &sr; in isl12026_rtc_read_time() 229 ret = i2c_transfer(client->adapter, msgs, ARRAY_SIZE(msgs)); in isl12026_rtc_read_time() 230 if (ret != ARRAY_SIZE(msgs)) { in isl12026_rtc_read_time() 244 msgs[1].len = sizeof(ccr); in isl12026_rtc_read_time() 245 msgs[1].buf = ccr; in isl12026_rtc_read_time() [all …]
|
/Linux-v4.19/drivers/media/pci/solo6x10/ |
D | solo6x10-i2c.c | 36 struct i2c_msg msgs[2]; in solo_i2c_readbyte() local 39 msgs[0].flags = 0; in solo_i2c_readbyte() 40 msgs[0].addr = addr; in solo_i2c_readbyte() 41 msgs[0].len = 1; in solo_i2c_readbyte() 42 msgs[0].buf = &off; in solo_i2c_readbyte() 44 msgs[1].flags = I2C_M_RD; in solo_i2c_readbyte() 45 msgs[1].addr = addr; in solo_i2c_readbyte() 46 msgs[1].len = 1; in solo_i2c_readbyte() 47 msgs[1].buf = &data; in solo_i2c_readbyte() 49 i2c_transfer(&solo_dev->i2c_adap[id], msgs, 2); in solo_i2c_readbyte() [all …]
|
/Linux-v4.19/drivers/input/touchscreen/ |
D | cyttsp_i2c_common.c | 42 struct i2c_msg msgs[] = { in cyttsp_i2c_read_block_data() local 58 retval = i2c_transfer(client->adapter, msgs, ARRAY_SIZE(msgs)); in cyttsp_i2c_read_block_data() 62 return retval != ARRAY_SIZE(msgs) ? -EIO : 0; in cyttsp_i2c_read_block_data() 72 struct i2c_msg msgs[] = { in cyttsp_i2c_write_block_data() local 85 retval = i2c_transfer(client->adapter, msgs, ARRAY_SIZE(msgs)); in cyttsp_i2c_write_block_data() 89 return retval != ARRAY_SIZE(msgs) ? -EIO : 0; in cyttsp_i2c_write_block_data()
|
/Linux-v4.19/drivers/media/pci/pt3/ |
D | pt3_i2c.c | 104 static void translate(struct pt3_i2cbuf *cbuf, struct i2c_msg *msgs, int num) in translate() argument 111 rd = !!(msgs[i].flags & I2C_M_RD); in translate() 113 put_byte_write(cbuf, msgs[i].addr << 1 | rd); in translate() 115 put_byte_read(cbuf, msgs[i].len); in translate() 117 for (j = 0; j < msgs[i].len; j++) in translate() 118 put_byte_write(cbuf, msgs[i].buf[j]); in translate() 192 pt3_i2c_master_xfer(struct i2c_adapter *adap, struct i2c_msg *msgs, int num) in pt3_i2c_master_xfer() argument 203 if (msgs[i].flags & I2C_M_RECV_LEN) { in pt3_i2c_master_xfer() 210 translate(cbuf, msgs, num); in pt3_i2c_master_xfer() 219 if ((msgs[i].flags & I2C_M_RD) && msgs[i].len > 0) { in pt3_i2c_master_xfer() [all …]
|
/Linux-v4.19/drivers/media/usb/pvrusb2/ |
D | pvrusb2-i2c-core.c | 373 struct i2c_msg msgs[], in pvr2_i2c_xfer() argument 384 if (msgs[0].addr < PVR2_I2C_FUNC_CNT) { in pvr2_i2c_xfer() 385 funcp = hdw->i2c_func[msgs[0].addr]; in pvr2_i2c_xfer() 393 if (msgs[0].flags & I2C_M_RD) { in pvr2_i2c_xfer() 396 if (!msgs[0].len) { in pvr2_i2c_xfer() 398 if (funcp(hdw,msgs[0].addr,NULL,0,NULL,0)) { in pvr2_i2c_xfer() 408 tcnt = msgs[0].len; in pvr2_i2c_xfer() 415 if (funcp(hdw,msgs[0].addr,NULL,0, in pvr2_i2c_xfer() 416 msgs[0].buf+offs,bcnt)) { in pvr2_i2c_xfer() 428 if (funcp(hdw,msgs[0].addr, in pvr2_i2c_xfer() [all …]
|
/Linux-v4.19/drivers/w1/slaves/ |
D | w1_ds28e17.c | 349 struct i2c_msg *msgs, int num) in w1_f19_i2c_master_transfer() argument 371 && msgs[i].addr == msgs[i+1].addr in w1_f19_i2c_master_transfer() 372 && !(msgs[i].flags & I2C_M_RD) in w1_f19_i2c_master_transfer() 373 && (msgs[i+1].flags & I2C_M_RD) in w1_f19_i2c_master_transfer() 374 && (msgs[i].len <= W1_F19_WRITE_DATA_LIMIT)) { in w1_f19_i2c_master_transfer() 379 result = w1_f19_i2c_write_read(sl, msgs[i].addr, in w1_f19_i2c_master_transfer() 380 msgs[i].buf, msgs[i].len, in w1_f19_i2c_master_transfer() 381 msgs[i+1].buf, msgs[i+1].len); in w1_f19_i2c_master_transfer() 393 if (msgs[i+1].flags & I2C_M_RECV_LEN) { in w1_f19_i2c_master_transfer() 394 result = w1_f19_i2c_read(sl, msgs[i+1].addr, in w1_f19_i2c_master_transfer() [all …]
|
/Linux-v4.19/drivers/media/pci/cx25821/ |
D | cx25821-i2c.c | 234 static int i2c_xfer(struct i2c_adapter *i2c_adap, struct i2c_msg *msgs, int num) in i2c_xfer() argument 244 __func__, num, msgs[i].addr, msgs[i].len); in i2c_xfer() 246 if (msgs[i].flags & I2C_M_RD) { in i2c_xfer() 248 retval = i2c_readbytes(i2c_adap, &msgs[i], 0); in i2c_xfer() 249 } else if (i + 1 < num && (msgs[i + 1].flags & I2C_M_RD) && in i2c_xfer() 250 msgs[i].addr == msgs[i + 1].addr) { in i2c_xfer() 252 retval = i2c_sendbytes(i2c_adap, &msgs[i], in i2c_xfer() 253 msgs[i + 1].len); in i2c_xfer() 258 retval = i2c_readbytes(i2c_adap, &msgs[i], 1); in i2c_xfer() 261 retval = i2c_sendbytes(i2c_adap, &msgs[i], 0); in i2c_xfer() [all …]
|
/Linux-v4.19/drivers/media/usb/cx231xx/ |
D | cx231xx-i2c.c | 373 struct i2c_msg msgs[], int num) in cx231xx_i2c_xfer() argument 382 addr = msgs[i].addr; in cx231xx_i2c_xfer() 385 (msgs[i].flags & I2C_M_RD) ? "read" : "write", in cx231xx_i2c_xfer() 386 i == num - 1 ? "stop" : "nonstop", addr, msgs[i].len); in cx231xx_i2c_xfer() 387 if (!msgs[i].len) { in cx231xx_i2c_xfer() 389 rc = cx231xx_i2c_check_for_device(i2c_adap, &msgs[i]); in cx231xx_i2c_xfer() 396 } else if (msgs[i].flags & I2C_M_RD) { in cx231xx_i2c_xfer() 398 rc = cx231xx_i2c_recv_bytes(i2c_adap, &msgs[i]); in cx231xx_i2c_xfer() 400 for (byte = 0; byte < msgs[i].len; byte++) in cx231xx_i2c_xfer() 401 printk(KERN_CONT " %02x", msgs[i].buf[byte]); in cx231xx_i2c_xfer() [all …]
|
/Linux-v4.19/drivers/gpu/drm/nouveau/include/nvkm/subdev/ |
D | i2c.h | 99 struct i2c_msg msgs[] = { in nvkm_rdi2cr() local 104 int ret = i2c_transfer(adap, msgs, ARRAY_SIZE(msgs)); in nvkm_rdi2cr() 115 struct i2c_msg msgs[] = { in nv_rd16i2cr() local 120 int ret = i2c_transfer(adap, msgs, ARRAY_SIZE(msgs)); in nv_rd16i2cr() 131 struct i2c_msg msgs[] = { in nvkm_wri2cr() local 135 int ret = i2c_transfer(adap, msgs, ARRAY_SIZE(msgs)); in nvkm_wri2cr() 146 struct i2c_msg msgs[] = { in nv_wr16i2cr() local 150 int ret = i2c_transfer(adap, msgs, ARRAY_SIZE(msgs)); in nv_wr16i2cr()
|
/Linux-v4.19/drivers/i2c/ |
D | i2c-dev.c | 242 unsigned nmsgs, struct i2c_msg *msgs) in i2cdev_ioctl_rdwr() argument 249 kfree(msgs); in i2cdev_ioctl_rdwr() 256 if (msgs[i].len > 8192) { in i2cdev_ioctl_rdwr() 261 data_ptrs[i] = (u8 __user *)msgs[i].buf; in i2cdev_ioctl_rdwr() 262 msgs[i].buf = memdup_user(data_ptrs[i], msgs[i].len); in i2cdev_ioctl_rdwr() 263 if (IS_ERR(msgs[i].buf)) { in i2cdev_ioctl_rdwr() 264 res = PTR_ERR(msgs[i].buf); in i2cdev_ioctl_rdwr() 268 msgs[i].flags |= I2C_M_DMA_SAFE; in i2cdev_ioctl_rdwr() 281 if (msgs[i].flags & I2C_M_RECV_LEN) { in i2cdev_ioctl_rdwr() 282 if (!(msgs[i].flags & I2C_M_RD) || in i2cdev_ioctl_rdwr() [all …]
|
/Linux-v4.19/drivers/gpu/drm/i915/ |
D | intel_i2c.c | 528 gmbus_is_index_xfer(struct i2c_msg *msgs, int i, int num) in gmbus_is_index_xfer() argument 531 msgs[i].addr == msgs[i + 1].addr && in gmbus_is_index_xfer() 532 !(msgs[i].flags & I2C_M_RD) && in gmbus_is_index_xfer() 533 (msgs[i].len == 1 || msgs[i].len == 2) && in gmbus_is_index_xfer() 534 msgs[i + 1].len > 0); in gmbus_is_index_xfer() 538 gmbus_index_xfer(struct drm_i915_private *dev_priv, struct i2c_msg *msgs, in gmbus_index_xfer() argument 545 if (msgs[0].len == 2) in gmbus_index_xfer() 547 msgs[0].buf[1] | (msgs[0].buf[0] << 8); in gmbus_index_xfer() 548 if (msgs[0].len == 1) in gmbus_index_xfer() 550 (msgs[0].buf[0] << GMBUS_SLAVE_INDEX_SHIFT); in gmbus_index_xfer() [all …]
|