Staging
v0.8.1
https://github.com/torvalds/linux
Raw File
Tip revision: 0bb80ecc33a8fb5a682236443c1e740d5c917d1d authored by Linus Torvalds on 10 September 2023, 23:28:41 UTC
Linux 6.6-rc1
Tip revision: 0bb80ec
i2c-mux-ltc4306.txt
* Linear Technology / Analog Devices I2C bus switch

Required Properties:

  - compatible: Must contain one of the following.
    "lltc,ltc4305", "lltc,ltc4306"
  - reg: The I2C address of the device.

  The following required properties are defined externally:

  - Standard I2C mux properties. See i2c-mux.yaml in this directory.
  - I2C child bus nodes. See i2c-mux.yaml in this directory.

Optional Properties:

  - enable-gpios: Reference to the GPIO connected to the enable input.
  - i2c-mux-idle-disconnect: Boolean; if defined, forces mux to disconnect all
    children in idle state. This is necessary for example, if there are several
    multiplexers on the bus and the devices behind them use same I2C addresses.
  - gpio-controller: Marks the device node as a GPIO Controller.
  - #gpio-cells: Should be two.  The first cell is the pin number and
	the second cell is used to specify flags.
	See ../gpio/gpio.txt for more information.
  - ltc,downstream-accelerators-enable: Enables the rise time accelerators
	on the downstream port.
  - ltc,upstream-accelerators-enable: Enables the rise time accelerators
	on the upstream port.

Example:

	ltc4306: i2c-mux@4a {
		compatible = "lltc,ltc4306";
		#address-cells = <1>;
		#size-cells = <0>;
		reg = <0x4a>;

		gpio-controller;
		#gpio-cells = <2>;

		i2c@0 {
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <0>;

			eeprom@50 {
				compatible = "atmel,24c02";
				reg = <0x50>;
			};
		};

		i2c@1 {
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <1>;

			eeprom@50 {
				compatible = "atmel,24c02";
				reg = <0x50>;
			};
		};
	};
back to top