Skip to content

Commit cf8da11

Browse files
committed
Merge tag 'i2c-for-6.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux
Pull i2c updates from Wolfram Sang: "Mostly DT bindings additions this time because Andi was super busy and I also could only partly cover it. - new ids for qcom-cci, mt65xx, exynos5, apple, tegra20, k1, i801 - drop support for already removed S3C2410 - introduce and use fwnode_for_each_child_node_scoped() - mmt65xx: improve write-then-read transactions - k1: various fixes around bus errors and resets - usual share of cleanups, minor improvements, PM fixes... at24 updates: - add the compatible for Giantec GT24C256C to the device-tree bindings" * tag 'i2c-for-6.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux: (33 commits) i2c: i801: Add support for Intel Wildcat Lake-U dt-bindings: i2c: i2c-mt65xx: Add MediaTek MT8196/6991 compatibles i2c: designware: Add disabling clocks when probe fails i2c: designware: Fix clock issue when PM is disabled i2c: busses: Fix some spelling errors i2c: mux: Simplify boolean assignment in i2c_mux_alloc i2c: designware: use dev_err_probe() when probing platform device i2c: designware: convert to dev_err_probe() on request IRQ error i2c: spacemit: ensure SDA is released after bus reset i2c: spacemit: check SDA instead of SCL after bus reset i2c: spacemit: disable SDA glitch fix to avoid restart delay i2c: spacemit: remove stop function to avoid bus error i2c: spacemit: ensure bus release check runs when wait_bus_idle() fails i2c: mediatek: fix potential incorrect use of I2C_MASTER_WRRD i2c: boardinfo: Annotate code used in init phase only dt-bindings: i2c: i2c-mt65xx: Document MediaTek MT6878 I2C dt-bindings: i2c: samsung,s3c2410-i2c: Drop S3C2410 i2c: s3c2410: Drop S3C2410 OF support dt-bindings: i2c: spacemit,k1-i2c: Minor whitespace cleanup in example dt-bindings: i2c: exynos5: add samsung,exynos8890-hsi2c compatible ...
2 parents 5fb0249 + cb3005d commit cf8da11

30 files changed

Lines changed: 218 additions & 115 deletions

Documentation/devicetree/bindings/eeprom/at24.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -143,6 +143,7 @@ properties:
143143
- const: atmel,24c128
144144
- items:
145145
- enum:
146+
- giantec,gt24c256c
146147
- puya,p24c256c
147148
- const: atmel,24c256
148149
- items:

Documentation/devicetree/bindings/i2c/apple,i2c.yaml

Lines changed: 16 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -20,17 +20,22 @@ allOf:
2020

2121
properties:
2222
compatible:
23-
items:
24-
- enum:
25-
- apple,s5l8960x-i2c
26-
- apple,t7000-i2c
27-
- apple,s8000-i2c
28-
- apple,t8010-i2c
29-
- apple,t8015-i2c
30-
- apple,t8103-i2c
31-
- apple,t8112-i2c
32-
- apple,t6000-i2c
33-
- const: apple,i2c
23+
oneOf:
24+
- items:
25+
- const: apple,t6020-i2c
26+
- const: apple,t8103-i2c
27+
- items:
28+
- enum:
29+
# Do not add additional SoC to this list.
30+
- apple,s5l8960x-i2c
31+
- apple,t7000-i2c
32+
- apple,s8000-i2c
33+
- apple,t8010-i2c
34+
- apple,t8015-i2c
35+
- apple,t8103-i2c
36+
- apple,t8112-i2c
37+
- apple,t6000-i2c
38+
- const: apple,i2c
3439

3540
reg:
3641
maxItems: 1

Documentation/devicetree/bindings/i2c/i2c-exynos5.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,11 +33,16 @@ properties:
3333
- samsung,exynos7870-hsi2c
3434
- tesla,fsd-hsi2c
3535
- const: samsung,exynos7-hsi2c
36+
- items:
37+
- enum:
38+
- samsung,exynos8890-hsi2c
39+
- const: samsung,exynos8895-hsi2c
3640
- items:
3741
- enum:
3842
- google,gs101-hsi2c
3943
- samsung,exynos2200-hsi2c
4044
- samsung,exynos850-hsi2c
45+
- samsung,exynos990-hsi2c
4146
- const: samsung,exynosautov9-hsi2c
4247
- const: samsung,exynos5-hsi2c # Exynos5250 and Exynos5420
4348
deprecated: true

Documentation/devicetree/bindings/i2c/i2c-mt65xx.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,12 @@ properties:
5050
- enum:
5151
- mediatek,mt6795-i2c
5252
- const: mediatek,mt8173-i2c
53+
- items:
54+
- enum:
55+
- mediatek,mt6878-i2c
56+
- mediatek,mt6991-i2c
57+
- mediatek,mt8196-i2c
58+
- const: mediatek,mt8188-i2c
5359
- items:
5460
- enum:
5561
- mediatek,mt6893-i2c

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

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,11 @@ properties:
8080
support for 64 KiB transactions whereas earlier chips supported no
8181
more than 4 KiB per transactions.
8282
const: nvidia,tegra194-i2c
83+
- description: |
84+
Tegra256 has 8 generic I2C controllers. The controllers are similar to
85+
the previous generations, but have a different parent clock and hence
86+
the timing parameters are configured differently.
87+
const: nvidia,tegra256-i2c
8388
8489
reg:
8590
maxItems: 1
@@ -186,6 +191,7 @@ allOf:
186191
contains:
187192
enum:
188193
- nvidia,tegra194-i2c
194+
- nvidia,tegra256-i2c
189195
then:
190196
required:
191197
- resets

Documentation/devicetree/bindings/i2c/qcom,i2c-cci.yaml

Lines changed: 22 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@ properties:
2525

2626
- items:
2727
- enum:
28+
- qcom,qcm2290-cci
29+
- qcom,sa8775p-cci
2830
- qcom,sc7280-cci
2931
- qcom,sc8280xp-cci
3032
- qcom,sdm670-cci
@@ -44,11 +46,11 @@ properties:
4446
const: 0
4547

4648
clocks:
47-
minItems: 3
49+
minItems: 2
4850
maxItems: 6
4951

5052
clock-names:
51-
minItems: 3
53+
minItems: 2
5254
maxItems: 6
5355

5456
interrupts:
@@ -113,13 +115,30 @@ allOf:
113115
then:
114116
properties:
115117
clocks:
118+
minItems: 3
116119
maxItems: 3
117120
clock-names:
118121
items:
119122
- const: camss_top_ahb
120123
- const: cci_ahb
121124
- const: cci
122125

126+
- if:
127+
properties:
128+
compatible:
129+
contains:
130+
enum:
131+
- qcom,qcm2290-cci
132+
then:
133+
properties:
134+
clocks:
135+
minItems: 2
136+
maxItems: 2
137+
clock-names:
138+
items:
139+
- const: ahb
140+
- const: cci
141+
123142
- if:
124143
properties:
125144
compatible:
@@ -223,6 +242,7 @@ allOf:
223242
compatible:
224243
contains:
225244
enum:
245+
- qcom,sa8775p-cci
226246
- qcom,sm8550-cci
227247
- qcom,sm8650-cci
228248
- qcom,x1e80100-cci

Documentation/devicetree/bindings/i2c/samsung,s3c2410-i2c.yaml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ properties:
1313
compatible:
1414
oneOf:
1515
- enum:
16-
- samsung,s3c2410-i2c
1716
- samsung,s3c2440-i2c
1817
# For s3c2440-like I2C used inside HDMIPHY block found on several SoCs:
1918
- samsung,s3c2440-hdmiphy-i2c
@@ -93,7 +92,6 @@ allOf:
9392
compatible:
9493
contains:
9594
enum:
96-
- samsung,s3c2410-i2c
9795
- samsung,s3c2440-i2c
9896
- samsung,s3c2440-hdmiphy-i2c
9997
then:

Documentation/devicetree/bindings/i2c/spacemit,k1-i2c.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ examples:
5656
reg = <0xd4010800 0x38>;
5757
interrupt-parent = <&plic>;
5858
interrupts = <36>;
59-
clocks =<&ccu 32>, <&ccu 84>;
59+
clocks = <&ccu 32>, <&ccu 84>;
6060
clock-names = "func", "bus";
6161
clock-frequency = <100000>;
6262
};

Documentation/i2c/busses/i2c-i801.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@ Supported adapters:
5050
* Intel Birch Stream (SOC)
5151
* Intel Arrow Lake (SOC)
5252
* Intel Panther Lake (SOC)
53+
* Intel Wildcat Lake (SOC)
5354

5455
Datasheets: Publicly available at the Intel website
5556

drivers/i2c/busses/Kconfig

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -165,6 +165,7 @@ config I2C_I801
165165
Birch Stream (SOC)
166166
Arrow Lake (SOC)
167167
Panther Lake (SOC)
168+
Wildcat Lake (SOC)
168169

169170
This driver can also be built as a module. If so, the module
170171
will be called i2c-i801.

0 commit comments

Comments
 (0)