linux/Documentation/i2c
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
..
busses i2c: i801: Add support for Intel Meteor Lake PCH-S 2023-06-05 10:13:48 +02:00
muxes docs: i2c: convert to ReST and add to driver-api bookset 2019-07-31 13:25:27 -06:00
dev-interface.rst Documentation: i2c: fix references to other documents 2022-09-16 20:53:58 +01:00
dma-considerations.rst docs: i2c: call it "I2C" consistently 2020-01-29 22:01:24 +01:00
fault-codes.rst docs: i2c: convert to ReST and add to driver-api bookset 2019-07-31 13:25:27 -06:00
functionality.rst docs: i2c: convert to ReST and add to driver-api bookset 2019-07-31 13:25:27 -06:00
gpio-fault-injection.rst Documentation: i2c: correct spelling 2023-02-15 20:59:44 +01:00
i2c_bus.svg docs: i2c: rename i2c.svg to i2c_bus.svg 2020-04-20 15:45:41 -06:00
i2c-address-translators.rst media: i2c: add I2C Address Translator (ATR) support 2023-07-14 13:11:44 +02:00
i2c-protocol.rst docs: i2c: i2c-protocol: remove unused legend items 2022-08-11 23:05:11 +02:00
i2c-stub.rst docs: i2c: convert to ReST and add to driver-api bookset 2019-07-31 13:25:27 -06:00
i2c-sysfs.rst docs: i2c: i2c-sysfs: fix hyperlinks 2022-08-11 23:25:05 +02:00
i2c-topology.rst docs: i2c: i2c-topology: reorder sections more logically 2022-08-29 12:28:13 +02:00
index.rst media: i2c: add I2C Address Translator (ATR) support 2023-07-14 13:11:44 +02:00
instantiating-devices.rst docs: i2c: instantiating-devices: add syntax coloring to dts and C blocks 2022-08-11 23:07:19 +02:00
old-module-parameters.rst docs: i2c: avoid using ReST :doc:foo markup 2021-06-17 13:24:38 -06:00
slave-eeprom-backend.rst i2c: slave-eeprom: update documentation 2020-07-04 08:17:53 +02:00
slave-interface.rst docs: i2c: slave-interface: return errno when handle I2C_SLAVE_WRITE_REQUESTED 2022-09-28 21:41:59 +02:00
slave-testunit-backend.rst i2c: testunit: add support for block process calls 2021-02-12 11:11:04 +01:00
smbus-protocol.rst Documentation: i2c: correct spelling 2023-02-15 20:59:44 +01:00
summary.rst Docs: Fixes link to I2C specification 2021-12-31 14:39:28 +01:00
ten-bit-addresses.rst docs: i2c: convert to ReST and add to driver-api bookset 2019-07-31 13:25:27 -06:00
writing-clients.rst Merge branch 'master' into i2c/for-mergewindow 2022-09-27 21:33:37 +02:00