mirror of
https://github.com/torvalds/linux.git
synced 2025-11-12 14:40:05 +02:00
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> |
||
|---|---|---|
| .. | ||
| busses | ||
| muxes | ||
| dev-interface.rst | ||
| dma-considerations.rst | ||
| fault-codes.rst | ||
| functionality.rst | ||
| gpio-fault-injection.rst | ||
| i2c-address-translators.rst | ||
| i2c-protocol.rst | ||
| i2c-stub.rst | ||
| i2c-sysfs.rst | ||
| i2c-topology.rst | ||
| i2c_bus.svg | ||
| index.rst | ||
| instantiating-devices.rst | ||
| old-module-parameters.rst | ||
| slave-eeprom-backend.rst | ||
| slave-interface.rst | ||
| slave-testunit-backend.rst | ||
| smbus-protocol.rst | ||
| summary.rst | ||
| ten-bit-addresses.rst | ||
| writing-clients.rst | ||