Commit ef035628 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge tag 'i2c-for-6.11-rc1-try2' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux

Pull i2c fixes from Wolfram Sang:
 "The I2C core gains documentation updates for the testunit, a cleanup
  regarding unneeded 'driver_data' and more sanity checks in the char
  device.

  For the host drivers, this release includes significant updates, with
  the primary change being the renaming from "master/slave" to
  "controller/target" to adhere to I2C v7 and SMBus 3.2 standards.

  New Support:

   - Added support for Intel Arrow Lake-H
   - Added I2C support in the Arioha SoC by linking the Mediatek I2C
     controller

  Cleanups:

   - Added the MODULE_DESCRIPTION() macro, resolving a modpost warning
     in the ALi 1563 Southbridge driver.
   - Constified the regmap_config declaration in the i2c-designware
     driver.
   - Improved the coding style in the Renesas R-Car driver by removing
     unnecessary semicolons after brackets.

  General improvements:

   - In the OMAP device, replaced NOIRQ_SYSTEM_SLEEP_PM_OPS with
     RUNTIME_PM_OPS to enable waking up the controller during suspend()
     before suspend_noirq() kicks in.
   - Improved logging in the Xilinx driver.
   - Added a warning (WARN()) in the Renesas R-Car driver for spurious
     interrupts.

  DTS Changes:

   - Removed address-cell and size-cell from the Atmel at91sam, nVidia
     Tegra 20, and Samsung S3c2410 devices.
   - Fixed Texas Instruments OMAP4 I2C controller to comply with the
     i2c-controller.yaml schema.
   - Improved indentation in DTS examples for several I2C devices.
   - Converted the NXP LPC1788 binding to the dt-schema.
   - Added documentation for the compatible string thead,th1520-i2c.
   - Added the "power-domains" property for the Meson I2C driver.

  AT24 EEPROM driver changes:

   - add support for two new Microchip models
   - document even more new models in DT bindings (those use fallback
     compatibles so no code changes)"

* tag 'i2c-for-6.11-rc1-try2' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux: (87 commits)
  i2c: document new callbacks in i2c_algorithm
  dt-bindings: i2c: amlogic,meson6-i2c: add optional power-domains
  dt-bindings: i2c: at91: Add sama7d65 compatible string
  i2c: st: reword according to newest specification
  i2c: cpm: reword according to newest specification
  i2c: virtio: reword according to newest specification
  i2c: nvidia-gpu: reword according to newest specification
  i2c: viai2c: reword according to newest specification
  i2c: viperboard: reword according to newest specification
  i2c: uniphier: reword according to newest specification
  i2c: uniphier-f: reword according to newest specification
  i2c: tiny-usb: reword according to newest specification
  i2c: thunderx-pcidrv: reword according to newest specification
  i2c: tegra-bpmp: reword according to newest specification
  i2c: taos-evm: reword according to newest specification
  i2c: sun6i-p2wi: reword according to newest specification
  i2c: stm32f4: reword according to newest specification
  i2c: sprd: reword according to newest specification
  i2c: sis5595: reword according to newest specification
  i2c: rzv2m: reword according to newest specification
  ...
parents acc5965b 5d89b5bd
Loading
Loading
Loading
Loading
+13 −5
Original line number Diff line number Diff line
@@ -18,7 +18,9 @@ select:
  properties:
    compatible:
      contains:
        pattern: "^atmel,(24(c|cs|mac)[0-9]+|spd)$"
        anyOf:
          - pattern: "^atmel,(24(c|cs|mac)[0-9]+|spd)$"
          - enum: ["microchip,24aa025e48", "microchip,24aa025e64"]
  required:
    - compatible

@@ -102,9 +104,6 @@ properties:
                  pattern: spd$
      # These are special cases that don't conform to the above pattern.
      # Each requires a standard at24 model as fallback.
      - items:
          - const: belling,bl24c16a
          - const: atmel,24c16
      - items:
          - enum:
              - rohm,br24g01
@@ -122,16 +121,25 @@ properties:
              - rohm,br24g04
          - const: atmel,24c04
      - items:
          - const: renesas,r1ex24016
          - enum:
              - belling,bl24c16a
              - renesas,r1ex24016
          - const: atmel,24c16
      - items:
          - const: giantec,gt24c32a
          - const: atmel,24c32
      - items:
          - const: onnn,n24s64b
          - const: atmel,24c64
      - items:
          - enum:
              - renesas,r1ex24128
              - samsung,s524ad0xd1
          - const: atmel,24c128
      - items:
          - const: microchip,24aa025e48
      - items:
          - const: microchip,24aa025e64
      - pattern: '^atmel,24c(32|64)d-wl$' # Actual vendor is st

  label:
+3 −0
Original line number Diff line number Diff line
@@ -30,6 +30,9 @@ properties:
  clocks:
    minItems: 1

  power-domains:
    maxItems: 1

required:
  - compatible
  - reg
+2 −8
Original line number Diff line number Diff line
@@ -26,6 +26,7 @@ properties:
              - microchip,sam9x60-i2c
      - items:
          - enum:
              - microchip,sama7d65-i2c
              - microchip,sama7g5-i2c
              - microchip,sam9x7-i2c
          - const: microchip,sam9x60-i2c
@@ -36,12 +37,6 @@ properties:
  interrupts:
    maxItems: 1

  "#address-cells":
    const: 1

  "#size-cells":
    const: 0

  clocks:
    maxItems: 1

@@ -72,8 +67,6 @@ required:
  - compatible
  - reg
  - interrupts
  - "#address-cells"
  - "#size-cells"
  - clocks

allOf:
@@ -86,6 +79,7 @@ allOf:
              - atmel,sama5d4-i2c
              - atmel,sama5d2-i2c
              - microchip,sam9x60-i2c
              - microchip,sama7d65-i2c
              - microchip,sama7g5-i2c
    then:
      properties:
+14 −14
Original line number Diff line number Diff line
@@ -77,10 +77,10 @@ else:
examples:
  - |
    bsca: i2c@f0406200 {
          clock-frequency = <390000>;
        compatible = "brcm,brcmstb-i2c";
          interrupt-parent = <&irq0_intc>;
        reg = <0xf0406200 0x58>;
        clock-frequency = <390000>;
        interrupt-parent = <&irq0_intc>;
        interrupts = <0x18>;
        interrupt-names = "upg_bsca";
    };
+0 −33
Original line number Diff line number Diff line
NXP I2C controller for LPC2xxx/178x/18xx/43xx

Required properties:
 - compatible: must be "nxp,lpc1788-i2c"
 - reg: physical address and length of the device registers
 - interrupts: a single interrupt specifier
 - clocks: clock for the device
 - #address-cells: should be <1>
 - #size-cells: should be <0>

Optional properties:
- clock-frequency: the desired I2C bus clock frequency in Hz; in
  absence of this property the default value is used (100 kHz).

Example:
i2c0: i2c@400a1000 {
	compatible = "nxp,lpc1788-i2c";
	reg = <0x400a1000 0x1000>;
	interrupts = <18>;
	clocks = <&ccu1 CLK_APB1_I2C0>;
	#address-cells = <1>;
	#size-cells = <0>;
};

&i2c0 {
	clock-frequency = <400000>;

	lm75@48 {
		compatible = "nxp,lm75";
		reg = <0x48>;
	};
};
Loading