1
linux/Documentation/i2c/index.rst
Luca Ceresoli a076a860ac media: i2c: add I2C Address Translator (ATR) support
An ATR is a device that looks similar to an i2c-mux: it has an I2C
slave "upstream" port and N master "downstream" ports, and forwards
transactions from upstream to the appropriate downstream port. But it
is different in that the forwarded transaction has a different slave
address. The address used on the upstream bus is called the "alias"
and is (potentially) different from the physical slave address of the
downstream chip.

Add a helper file (just like i2c-mux.c for a mux or switch) to allow
implementing ATR features in a device driver. The helper takes care of
adapter creation/destruction and translates addresses at each transaction.

Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Acked-by: Wolfram Sang <wsa@kernel.org>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2023-07-14 13:11:44 +02:00

76 lines
957 B
ReStructuredText

.. SPDX-License-Identifier: GPL-2.0
===================
I2C/SMBus Subsystem
===================
Introduction
============
.. toctree::
:maxdepth: 1
summary
i2c-protocol
smbus-protocol
instantiating-devices
busses/index
i2c-topology
muxes/i2c-mux-gpio
i2c-sysfs
i2c-address-translators
Writing device drivers
======================
.. toctree::
:maxdepth: 1
writing-clients
dev-interface
dma-considerations
fault-codes
functionality
Debugging
=========
.. toctree::
:maxdepth: 1
gpio-fault-injection
i2c-stub
Slave I2C
=========
.. toctree::
:maxdepth: 1
slave-interface
slave-eeprom-backend
slave-testunit-backend
Advanced topics
===============
.. toctree::
:maxdepth: 1
ten-bit-addresses
Legacy documentation
====================
.. toctree::
:maxdepth: 1
old-module-parameters
.. only:: subproject and html
Indices
=======
* :ref:`genindex`