Home
last modified time | relevance | path

Searched full:i2c (Results 1 – 25 of 919) sorted by relevance

12345678910>>...37

/Documentation/i2c/busses/
Dindex.rst4 I2C Bus Drivers
10 i2c-ali1535
11 i2c-ali1563
12 i2c-ali15x3
13 i2c-amd756
14 i2c-amd8111
15 i2c-amd-mp2
16 i2c-diolan-u2c
17 i2c-i801
18 i2c-ismt
[all …]
/Documentation/devicetree/bindings/i2c/
Dnvidia,tegra20-i2c.txt1 NVIDIA Tegra20/Tegra30/Tegra114 I2C controller driver.
4 - compatible : For Tegra20, must be one of "nvidia,tegra20-i2c-dvc" or
5 "nvidia,tegra20-i2c". For Tegra30, must be "nvidia,tegra30-i2c".
6 For Tegra114, must be "nvidia,tegra114-i2c". Otherwise, must be
7 "nvidia,<chip>-i2c", plus at least one of the above, where <chip> is
10 nvidia,tegra20-i2c-dvc: Tegra20 has specific I2C controller called as DVC I2C
11 controller. This only support master mode of I2C communication. Register
12 interface/offset and interrupts handling are different than generic I2C
13 controller. Driver of DVC I2C controller is only compatible with
14 "nvidia,tegra20-i2c-dvc".
[all …]
Drenesas,i2c.txt1 I2C for R-Car platforms
5 "renesas,i2c-r8a7743" if the device is a part of a R8A7743 SoC.
6 "renesas,i2c-r8a7744" if the device is a part of a R8A7744 SoC.
7 "renesas,i2c-r8a7745" if the device is a part of a R8A7745 SoC.
8 "renesas,i2c-r8a77470" if the device is a part of a R8A77470 SoC.
9 "renesas,i2c-r8a774a1" if the device is a part of a R8A774A1 SoC.
10 "renesas,i2c-r8a774c0" if the device is a part of a R8A774C0 SoC.
11 "renesas,i2c-r8a7778" if the device is a part of a R8A7778 SoC.
12 "renesas,i2c-r8a7779" if the device is a part of a R8A7779 SoC.
13 "renesas,i2c-r8a7790" if the device is a part of a R8A7790 SoC.
[all …]
Di2c-imx.txt1 * Freescale Inter IC (I2C) and High Speed Inter IC (HS-I2C) for i.MX
5 - "fsl,imx1-i2c" for I2C compatible with the one integrated on i.MX1 SoC
6 - "fsl,imx21-i2c" for I2C compatible with the one integrated on i.MX21 SoC
7 - "fsl,vf610-i2c" for I2C compatible with the one integrated on Vybrid vf610 SoC
8 - reg : Should contain I2C/HS-I2C registers location and length
9 - interrupts : Should contain I2C/HS-I2C interrupt
10 - clocks : Should contain the I2C/HS-I2C clock specifier
13 - clock-frequency : Constains desired I2C/HS-I2C bus clock frequency in Hz.
19 - pinctrl: add extra pinctrl to configure i2c pins to gpio function for i2c
24 i2c@83fc4000 { /* I2C2 on i.MX51 */
[all …]
Dmarvell,mv64xxx-i2c.yaml4 $id: http://devicetree.org/schemas/i2c/marvell,mv64xxx-i2c.yaml#
7 title: Marvell MV64XXX I2C Controller Device Tree Bindings
15 - const: allwinner,sun4i-a10-i2c
17 - const: allwinner,sun7i-a20-i2c
18 - const: allwinner,sun4i-a10-i2c
19 - const: allwinner,sun6i-a31-i2c
21 - const: allwinner,sun8i-a23-i2c
22 - const: allwinner,sun6i-a31-i2c
24 - const: allwinner,sun8i-a83t-i2c
25 - const: allwinner,sun6i-a31-i2c
[all …]
Di2c-mt65xx.txt1 * MediaTek's I2C controller
3 The MediaTek's I2C controller is used to interface with I2C devices.
7 "mediatek,mt2701-i2c", "mediatek,mt6577-i2c": for MediaTek MT2701
8 "mediatek,mt2712-i2c": for MediaTek MT2712
9 "mediatek,mt6577-i2c": for MediaTek MT6577
10 "mediatek,mt6589-i2c": for MediaTek MT6589
11 "mediatek,mt7622-i2c": for MediaTek MT7622
12 "mediatek,mt7623-i2c", "mediatek,mt6577-i2c": for MediaTek MT7623
13 "mediatek,mt7629-i2c", "mediatek,mt2712-i2c": for MediaTek MT7629
14 "mediatek,mt8173-i2c": for MediaTek MT8173
[all …]
Di2c-rk3x.txt1 * Rockchip RK3xxx I2C controller
3 This driver interfaces with the native I2C controller present in Rockchip
10 - "rockchip,rv1108-i2c": for rv1108
11 - "rockchip,rk3066-i2c": for rk3066
12 - "rockchip,rk3188-i2c": for rk3188
13 - "rockchip,rk3228-i2c": for rk3228
14 - "rockchip,rk3288-i2c": for rk3288
15 - "rockchip,rk3328-i2c", "rockchip,rk3399-i2c": for rk3328
16 - "rockchip,rk3399-i2c": for rk3399
23 - "i2c": This is used to derive the functional clock.
[all …]
Di2c-s3c2410.txt1 * Samsung's I2C controller
3 The Samsung's I2C controller is used to interface with I2C devices.
7 (a) "samsung, s3c2410-i2c", for i2c compatible with s3c2410 i2c.
8 (b) "samsung, s3c2440-i2c", for i2c compatible with s3c2440 i2c.
9 (c) "samsung, s3c2440-hdmiphy-i2c", for s3c2440-like i2c used
11 (d) "samsung, exynos5-sata-phy-i2c", for s3c2440-like i2c used as
16 - samsung,i2c-sda-delay: Delay (in ns) applied to data line (SDA) edges.
18 Required for all cases except "samsung,s3c2440-hdmiphy-i2c":
22 cases except for "samsung,s3c2440-hdmiphy-i2c" whose input/output
29 - samsung,i2c-slave-addr: Slave address in multi-master environment. If not
[all …]
Di2c-mux-gpmux.txt1 General Purpose I2C Bus Mux
3 This binding describes an I2C bus multiplexer that uses a mux controller
4 from the mux subsystem to route the I2C signals.
12 | | I2C |-|--| Mux |
21 - compatible: i2c-mux
22 - i2c-parent: The phandle of the I2C bus that this multiplexer's master-side
26 * Standard I2C mux properties. See i2c-mux.txt in this directory.
27 * I2C child bus nodes. See i2c-mux.txt in this directory. The sub-bus number
31 - mux-locked: If present, explicitly allow unrelated I2C transactions on the
32 parent I2C adapter at these times:
[all …]
Di2c-at91.txt1 I2C for Atmel platforms
4 - compatible : Must be "atmel,at91rm9200-i2c", "atmel,at91sam9261-i2c",
5 "atmel,at91sam9260-i2c", "atmel,at91sam9g20-i2c", "atmel,at91sam9g10-i2c",
6 "atmel,at91sam9x5-i2c", "atmel,sama5d4-i2c" or "atmel,sama5d2-i2c"
15 - clock-frequency: Desired I2C bus frequency in Hz, otherwise defaults to 100000
19 capable I2C controllers.
20 - i2c-sda-hold-time-ns: TWD hold time, only available for "atmel,sama5d4-i2c"
21 and "atmel,sama5d2-i2c".
22 - Child nodes conforming to i2c bus binding
26 i2c0: i2c@fff84000 {
[all …]
Dnvidia,tegra186-bpmp-i2c.txt1 NVIDIA Tegra186 BPMP I2C controller
4 devices, such as the I2C controller for the power management I2C bus. Software
6 transactions on that I2C bus. This binding describes an I2C bus that is
9 The BPMP I2C node must be located directly inside the main BPMP node. See
12 This node represents an I2C controller. See ../i2c/i2c.txt for details of the
13 core I2C binding.
19 - "nvidia,tegra186-bpmp-i2c".
20 - #address-cells: Address cells for I2C device address.
28 Indicates the I2C bus number this DT node represent, as defined by the
36 i2c {
[all …]
Di2c-sprd.txt1 I2C for Spreadtrum platforms
4 - compatible: Should be "sprd,sc9860-i2c".
7 - interrupts: Should contain I2C interrupt.
9 "i2c" for I2C clock,
10 "source" for I2C source (parent) clock,
11 "enable" for I2C module enable clock.
13 - clock-frequency: Constains desired I2C bus clock frequency in Hz.
14 - #address-cells: Should be 1 to describe address cells for I2C device address.
15 - #size-cells: Should be 0 means no size cell for I2C device address.
18 - Child nodes conforming to I2C bus binding
[all …]
Di2c-mux.txt1 Common i2c bus multiplexer/switch properties.
3 An i2c bus multiplexer/switch will have several child busses that are
4 numbered uniquely in a device dependent manner. The nodes for an i2c bus
9 This property is required if the i2c-mux child node does not exist.
12 This property is required if the i2c-mux child node does not exist.
14 - i2c-mux
15 For i2c multiplexers/switches that have child nodes that are a mixture
16 of both i2c child busses and other child nodes, the 'i2c-mux' subnode
17 can be used for populating the i2c child busses. If an 'i2c-mux'
18 subnode is present, only subnodes of this will be considered as i2c
[all …]
Di2c-omap.txt1 I2C for OMAP platforms
5 "ti,omap2420-i2c" for OMAP2420 SoCs
6 "ti,omap2430-i2c" for OMAP2430 SoCs
7 "ti,omap3-i2c" for OMAP3 SoCs
8 "ti,omap4-i2c" for OMAP4+ SoCs
9 "ti,am654-i2c", "ti,omap4-i2c" for AM654 SoCs
10 "ti,j721e-i2c", "ti,omap4-i2c" for J721E SoCs
11 - ti,hwmods : Must be "i2c<n>", n being the instance number (1-based)
16 - clock-frequency : Desired I2C bus clock frequency in Hz. Otherwise
20 - Child nodes conforming to i2c bus binding
[all …]
Di2c-demux-pinctrl.txt1 Pinctrl-based I2C Bus DeMux
3 This binding describes an I2C bus demultiplexer that uses pin multiplexing to
4 route the I2C signals, and represents the pin multiplexing configuration using
5 the pinctrl device tree bindings. This may be used to select one I2C IP core at
6 runtime which may have a better feature set for a given task than another I2C
14 | |I2C IP Core1|--\ | +-----+ +-----+
18 | |I2C IP Core2|--/ |
24 - compatible: "i2c-demux-pinctrl"
25 - i2c-parent: List of phandles of I2C masters available for selection. The first
27 - i2c-bus-name: The name of this bus. Also needed as pinctrl-name for the I2C
[all …]
Di2c.txt1 Generic device tree bindings for I2C busses
4 This document describes generic bindings which can be used to describe I2C
12 - compatible - name of I2C bus controller following generic names
18 The cells properties above define that an address of children of an I2C bus
35 - i2c-bus
36 For I2C adapters that have child nodes that are a mixture of both I2C
37 devices and non-I2C devices, the 'i2c-bus' subnode can be used for
38 populating I2C devices. If the 'i2c-bus' subnode is present, only
39 subnodes of this will be considered as I2C slaves. The properties,
43 - i2c-scl-falling-time-ns
[all …]
Di2c-designware.txt1 * Synopsys DesignWare I2C
5 - compatible : should be "snps,designware-i2c"
6 or "mscc,ocelot-i2c" with "snps,designware-i2c" for fallback
16 - clock-frequency : desired I2C bus clock frequency in Hz.
21 "ic_clk", for the core clock used to generate the external I2C clock.
24 - reg : for "mscc,ocelot-i2c", a second register set to configure the SDA hold
27 - i2c-sda-hold-time-ns : should contain the SDA hold time in nanoseconds.
29 on Microsemi SoCs ("mscc,ocelot-i2c" compatible).
31 - i2c-scl-falling-time-ns : should contain the SCL falling time in nanoseconds.
34 - i2c-sda-falling-time-ns : should contain the SDA falling time in nanoseconds.
[all …]
Di2c-stm32.txt1 * I2C controller embedded in STMicroelectronics STM32 I2C platform
5 - "st,stm32f4-i2c"
6 - "st,stm32f7-i2c"
8 - interrupts: Must contain the interrupt id for I2C event and then the
9 interrupt id for I2C error.
11 - clocks: Must contain the input clock of the I2C instance.
13 operation for I2C transfer
18 - clock-frequency: Desired I2C bus clock frequency in Hz. If not specified,
26 - i2c-scl-rising-time-ns: I2C SCL Rising time for the board (default: 25)
28 - i2c-scl-falling-time-ns: I2C SCL Falling time for the board (default: 10)
[all …]
/Documentation/devicetree/bindings/
Dunittest.txt15 2) OF unittest i2c adapter platform device
20 - compatible: must be unittest-i2c-bus
22 Children nodes contain unittest i2c devices.
25 unittest-i2c-bus {
26 compatible = "unittest-i2c-bus";
29 3) OF unittest i2c device
31 ** I2C unittest device
34 - compatible: must be unittest-i2c-dev
39 unittest-i2c-dev {
40 compatible = "unittest-i2c-dev";
[all …]
Dtrivial-devices.yaml7 title: Trivial I2C and SPI devices that have simple device tree bindings
13 This is a list of trivial I2C and SPI devices that have simple device tree
29 … # SMBus/I2C Digital Temperature Sensor in 6-Pin SOT with SMBus Alert and Over Temperature Pin
51 # i2c serial eeprom (24cxx)
53 # i2c trusted platform module (TPM)
55 # i2c h/w symmetric crypto module
57 # i2c h/w elliptic curve crypto module
73 # Devantech SRF02 ultrasonic ranger in I2C mode
101 # Infineon SLB9635 (Soft-) I2C TPM (old protocol, max 100khz)
103 # Infineon SLB9645 I2C TPM (new protocol, max 400khz)
[all …]
/Documentation/devicetree/bindings/soc/fsl/cpm_qe/cpm/
Di2c.txt1 * I2C
3 The I2C controller is expressed as a bus under the CPM node.
6 - compatible : "fsl,cpm1-i2c", "fsl,cpm2-i2c"
7 - reg : On CPM2 devices, the second resource doesn't specify the I2C
10 - #address-cells : Should be one. The cell is the i2c device address with
13 - clock-frequency : Can be used to set the i2c clock frequency. If
16 i2c drivers to find the bus to probe:
17 - linux,i2c-index : Can be used to hard code an i2c bus number. By default,
18 the bus number is dynamically assigned by the i2c core.
19 - linux,i2c-class : Can be used to override the i2c class. The class is used
[all …]
/Documentation/driver-api/
Di2c.rst4 I\ :sup:`2`\ C (or without fancy typography, "I2C") is an acronym for
8 the same bus. I2C only needs two signals (SCL for clock, SDA for data),
10 I2C devices use seven bit addresses, and bus speeds of up to 400 kHz;
12 I2C is a multi-master bus; open drain signaling is used to arbitrate
16 The Linux I2C programming interfaces support the master side of bus
18 structured around two kinds of driver, and two kinds of device. An I2C
22 I2C bus segment it manages. On each I2C bus segment will be I2C devices
26 are functions to perform various I2C protocol operations; at this writing
30 systems are also I2C conformant. The electrical constraints are tighter
32 Controllers that support I2C can also support most SMBus operations, but
[all …]
/Documentation/i2c/
Dinstantiating-devices.rst2 How to instantiate I2C devices
5 Unlike PCI or USB devices, I2C devices are not enumerated at the hardware
7 I2C bus segment, and what address these devices are using. For this
8 reason, the kernel code must instantiate I2C devices explicitly. There are
12 Method 1a: Declare the I2C devices by bus number
15 This method is appropriate when the I2C bus is a system bus as is the case
16 for many embedded systems. On such systems, each I2C bus has a number
17 which is known in advance. It is thus possible to pre-declare the I2C
46 The above code declares 3 devices on I2C bus 1, including their respective
47 addresses and custom data needed by their drivers. When the I2C bus in
[all …]
Ddev-interface.rst2 I2C Device Interface
5 Usually, i2c devices are controlled by a kernel driver. But it is also
7 the /dev interface. You need to load module i2c-dev for this.
9 Each registered i2c adapter gets a number, counting from 0. You can
10 examine /sys/class/i2c-dev/ to see what number corresponds to which adapter.
12 i2c adapters present on your system at a given time. i2cdetect is part of
13 the i2c-tools package.
15 I2C device files are character device files with major device number 89
17 explained above. They should be called "i2c-%d" (i2c-0, i2c-1, ...,
18 i2c-10, ...). All 256 minor device numbers are reserved for i2c.
[all …]
Dsummary.rst2 I2C and SMBus
5 I2C (pronounce: I squared C) is a protocol developed by Philips. It is a
9 I2C is widely used with embedded systems. Some systems use variants that
10 don't meet branding requirements, and so are not advertised as being I2C.
12 SMBus (System Management Bus) is based on the I2C protocol, and is mostly
13 a subset of I2C protocols and signaling. Many I2C devices will work on an
15 achieve I2C branding. Modern PC mainboards rely on SMBus. The most common
16 devices connected through SMBus are RAM modules configured using I2C EEPROMs,
19 Because the SMBus is mostly a subset of the generalized I2C bus, we can
20 use its protocols on many I2C systems. However, there are systems that don't
[all …]

12345678910>>...37