Lines Matching defs:adapter
98 status = i2c_smbus_xfer(client->adapter, client->addr, client->flags,
115 return i2c_smbus_xfer(client->adapter, client->addr, client->flags,
133 status = i2c_smbus_xfer(client->adapter, client->addr, client->flags,
154 return i2c_smbus_xfer(client->adapter, client->addr, client->flags,
173 status = i2c_smbus_xfer(client->adapter, client->addr, client->flags,
194 return i2c_smbus_xfer(client->adapter, client->addr, client->flags,
210 * Note that using this function requires that the client's adapter support
211 * the I2C_FUNC_SMBUS_READ_BLOCK_DATA functionality. Not all adapter drivers
221 status = i2c_smbus_xfer(client->adapter, client->addr, client->flags,
251 return i2c_smbus_xfer(client->adapter, client->addr, client->flags,
267 status = i2c_smbus_xfer(client->adapter, client->addr, client->flags,
287 return i2c_smbus_xfer(client->adapter, client->addr, client->flags,
313 static s32 i2c_smbus_xfer_emulated(struct i2c_adapter *adapter, u16 addr,
394 dev_err(&adapter->dev,
409 dev_err(&adapter->dev,
427 dev_err(&adapter->dev, "Invalid block %s size %d\n",
445 dev_err(&adapter->dev, "Unsupported transaction %d\n", size);
464 status = __i2c_transfer(adapter, msg, num);
499 dev_err(&adapter->dev,
521 * @adapter: Handle to I2C bus
532 s32 i2c_smbus_xfer(struct i2c_adapter *adapter, u16 addr,
538 res = __i2c_lock_bus_helper(adapter);
542 res = __i2c_smbus_xfer(adapter, addr, flags, read_write,
544 i2c_unlock_bus(adapter, I2C_LOCK_SEGMENT);
550 s32 __i2c_smbus_xfer(struct i2c_adapter *adapter, u16 addr,
561 res = __i2c_check_suspended(adapter);
568 trace_smbus_write(adapter, addr, flags, read_write,
570 trace_smbus_read(adapter, addr, flags, read_write,
575 xfer_func = adapter->algo->smbus_xfer;
577 if (adapter->algo->smbus_xfer_atomic)
578 xfer_func = adapter->algo->smbus_xfer_atomic;
579 else if (adapter->algo->master_xfer_atomic)
586 for (res = 0, try = 0; try <= adapter->retries; try++) {
587 res = xfer_func(adapter, addr, flags, read_write,
592 orig_jiffies + adapter->timeout))
596 if (res != -EOPNOTSUPP || !adapter->algo->master_xfer)
599 * Fall back to i2c_smbus_xfer_emulated if the adapter doesn't
604 res = i2c_smbus_xfer_emulated(adapter, addr, flags, read_write,
609 trace_smbus_reply(adapter, addr, flags, read_write,
611 trace_smbus_result(adapter, addr, flags, read_write,
627 * This executes the SMBus "block read" protocol if supported by the adapter.
646 if (i2c_check_functionality(client->adapter, I2C_FUNC_SMBUS_READ_I2C_BLOCK))
649 if (!i2c_check_functionality(client->adapter, I2C_FUNC_SMBUS_READ_BYTE_DATA))
652 if (i2c_check_functionality(client->adapter, I2C_FUNC_SMBUS_READ_WORD_DATA)) {
677 * @adapter: the target adapter
684 * adapter (from its handler, periodic polling, or whatever).
690 struct i2c_client *i2c_new_smbus_alert_device(struct i2c_adapter *adapter,
698 return i2c_new_client_device(adapter, &ara_board_info);
703 int of_i2c_setup_smbus_alert(struct i2c_adapter *adapter)
707 irq = of_property_match_string(adapter->dev.of_node, "interrupt-names",
714 return PTR_ERR_OR_ZERO(i2c_new_smbus_alert_device(adapter, NULL));