mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-28 22:54:05 +08:00
a076a860ac
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_bus.svg | ||
i2c-address-translators.rst | ||
i2c-protocol.rst | ||
i2c-stub.rst | ||
i2c-sysfs.rst | ||
i2c-topology.rst | ||
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 |