diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2014-06-06 15:26:57 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-06-06 15:26:57 -0400 |
commit | 7b215de3d0abbc4f6daf2efd19e8809af0564490 (patch) | |
tree | 1170758ed12b1db76b3c5891ddda13229f6f96eb /Documentation | |
parent | 1fe9eb184721132c7254d76d9ef31c96edad8870 (diff) | |
parent | 642653d16a0f8e78b7a25d930b62aa771ebc939c (diff) |
Merge branch 'i2c/for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux into next
Pull i2c updates from Wolfram Sang:
"I2C has the following updates for 3.16:
- major cleanups to the rcar and sh_mobile drivers
- removal of nuc900 driver which had a compile error for years
- usual bunch of driver updates, bugfixes and cleanups"
* 'i2c/for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux: (44 commits)
i2c: pca954x: Fix compilation without CONFIG_GPIOLIB
i2c: mux: pca954x: Use the descriptor-based GPIO API
i2c: mpc: insert DR read in i2c_fixup()
i2c: bfin: turn to Resource-managed API in probe function
i2c: Make of_device_id array const
i2c: remove unnecessary OOM messages
i2c: designware-pci: Add Haswell PCI IDs
i2c: designware: Add runtime PM hooks
i2c: designware: Disable device on system suspend
i2c: nuc900: remove driver
i2c: imx: update i2c clock divider for each transaction
i2c: imx: fix the i2c bus hang issue when do repeat restart
i2c: rcar: update copyright and license information
i2c: rcar: janitorial cleanup after refactoring
i2c: rcar: reuse status bits as enable bits
i2c: rcar: remove spinlock
i2c: rcar: refactor status bit handling
i2c: rcar: refactor setting up msg
i2c: rcar: check bus free before first message
i2c: rcar: refactor irq state machine
...
Diffstat (limited to 'Documentation')
5 files changed, 45 insertions, 3 deletions
diff --git a/Documentation/devicetree/bindings/i2c/i2c-arb-gpio-challenge.txt b/Documentation/devicetree/bindings/i2c/i2c-arb-gpio-challenge.txt index 1ac8ea8ade1d..bfeabb843941 100644 --- a/Documentation/devicetree/bindings/i2c/i2c-arb-gpio-challenge.txt +++ b/Documentation/devicetree/bindings/i2c/i2c-arb-gpio-challenge.txt | |||
@@ -8,6 +8,12 @@ the standard I2C multi-master rules. Using GPIOs is generally useful in | |||
8 | the case where there is a device on the bus that has errata and/or bugs | 8 | the case where there is a device on the bus that has errata and/or bugs |
9 | that makes standard multimaster mode not feasible. | 9 | that makes standard multimaster mode not feasible. |
10 | 10 | ||
11 | Note that this scheme works well enough but has some downsides: | ||
12 | * It is nonstandard (not using standard I2C multimaster) | ||
13 | * Having two masters on a bus in general makes it relatively hard to debug | ||
14 | problems (hard to tell if i2c issues were caused by one master, another, or | ||
15 | some device on the bus). | ||
16 | |||
11 | 17 | ||
12 | Algorithm: | 18 | Algorithm: |
13 | 19 | ||
diff --git a/Documentation/devicetree/bindings/i2c/i2c-exynos5.txt b/Documentation/devicetree/bindings/i2c/i2c-exynos5.txt index 056732cfdcee..d4745e31f5c6 100644 --- a/Documentation/devicetree/bindings/i2c/i2c-exynos5.txt +++ b/Documentation/devicetree/bindings/i2c/i2c-exynos5.txt | |||
@@ -5,7 +5,14 @@ at various speeds ranging from 100khz to 3.4Mhz. | |||
5 | 5 | ||
6 | Required properties: | 6 | Required properties: |
7 | - compatible: value should be. | 7 | - compatible: value should be. |
8 | -> "samsung,exynos5-hsi2c", for i2c compatible with exynos5 hsi2c. | 8 | -> "samsung,exynos5-hsi2c", (DEPRECATED) |
9 | for i2c compatible with HSI2C available | ||
10 | on Exynos5250 and Exynos5420 SoCs. | ||
11 | -> "samsung,exynos5250-hsi2c", for i2c compatible with HSI2C available | ||
12 | on Exynos5250 and Exynos5420 SoCs. | ||
13 | -> "samsung,exynos5260-hsi2c", for i2c compatible with HSI2C available | ||
14 | on Exynos5260 SoCs. | ||
15 | |||
9 | - reg: physical base address of the controller and length of memory mapped | 16 | - reg: physical base address of the controller and length of memory mapped |
10 | region. | 17 | region. |
11 | - interrupts: interrupt number to the cpu. | 18 | - interrupts: interrupt number to the cpu. |
@@ -26,7 +33,7 @@ Optional properties: | |||
26 | Example: | 33 | Example: |
27 | 34 | ||
28 | hsi2c@12ca0000 { | 35 | hsi2c@12ca0000 { |
29 | compatible = "samsung,exynos5-hsi2c"; | 36 | compatible = "samsung,exynos5250-hsi2c"; |
30 | reg = <0x12ca0000 0x100>; | 37 | reg = <0x12ca0000 0x100>; |
31 | interrupts = <56>; | 38 | interrupts = <56>; |
32 | clock-frequency = <100000>; | 39 | clock-frequency = <100000>; |
diff --git a/Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt b/Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt index befd4fb4764f..5c30026921ae 100644 --- a/Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt +++ b/Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt | |||
@@ -5,7 +5,7 @@ Required properties : | |||
5 | 5 | ||
6 | - reg : Offset and length of the register set for the device | 6 | - reg : Offset and length of the register set for the device |
7 | - compatible : Should be either: | 7 | - compatible : Should be either: |
8 | - "allwinner,sun4i-i2c" | 8 | - "allwinner,sun4i-a10-i2c" |
9 | - "allwinner,sun6i-a31-i2c" | 9 | - "allwinner,sun6i-a31-i2c" |
10 | - "marvell,mv64xxx-i2c" | 10 | - "marvell,mv64xxx-i2c" |
11 | - "marvell,mv78230-i2c" | 11 | - "marvell,mv78230-i2c" |
diff --git a/Documentation/devicetree/bindings/i2c/i2c-rcar.txt b/Documentation/devicetree/bindings/i2c/i2c-rcar.txt index dd8b2dd1edeb..16b3e07aa98f 100644 --- a/Documentation/devicetree/bindings/i2c/i2c-rcar.txt +++ b/Documentation/devicetree/bindings/i2c/i2c-rcar.txt | |||
@@ -7,6 +7,9 @@ Required properties: | |||
7 | "renesas,i2c-r8a7779" | 7 | "renesas,i2c-r8a7779" |
8 | "renesas,i2c-r8a7790" | 8 | "renesas,i2c-r8a7790" |
9 | "renesas,i2c-r8a7791" | 9 | "renesas,i2c-r8a7791" |
10 | "renesas,i2c-r8a7792" | ||
11 | "renesas,i2c-r8a7793" | ||
12 | "renesas,i2c-r8a7794" | ||
10 | - reg: physical base address of the controller and length of memory mapped | 13 | - reg: physical base address of the controller and length of memory mapped |
11 | region. | 14 | region. |
12 | - interrupts: interrupt specifier. | 15 | - interrupts: interrupt specifier. |
diff --git a/Documentation/devicetree/bindings/i2c/i2c-sh_mobile.txt b/Documentation/devicetree/bindings/i2c/i2c-sh_mobile.txt new file mode 100644 index 000000000000..d2153ce36fa8 --- /dev/null +++ b/Documentation/devicetree/bindings/i2c/i2c-sh_mobile.txt | |||
@@ -0,0 +1,26 @@ | |||
1 | Device tree configuration for Renesas IIC (sh_mobile) driver | ||
2 | |||
3 | Required properties: | ||
4 | - compatible : "renesas,iic-<soctype>". "renesas,rmobile-iic" as fallback | ||
5 | - reg : address start and address range size of device | ||
6 | - interrupts : interrupt of device | ||
7 | - clocks : clock for device | ||
8 | - #address-cells : should be <1> | ||
9 | - #size-cells : should be <0> | ||
10 | |||
11 | Optional properties: | ||
12 | - clock-frequency : frequency of bus clock in Hz. Default 100kHz if unset. | ||
13 | |||
14 | Pinctrl properties might be needed, too. See there. | ||
15 | |||
16 | Example: | ||
17 | |||
18 | iic0: i2c@e6500000 { | ||
19 | compatible = "renesas,iic-r8a7790", "renesas,rmobile-iic"; | ||
20 | reg = <0 0xe6500000 0 0x425>; | ||
21 | interrupts = <0 174 IRQ_TYPE_LEVEL_HIGH>; | ||
22 | clocks = <&mstp3_clks R8A7790_CLK_IIC0>; | ||
23 | clock-frequency = <400000>; | ||
24 | #address-cells = <1>; | ||
25 | #size-cells = <0>; | ||
26 | }; | ||