Lines Matching refs:chip
45 static int i2c_setup_offset(struct dm_i2c_chip *chip, uint offset, in i2c_setup_offset() argument
50 msg->addr = chip->chip_addr; in i2c_setup_offset()
51 msg->flags = chip->flags & DM_I2C_CHIP_10BIT ? I2C_M_TEN : 0; in i2c_setup_offset()
52 msg->len = chip->offset_len; in i2c_setup_offset()
54 if (!chip->offset_len) in i2c_setup_offset()
56 assert(chip->offset_len <= I2C_MAX_OFFSET_LEN); in i2c_setup_offset()
57 offset_len = chip->offset_len; in i2c_setup_offset()
67 struct dm_i2c_chip *chip = dev_get_parent_platdata(dev); in i2c_read_bytewise() local
76 if (i2c_setup_offset(chip, offset + i, offset_buf, msg)) in i2c_read_bytewise()
79 ptr->addr = chip->chip_addr; in i2c_read_bytewise()
96 struct dm_i2c_chip *chip = dev_get_parent_platdata(dev); in i2c_write_bytewise() local
105 if (i2c_setup_offset(chip, offset + i, buf, msg)) in i2c_write_bytewise()
119 struct dm_i2c_chip *chip = dev_get_parent_platdata(dev); in dm_i2c_read() local
128 if (chip->flags & DM_I2C_CHIP_RD_ADDRESS) in dm_i2c_read()
131 if (!i2c_setup_offset(chip, offset, offset_buf, ptr)) in dm_i2c_read()
135 ptr->addr = chip->chip_addr; in dm_i2c_read()
136 ptr->flags = chip->flags & DM_I2C_CHIP_10BIT ? I2C_M_TEN : 0; in dm_i2c_read()
150 struct dm_i2c_chip *chip = dev_get_parent_platdata(dev); in dm_i2c_write() local
158 if (chip->flags & DM_I2C_CHIP_WR_ADDRESS) in dm_i2c_write()
181 i2c_setup_offset(chip, offset, buf, msg); in dm_i2c_write()
183 memcpy(buf + chip->offset_len, buffer, len); in dm_i2c_write()
193 i2c_setup_offset(chip, offset, buf, msg); in dm_i2c_write()
195 memcpy(buf + chip->offset_len, buffer, len); in dm_i2c_write()
285 struct dm_i2c_chip *chip; in i2c_bind_driver() local
300 chip = dev_get_parent_platdata(dev); in i2c_bind_driver()
301 chip->chip_addr = chip_addr; in i2c_bind_driver()
302 chip->offset_len = offset_len; in i2c_bind_driver()
331 struct dm_i2c_chip *chip = dev_get_parent_platdata(dev); in i2c_get_chip() local
334 if (chip->chip_addr == chip_addr) { in i2c_get_chip()
424 struct dm_i2c_chip *chip = dev_get_parent_platdata(dev); in i2c_set_chip_flags() local
433 chip->flags = flags; in i2c_set_chip_flags()
440 struct dm_i2c_chip *chip = dev_get_parent_platdata(dev); in i2c_get_chip_flags() local
442 *flagsp = chip->flags; in i2c_get_chip_flags()
449 struct dm_i2c_chip *chip = dev_get_parent_platdata(dev); in i2c_set_chip_offset_len() local
453 chip->offset_len = offset_len; in i2c_set_chip_offset_len()
460 struct dm_i2c_chip *chip = dev_get_parent_platdata(dev); in i2c_get_chip_offset_len() local
462 return chip->offset_len; in i2c_get_chip_offset_len()
484 int i2c_chip_ofdata_to_platdata(struct udevice *dev, struct dm_i2c_chip *chip) in i2c_chip_ofdata_to_platdata() argument
488 chip->offset_len = dev_read_u32_default(dev, "u-boot,i2c-offset-len", in i2c_chip_ofdata_to_platdata()
490 chip->flags = 0; in i2c_chip_ofdata_to_platdata()
497 chip->chip_addr = addr; in i2c_chip_ofdata_to_platdata()