infineon,cat1-i2c

Vendor: Infineon Technologies

Description

These nodes are “i2c” bus nodes.

Infineon CAT1 I2C driver

This driver configures the SCB as an I2C device.

Example devicetree configuration with vl53l0x Time-of-Flight (ToF)
ranging sensor connected on the bus:

i2c3: &scb3 {
    compatible = "infineon,cat1-i2c";
    status = "okay";

    #address-cells = <1>;
    #size-cells = <0>;

    pinctrl-0 = <&p6_0_scb3_i2c_scl &p6_1_scb3_i2c_sda>;
    pinctrl-names = "default";

    vl53l0x@29 {
      compatible = "st,vl53l0x";
      reg = <0x29>;
    };
};

The pinctrl nodes need to be configured as open-drain and
input-enable:

&p6_0_scb3_i2c_scl {
  drive-open-drain;
  input-enable;
};

&p6_1_scb3_i2c_sda {
  drive-open-drain;
  input-enable;
};

Properties

Properties not inherited from the base binding file.

Name

Type

Details

clock-frequency

int

Frequency that the I2C bus runs

sq-size

int

Size of the submission queue for blocking requests

Default value: 4

cq-size

int

Size of the completion queue for blocking requests

Default value: 4

pinctrl-0

phandles

PORT pin configuration for SCL, SDA signals.
We expect that the phandles will reference pinctrl nodes. These
nodes will have a nodelabel that matches the Infineon SoC Pinctrl
defines and have following
format: p<port>_<pin>_<peripheral inst>_<signal>.

Examples:
  pinctrl-0 = <&p6_0_scb3_i2c_scl &p6_1_scb3_i2c_sda>;

This property is required.

pinctrl-1

phandles

Pin configuration/s for the second state. See pinctrl-0.

pinctrl-2

phandles

Pin configuration/s for the third state. See pinctrl-0.

pinctrl-3

phandles

Pin configuration/s for the fourth state. See pinctrl-0.

pinctrl-4

phandles

Pin configuration/s for the fifth state. See pinctrl-0.

pinctrl-names

string-array

Names for the provided states. The number of names needs to match the
number of states.

This property is required.