Skip to content

Commit ef03562

Browse files
committed
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 ...
2 parents acc5965 + 5d89b5b commit ef03562

File tree

98 files changed

+744
-639
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

98 files changed

+744
-639
lines changed

Documentation/devicetree/bindings/eeprom/at24.yaml

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,9 @@ select:
1818
properties:
1919
compatible:
2020
contains:
21-
pattern: "^atmel,(24(c|cs|mac)[0-9]+|spd)$"
21+
anyOf:
22+
- pattern: "^atmel,(24(c|cs|mac)[0-9]+|spd)$"
23+
- enum: ["microchip,24aa025e48", "microchip,24aa025e64"]
2224
required:
2325
- compatible
2426

@@ -102,9 +104,6 @@ properties:
102104
pattern: spd$
103105
# These are special cases that don't conform to the above pattern.
104106
# Each requires a standard at24 model as fallback.
105-
- items:
106-
- const: belling,bl24c16a
107-
- const: atmel,24c16
108107
- items:
109108
- enum:
110109
- rohm,br24g01
@@ -122,16 +121,25 @@ properties:
122121
- rohm,br24g04
123122
- const: atmel,24c04
124123
- items:
125-
- const: renesas,r1ex24016
124+
- enum:
125+
- belling,bl24c16a
126+
- renesas,r1ex24016
126127
- const: atmel,24c16
127128
- items:
128129
- const: giantec,gt24c32a
129130
- const: atmel,24c32
131+
- items:
132+
- const: onnn,n24s64b
133+
- const: atmel,24c64
130134
- items:
131135
- enum:
132136
- renesas,r1ex24128
133137
- samsung,s524ad0xd1
134138
- const: atmel,24c128
139+
- items:
140+
- const: microchip,24aa025e48
141+
- items:
142+
- const: microchip,24aa025e64
135143
- pattern: '^atmel,24c(32|64)d-wl$' # Actual vendor is st
136144

137145
label:

Documentation/devicetree/bindings/i2c/amlogic,meson6-i2c.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,9 @@ properties:
3030
clocks:
3131
minItems: 1
3232

33+
power-domains:
34+
maxItems: 1
35+
3336
required:
3437
- compatible
3538
- reg

Documentation/devicetree/bindings/i2c/atmel,at91sam-i2c.yaml

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ properties:
2626
- microchip,sam9x60-i2c
2727
- items:
2828
- enum:
29+
- microchip,sama7d65-i2c
2930
- microchip,sama7g5-i2c
3031
- microchip,sam9x7-i2c
3132
- const: microchip,sam9x60-i2c
@@ -36,12 +37,6 @@ properties:
3637
interrupts:
3738
maxItems: 1
3839

39-
"#address-cells":
40-
const: 1
41-
42-
"#size-cells":
43-
const: 0
44-
4540
clocks:
4641
maxItems: 1
4742

@@ -72,8 +67,6 @@ required:
7267
- compatible
7368
- reg
7469
- interrupts
75-
- "#address-cells"
76-
- "#size-cells"
7770
- clocks
7871

7972
allOf:
@@ -86,6 +79,7 @@ allOf:
8679
- atmel,sama5d4-i2c
8780
- atmel,sama5d2-i2c
8881
- microchip,sam9x60-i2c
82+
- microchip,sama7d65-i2c
8983
- microchip,sama7g5-i2c
9084
then:
9185
properties:

Documentation/devicetree/bindings/i2c/brcm,brcmstb-i2c.yaml

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -76,21 +76,21 @@ else:
7676

7777
examples:
7878
- |
79-
bsca: i2c@f0406200 {
80-
clock-frequency = <390000>;
81-
compatible = "brcm,brcmstb-i2c";
82-
interrupt-parent = <&irq0_intc>;
83-
reg = <0xf0406200 0x58>;
84-
interrupts = <0x18>;
85-
interrupt-names = "upg_bsca";
86-
};
79+
bsca: i2c@f0406200 {
80+
compatible = "brcm,brcmstb-i2c";
81+
reg = <0xf0406200 0x58>;
82+
clock-frequency = <390000>;
83+
interrupt-parent = <&irq0_intc>;
84+
interrupts = <0x18>;
85+
interrupt-names = "upg_bsca";
86+
};
8787
8888
- |
89-
ddc0: i2c@7ef04500 {
90-
compatible = "brcm,bcm2711-hdmi-i2c";
91-
reg = <0x7ef04500 0x100>, <0x7ef00b00 0x300>;
92-
reg-names = "bsc", "auto-i2c";
93-
clock-frequency = <390000>;
94-
};
89+
ddc0: i2c@7ef04500 {
90+
compatible = "brcm,bcm2711-hdmi-i2c";
91+
reg = <0x7ef04500 0x100>, <0x7ef00b00 0x300>;
92+
reg-names = "bsc", "auto-i2c";
93+
clock-frequency = <390000>;
94+
};
9595
9696
...

Documentation/devicetree/bindings/i2c/i2c-demux-pinctrl.yaml

Lines changed: 56 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -109,65 +109,65 @@ examples:
109109
// Example for a bus to be demuxed. It contains various I2C clients for
110110
// HDMI, so the bus is named "i2c-hdmi":
111111
i2chdmi: i2c-mux3 {
112-
compatible = "i2c-demux-pinctrl";
113-
i2c-parent = <&iic2>, <&i2c2>, <&gpioi2c2>;
114-
i2c-bus-name = "i2c-hdmi";
115-
#address-cells = <1>;
116-
#size-cells = <0>;
117-
118-
ak4643: codec@12 {
119-
compatible = "asahi-kasei,ak4643";
120-
#sound-dai-cells = <0>;
121-
reg = <0x12>;
122-
};
123-
124-
composite-in@20 {
125-
compatible = "adi,adv7180";
126-
reg = <0x20>;
112+
compatible = "i2c-demux-pinctrl";
113+
i2c-parent = <&iic2>, <&i2c2>, <&gpioi2c2>;
114+
i2c-bus-name = "i2c-hdmi";
115+
#address-cells = <1>;
116+
#size-cells = <0>;
127117
128-
port {
129-
adv7180: endpoint {
130-
bus-width = <8>;
131-
remote-endpoint = <&vin1ep0>;
132-
};
133-
};
118+
ak4643: codec@12 {
119+
compatible = "asahi-kasei,ak4643";
120+
#sound-dai-cells = <0>;
121+
reg = <0x12>;
122+
};
123+
124+
composite-in@20 {
125+
compatible = "adi,adv7180";
126+
reg = <0x20>;
127+
128+
port {
129+
adv7180: endpoint {
130+
bus-width = <8>;
131+
remote-endpoint = <&vin1ep0>;
132+
};
134133
};
134+
};
135+
136+
hdmi@39 {
137+
compatible = "adi,adv7511w";
138+
reg = <0x39>;
139+
interrupt-parent = <&gpio1>;
140+
interrupts = <15 IRQ_TYPE_LEVEL_LOW>;
141+
clocks = <&cec_clock>;
142+
clock-names = "cec";
143+
144+
avdd-supply = <&fixedregulator1v8>;
145+
dvdd-supply = <&fixedregulator1v8>;
146+
pvdd-supply = <&fixedregulator1v8>;
147+
dvdd-3v-supply = <&fixedregulator3v3>;
148+
bgvdd-supply = <&fixedregulator1v8>;
149+
150+
adi,input-depth = <8>;
151+
adi,input-colorspace = "rgb";
152+
adi,input-clock = "1x";
153+
154+
ports {
155+
#address-cells = <1>;
156+
#size-cells = <0>;
157+
158+
port@0 {
159+
reg = <0>;
160+
adv7511_in: endpoint {
161+
remote-endpoint = <&lvds0_out>;
162+
};
163+
};
135164
136-
hdmi@39 {
137-
compatible = "adi,adv7511w";
138-
reg = <0x39>;
139-
interrupt-parent = <&gpio1>;
140-
interrupts = <15 IRQ_TYPE_LEVEL_LOW>;
141-
clocks = <&cec_clock>;
142-
clock-names = "cec";
143-
144-
avdd-supply = <&fixedregulator1v8>;
145-
dvdd-supply = <&fixedregulator1v8>;
146-
pvdd-supply = <&fixedregulator1v8>;
147-
dvdd-3v-supply = <&fixedregulator3v3>;
148-
bgvdd-supply = <&fixedregulator1v8>;
149-
150-
adi,input-depth = <8>;
151-
adi,input-colorspace = "rgb";
152-
adi,input-clock = "1x";
153-
154-
ports {
155-
#address-cells = <1>;
156-
#size-cells = <0>;
157-
158-
port@0 {
159-
reg = <0>;
160-
adv7511_in: endpoint {
161-
remote-endpoint = <&lvds0_out>;
162-
};
163-
};
164-
165-
port@1 {
166-
reg = <1>;
167-
adv7511_out: endpoint {
168-
remote-endpoint = <&hdmi_con_out>;
169-
};
170-
};
165+
port@1 {
166+
reg = <1>;
167+
adv7511_out: endpoint {
168+
remote-endpoint = <&hdmi_con_out>;
171169
};
170+
};
172171
};
172+
};
173173
};

Documentation/devicetree/bindings/i2c/i2c-lpc2k.txt

Lines changed: 0 additions & 33 deletions
This file was deleted.

Documentation/devicetree/bindings/i2c/nvidia,tegra20-i2c.yaml

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -87,12 +87,6 @@ properties:
8787
interrupts:
8888
maxItems: 1
8989

90-
'#address-cells':
91-
const: 1
92-
93-
'#size-cells':
94-
const: 0
95-
9690
clocks:
9791
minItems: 1
9892
maxItems: 2
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/i2c/nxp,lpc1788-i2c.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: NXP I2C controller for LPC2xxx/178x/18xx/43xx
8+
9+
maintainers:
10+
- Vladimir Zapolskiy <[email protected]>
11+
12+
allOf:
13+
- $ref: /schemas/i2c/i2c-controller.yaml#
14+
15+
properties:
16+
compatible:
17+
const: nxp,lpc1788-i2c
18+
19+
reg:
20+
maxItems: 1
21+
22+
interrupts:
23+
maxItems: 1
24+
25+
clocks:
26+
maxItems: 1
27+
28+
clock-frequency:
29+
description: the desired I2C bus clock frequency in Hz
30+
default: 100000
31+
32+
resets:
33+
maxItems: 1
34+
35+
required:
36+
- compatible
37+
- reg
38+
- interrupts
39+
- clocks
40+
41+
unevaluatedProperties: false
42+
43+
examples:
44+
- |
45+
#include "dt-bindings/clock/lpc18xx-ccu.h"
46+
47+
i2c@400a1000 {
48+
compatible = "nxp,lpc1788-i2c";
49+
reg = <0x400a1000 0x1000>;
50+
interrupts = <18>;
51+
clocks = <&ccu1 CLK_APB1_I2C0>;
52+
#address-cells = <1>;
53+
#size-cells = <0>;
54+
};

Documentation/devicetree/bindings/i2c/renesas,iic-emev2.yaml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -44,11 +44,11 @@ examples:
4444
#include <dt-bindings/interrupt-controller/arm-gic.h>
4545
4646
iic0: i2c@e0070000 {
47-
#address-cells = <1>;
48-
#size-cells = <0>;
49-
compatible = "renesas,iic-emev2";
50-
reg = <0xe0070000 0x28>;
51-
interrupts = <GIC_SPI 32 IRQ_TYPE_EDGE_RISING>;
52-
clocks = <&iic0_sclk>;
53-
clock-names = "sclk";
47+
compatible = "renesas,iic-emev2";
48+
reg = <0xe0070000 0x28>;
49+
interrupts = <GIC_SPI 32 IRQ_TYPE_EDGE_RISING>;
50+
clocks = <&iic0_sclk>;
51+
clock-names = "sclk";
52+
#address-cells = <1>;
53+
#size-cells = <0>;
5454
};

Documentation/devicetree/bindings/i2c/renesas,rcar-i2c.yaml

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -153,14 +153,14 @@ examples:
153153
#include <dt-bindings/power/r8a7791-sysc.h>
154154
155155
i2c0: i2c@e6508000 {
156-
#address-cells = <1>;
157-
#size-cells = <0>;
158-
compatible = "renesas,i2c-r8a7791", "renesas,rcar-gen2-i2c";
159-
reg = <0xe6508000 0x40>;
160-
interrupts = <GIC_SPI 287 IRQ_TYPE_LEVEL_HIGH>;
161-
clock-frequency = <400000>;
162-
clocks = <&cpg CPG_MOD 931>;
163-
power-domains = <&sysc R8A7791_PD_ALWAYS_ON>;
164-
resets = <&cpg 931>;
165-
i2c-scl-internal-delay-ns = <6>;
156+
compatible = "renesas,i2c-r8a7791", "renesas,rcar-gen2-i2c";
157+
reg = <0xe6508000 0x40>;
158+
interrupts = <GIC_SPI 287 IRQ_TYPE_LEVEL_HIGH>;
159+
clock-frequency = <400000>;
160+
clocks = <&cpg CPG_MOD 931>;
161+
power-domains = <&sysc R8A7791_PD_ALWAYS_ON>;
162+
resets = <&cpg 931>;
163+
i2c-scl-internal-delay-ns = <6>;
164+
#address-cells = <1>;
165+
#size-cells = <0>;
166166
};

0 commit comments

Comments
 (0)