Commit 855ff900 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge branch 'i2c/for-mergewindow' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux

Pull i2c updates from Wolfram Sang:

 - core supports now bus regulators controlling power for SCL/SDA

 - quite some DT binding conversions to YAML

 - added a seperate DT binding for the optional SMBus Alert feature

 - documentation with examples how to deal with I2C sysfs files

 - some bigger rework for the i801 driver

 - and a few usual driver updates

* 'i2c/for-mergewindow' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux: (42 commits)
  i2c: ali1535: mention that the device should not be disabled
  i2c: mpc: Restore reread of I2C status register
  i2c: core-smbus: Expose PEC calculate function for generic use
  Documentation: i2c: Add doc for I2C sysfs
  i2c: core: Disable client irq on reboot/shutdown
  dt-bindings: i2c: update bindings for MT8195 SoC
  i2c: imx: Fix some checkpatch warnings
  i2c: davinci: Simplify with dev_err_probe()
  i2c: cadence: Simplify with dev_err_probe()
  i2c: xiic: Simplify with dev_err_probe()
  i2c: cadence: Clear HOLD bit before xfer_size register rolls over
  dt-bindings: i2c: ce4100: Replace "ti,pcf8575" by "nxp,pcf8575"
  i2c: i801: Improve i801_setup_hstcfg
  i2c: i801: Use driver name constant instead of function dev_driver_string
  i2c: i801: Simplify initialization of i2c_board_info in i801_probe_optional_slaves
  i2c: i801: Improve status polling
  i2c: cht-wc: Replace of_node by NULL
  i2c: riic: Add RZ/G2L support
  dt-bindings: i2c: renesas,riic: Document RZ/G2L I2C controller
  dt-bindings: i2c: renesas,iic: Convert to json-schema
  ...
parents d2500a0c 9d633683
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -15,6 +15,7 @@ Required properties:
      "mediatek,mt8173-i2c": for MediaTek MT8173
      "mediatek,mt8183-i2c": for MediaTek MT8183
      "mediatek,mt8192-i2c": for MediaTek MT8192
      "mediatek,mt8195-i2c", "mediatek,mt8192-i2c": for MediaTek MT8195
      "mediatek,mt8516-i2c", "mediatek,mt2712-i2c": for MediaTek MT8516
  - reg: physical base address of the controller and dma base, length of memory
    mapped region.
@@ -32,6 +33,7 @@ Optional properties:
  - mediatek,have-pmic: platform can control i2c form special pmic side.
    Only mt6589 and mt8135 support this feature.
  - mediatek,use-push-pull: IO config use push-pull mode.
  - vbus-supply: phandle to the regulator that provides power to SCL/SDA.

Example:

+0 −1
Original line number Diff line number Diff line
@@ -62,7 +62,6 @@ Example:
				reg = <0x3c>;
				pwms = <&pwm 4 3000>;
				reset-gpios = <&gpio2 7 1>;
				reset-active-low;
			};
		};

+0 −37
Original line number Diff line number Diff line
I2C for OMAP platforms

Required properties :
- compatible : Must be
	"ti,omap2420-i2c" for OMAP2420 SoCs
	"ti,omap2430-i2c" for OMAP2430 SoCs
	"ti,omap3-i2c" for OMAP3 SoCs
	"ti,omap4-i2c" for OMAP4+ SoCs
	"ti,am654-i2c", "ti,omap4-i2c" for AM654 SoCs
	"ti,j721e-i2c", "ti,omap4-i2c" for J721E SoCs
	"ti,am64-i2c", "ti,omap4-i2c" for AM64 SoCs
- ti,hwmods : Must be "i2c<n>", n being the instance number (1-based)
- #address-cells = <1>;
- #size-cells = <0>;

Recommended properties :
- clock-frequency : Desired I2C bus clock frequency in Hz. Otherwise
  the default 100 kHz frequency will be used.

Optional properties:
- Child nodes conforming to i2c bus binding

Note: Current implementation will fetch base address, irq and dma
from omap hwmod data base during device registration.
Future plan is to migrate hwmod data base contents into device tree
blob so that, all the required data will be used from device tree dts
file.

Examples :

i2c1: i2c@0 {
    compatible = "ti,omap3-i2c";
    #address-cells = <1>;
    #size-cells = <0>;
    ti,hwmods = "i2c1";
    clock-frequency = <400000>;
};
+2 −2
Original line number Diff line number Diff line
@@ -71,7 +71,7 @@ This is an example which is used on FalconFalls:
			/* This I2C controller has one gpio controller */
			gpio@26 {
				#gpio-cells = <2>;
				compatible = "ti,pcf8575";
				compatible = "nxp,pcf8575";
				reg = <0x26>;
				gpio-controller;
			};
@@ -85,7 +85,7 @@ This is an example which is used on FalconFalls:

			gpio@26 {
				#gpio-cells = <2>;
				compatible = "ti,pcf8575";
				compatible = "nxp,pcf8575";
				reg = <0x26>;
				gpio-controller;
			};
+3 −2
Original line number Diff line number Diff line
@@ -9,6 +9,7 @@ PROPERTIES:
		"qcom,msm8916-cci"
		"qcom,msm8996-cci"
		"qcom,sdm845-cci"
		"qcom,sm8250-cci"

- reg
	Usage: required
@@ -41,8 +42,8 @@ PROPERTIES:

SUBNODES:

The CCI provides I2C masters for one (msm8916) or two i2c busses (msm8996 and
sdm845), described as subdevices named "i2c-bus@0" and "i2c-bus@1".
The CCI provides I2C masters for one (msm8916) or two i2c busses (msm8996,
sdm845 and sm8250), described as subdevices named "i2c-bus@0" and "i2c-bus@1".

PROPERTIES:

Loading