Back to home page

OSCL-LXR

 
 

    


0001 ST SSC binding, for I2C mode operation
0002 
0003 Required properties :
0004 - compatible : Must be "st,comms-ssc-i2c" or "st,comms-ssc4-i2c"
0005 - reg : Offset and length of the register set for the device
0006 - interrupts : the interrupt specifier
0007 - clock-names: Must contain "ssc".
0008 - clocks: Must contain an entry for each name in clock-names. See the common
0009   clock bindings.
0010 - A pinctrl state named "default" must be defined to set pins in mode of
0011   operation for I2C transfer.
0012 
0013 Optional properties :
0014 - clock-frequency : Desired I2C bus clock frequency in Hz. If not specified,
0015   the default 100 kHz frequency will be used. As only Normal and Fast modes
0016   are supported, possible values are 100000 and 400000.
0017 - st,i2c-min-scl-pulse-width-us : The minimum valid SCL pulse width that is
0018   allowed through the deglitch circuit. In units of us.
0019 - st,i2c-min-sda-pulse-width-us : The minimum valid SDA pulse width that is
0020   allowed through the deglitch circuit. In units of us.
0021 - A pinctrl state named "idle" could be defined to set pins in idle state
0022   when I2C instance is not performing a transfer.
0023 - A pinctrl state named "sleep" could be defined to set pins in sleep state
0024   when driver enters in suspend.
0025 
0026 
0027 
0028 Example :
0029 
0030 i2c0: i2c@fed40000 {
0031         compatible      = "st,comms-ssc4-i2c";
0032         reg             = <0xfed40000 0x110>;
0033         interrupts      =  <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>;
0034         clocks          = <&clk_s_a0_ls CLK_ICN_REG>;
0035         clock-names     = "ssc";
0036         clock-frequency = <400000>;
0037         pinctrl-names   = "default";
0038         pinctrl-0       = <&pinctrl_i2c0_default>;
0039         st,i2c-min-scl-pulse-width-us = <0>;
0040         st,i2c-min-sda-pulse-width-us = <5>;
0041 };