86251cf8fd
Add bindings for I2C Address Translator. Only one property is added, 'i2c-alias-pool', which can be used in the bindings for the device that supports ATR. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com> Acked-by: Wolfram Sang <wsa@kernel.org> Reviewed-by: Rob Herring <robh@kernel.org> Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
35 lines
1.4 KiB
YAML
35 lines
1.4 KiB
YAML
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/i2c/i2c-atr.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: Common i2c address translator properties
|
|
|
|
maintainers:
|
|
- Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
|
|
|
|
description:
|
|
An I2C Address Translator (ATR) is a device with an I2C slave parent
|
|
("upstream") port and N I2C master child ("downstream") ports, and
|
|
forwards transactions from upstream to the appropriate downstream port
|
|
with a modified slave address. The address used on the parent bus is
|
|
called the "alias" and is (potentially) different from the physical
|
|
slave address of the child bus. Address translation is done by the
|
|
hardware.
|
|
|
|
properties:
|
|
i2c-alias-pool:
|
|
$ref: /schemas/types.yaml#/definitions/uint32-array
|
|
description:
|
|
I2C alias pool is a pool of I2C addresses on the main I2C bus that can be
|
|
used to access the remote peripherals on the serializer's I2C bus. The
|
|
addresses must be available, not used by any other peripheral. Each
|
|
remote peripheral is assigned an alias from the pool, and transactions to
|
|
that address will be forwarded to the remote peripheral, with the address
|
|
translated to the remote peripheral's real address. This property is not
|
|
needed if there are no I2C addressable remote peripherals.
|
|
|
|
additionalProperties: true
|
|
...
|