History

Merge tag 'i2c-for-6.18-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux

Pull i2c fixes from Wolfram Sang: - PM cleanup after all prerequisites are merged with rc1 - usbio: missing addition after all dependencies are in - slimpro: DT binding schema conversion * tag 'i2c-for-6.18-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux: dt-bindings: i2c: Convert apm,xgene-slimpro-i2c to DT schema i2c: usbio: Add ACPI device-id for MTL-CVF devices i2c: Remove redundant pm_runtime_mark_last_busy() calls

Linus Torvalds committed 1 year ago

Commit 389dfd92 parents 98ac9cc 867537025 files · +37 −56Browse files

Unified · Split

25 files
  1. Documentation/devicetree/bindings/i2c/apm,xgene-slimpro-i2c.yaml +36 −0
  2. Documentation/devicetree/bindings/i2c/i2c-xgene-slimpro.txt +0 −15
  3. drivers/i2c/busses/i2c-amd-mp2.h +0 −1
  4. drivers/i2c/busses/i2c-at91-core.c +0 −1
  5. drivers/i2c/busses/i2c-at91-master.c +0 −1
  6. drivers/i2c/busses/i2c-cadence.c +0 −1
  7. drivers/i2c/busses/i2c-davinci.c +0 −2
  8. drivers/i2c/busses/i2c-designware-master.c +0 −1
  9. drivers/i2c/busses/i2c-hix5hd2.c +0 −1
  10. drivers/i2c/busses/i2c-i801.c +0 −1
  11. drivers/i2c/busses/i2c-img-scb.c +0 −3
  12. drivers/i2c/busses/i2c-imx-lpi2c.c +0 −4
  13. drivers/i2c/busses/i2c-imx.c +0 −3
  14. drivers/i2c/busses/i2c-mv64xxx.c +0 −1
  15. drivers/i2c/busses/i2c-nvidia-gpu.c +0 −1
  16. drivers/i2c/busses/i2c-omap.c +0 −3
  17. drivers/i2c/busses/i2c-qcom-cci.c +0 −2
  18. drivers/i2c/busses/i2c-qcom-geni.c +0 −1
  19. drivers/i2c/busses/i2c-qup.c +0 −3
  20. drivers/i2c/busses/i2c-riic.c +0 −2
  21. drivers/i2c/busses/i2c-rzv2m.c +0 −1
  22. drivers/i2c/busses/i2c-sprd.c +0 −2
  23. drivers/i2c/busses/i2c-stm32f7.c +0 −5
  24. drivers/i2c/busses/i2c-usbio.c +1 −0
  25. drivers/i2c/busses/i2c-xiic.c +0 −1
Documentation/devicetree/bindings/i2c/apm,xgene-slimpro-i2c.yaml+36−0
@@ -0,0 +1,36 @@
1+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+%YAML 1.2
3+---
4+$id: http://devicetree.org/schemas/i2c/apm,xgene-slimpro-i2c.yaml#
5+$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+title: APM X-Gene SLIMpro Mailbox I2C
8+
9+maintainers:
10+ - Khuong Dinh <khuong@os.amperecomputing.com>
11+
12+description:
13+ An I2C controller accessed over the "SLIMpro" mailbox.
14+
15+allOf:
16+ - $ref: /schemas/i2c/i2c-controller.yaml#
17+
18+properties:
19+ compatible:
20+ const: apm,xgene-slimpro-i2c
21+
22+ mboxes:
23+ maxItems: 1
24+
25+required:
26+ - compatible
27+ - mboxes
28+
29+unevaluatedProperties: false
30+
31+examples:
32+ - |
33+ i2c {
34+ compatible = "apm,xgene-slimpro-i2c";
35+ mboxes = <&mailbox 0>;
36+ };
Documentation/devicetree/bindings/i2c/i2c-xgene-slimpro.txt+0−15
@@ -1,15 +0,0 @@
1−APM X-Gene SLIMpro Mailbox I2C Driver
2−
3−An I2C controller accessed over the "SLIMpro" mailbox.
4−
5−Required properties :
6−
7− - compatible : should be "apm,xgene-slimpro-i2c"
8− - mboxes : use the label reference for the mailbox as the first parameter.
9− The second parameter is the channel number.
10−
11−Example :
12− i2cslimpro {
13− compatible = "apm,xgene-slimpro-i2c";
14− mboxes = <&mailbox 0>;
15− };
drivers/i2c/busses/i2c-amd-mp2.h+0−1
@@ -207,7 +207,6 @@ static inline void amd_mp2_pm_runtime_get(struct amd_mp2_dev *mp2_dev) · 206 unmodified lines
207207
208208 static inline void amd_mp2_pm_runtime_put(struct amd_mp2_dev *mp2_dev)
209209 {
210− pm_runtime_mark_last_busy(&mp2_dev->pci_dev->dev);
211210 pm_runtime_put_autosuspend(&mp2_dev->pci_dev->dev);
212211 }
213212
drivers/i2c/busses/i2c-at91-core.c+0−1
@@ -313,7 +313,6 @@ static int __maybe_unused at91_twi_resume_noirq(struct device *dev) · 312 unmodified lines
313313 return ret;
314314 }
315315
316− pm_runtime_mark_last_busy(dev);
317316 pm_request_autosuspend(dev);
318317
319318 at91_init_twi_bus(twi_dev);
drivers/i2c/busses/i2c-at91-master.c+0−1
@@ -717,7 +717,6 @@ static int at91_twi_xfer(struct i2c_adapter *adap, struct i2c_msg *msg, int num) · 716 unmodified lines
717717
718718 ret = (ret < 0) ? ret : num;
719719 out:
720− pm_runtime_mark_last_busy(dev->dev);
721720 pm_runtime_put_autosuspend(dev->dev);
722721
723722 return ret;
drivers/i2c/busses/i2c-cadence.c+0−1
@@ -1128,7 +1128,6 @@ out: · 1127 unmodified lines
11281128 cdns_i2c_set_mode(CDNS_I2C_MODE_SLAVE, id);
11291129 #endif
11301130
1131− pm_runtime_mark_last_busy(id->dev);
11321131 pm_runtime_put_autosuspend(id->dev);
11331132 return ret;
11341133 }
drivers/i2c/busses/i2c-davinci.c+0−2
@@ -543,7 +543,6 @@ i2c_davinci_xfer(struct i2c_adapter *adap, struct i2c_msg msgs[], int num) · 542 unmodified lines
543543 ret = num;
544544
545545 out:
546− pm_runtime_mark_last_busy(dev->dev);
547546 pm_runtime_put_autosuspend(dev->dev);
548547
549548 return ret;
@@ -821,7 +820,6 @@ static int davinci_i2c_probe(struct platform_device *pdev) · 271 unmodified lines
821820 if (r)
822821 goto err_unuse_clocks;
823822
824− pm_runtime_mark_last_busy(dev->dev);
825823 pm_runtime_put_autosuspend(dev->dev);
826824
827825 return 0;
drivers/i2c/busses/i2c-designware-master.c+0−1
@@ -901,7 +901,6 @@ done: · 900 unmodified lines
901901 i2c_dw_release_lock(dev);
902902
903903 done_nolock:
904− pm_runtime_mark_last_busy(dev->dev);
905904 pm_runtime_put_autosuspend(dev->dev);
906905
907906 return ret;
drivers/i2c/busses/i2c-hix5hd2.c+0−1
@@ -373,7 +373,6 @@ static int hix5hd2_i2c_xfer(struct i2c_adapter *adap, · 372 unmodified lines
373373 ret = num;
374374
375375 out:
376− pm_runtime_mark_last_busy(priv->dev);
377376 pm_runtime_put_autosuspend(priv->dev);
378377 return ret;
379378 }
drivers/i2c/busses/i2c-i801.c+0−1
@@ -930,7 +930,6 @@ out: · 929 unmodified lines
930930 */
931931 iowrite8(SMBHSTSTS_INUSE_STS | STATUS_FLAGS, SMBHSTSTS(priv));
932932
933− pm_runtime_mark_last_busy(&priv->pci_dev->dev);
934933 pm_runtime_put_autosuspend(&priv->pci_dev->dev);
935934 return ret;
936935 }
drivers/i2c/busses/i2c-img-scb.c+0−3
@@ -1131,7 +1131,6 @@ static int img_i2c_xfer(struct i2c_adapter *adap, struct i2c_msg *msgs, · 1130 unmodified lines
11311131 break;
11321132 }
11331133
1134− pm_runtime_mark_last_busy(adap->dev.parent);
11351134 pm_runtime_put_autosuspend(adap->dev.parent);
11361135
11371136 return i2c->msg_status ? i2c->msg_status : num;
@@ -1165,7 +1164,6 @@ static int img_i2c_init(struct img_i2c *i2c) · 27 unmodified lines
11651164 "Unknown hardware revision (%d.%d.%d.%d)\n",
11661165 (rev >> 24) & 0xff, (rev >> 16) & 0xff,
11671166 (rev >> 8) & 0xff, rev & 0xff);
1168− pm_runtime_mark_last_busy(i2c->adap.dev.parent);
11691167 pm_runtime_put_autosuspend(i2c->adap.dev.parent);
11701168 return -EINVAL;
11711169 }
@@ -1317,7 +1315,6 @@ static int img_i2c_init(struct img_i2c *i2c) · 145 unmodified lines
13171315 /* Perform a synchronous sequence to reset the bus */
13181316 ret = img_i2c_reset_bus(i2c);
13191317
1320− pm_runtime_mark_last_busy(i2c->adap.dev.parent);
13211318 pm_runtime_put_autosuspend(i2c->adap.dev.parent);
13221319
13231320 return ret;
drivers/i2c/busses/i2c-imx-lpi2c.c+0−4
@@ -363,7 +363,6 @@ static int lpi2c_imx_master_enable(struct lpi2c_imx_struct *lpi2c_imx) · 362 unmodified lines
363363 return 0;
364364
365365 rpm_put:
366− pm_runtime_mark_last_busy(lpi2c_imx->adapter.dev.parent);
367366 pm_runtime_put_autosuspend(lpi2c_imx->adapter.dev.parent);
368367
369368 return ret;
@@ -377,7 +376,6 @@ static int lpi2c_imx_master_disable(struct lpi2c_imx_struct *lpi2c_imx) · 7 unmodified lines
377376 temp &= ~MCR_MEN;
378377 writel(temp, lpi2c_imx->base + LPI2C_MCR);
379378
380− pm_runtime_mark_last_busy(lpi2c_imx->adapter.dev.parent);
381379 pm_runtime_put_autosuspend(lpi2c_imx->adapter.dev.parent);
382380
383381 return 0;
@@ -1462,7 +1460,6 @@ static int lpi2c_imx_probe(struct platform_device *pdev) · 1078 unmodified lines
14621460 if (ret)
14631461 goto rpm_disable;
14641462
1465− pm_runtime_mark_last_busy(&pdev->dev);
14661463 pm_runtime_put_autosuspend(&pdev->dev);
14671464
14681465 dev_info(&lpi2c_imx->adapter.dev, "LPI2C adapter registered\n");
@@ -1564,7 +1561,6 @@ static int lpi2c_suspend(struct device *dev) · 95 unmodified lines
15641561
15651562 static int lpi2c_resume(struct device *dev)
15661563 {
1567− pm_runtime_mark_last_busy(dev);
15681564 pm_runtime_put_autosuspend(dev);
15691565
15701566 return 0;
drivers/i2c/busses/i2c-imx.c+0−3
@@ -1637,7 +1637,6 @@ static int i2c_imx_xfer(struct i2c_adapter *adapter, · 1636 unmodified lines
16371637
16381638 result = i2c_imx_xfer_common(adapter, msgs, num, false);
16391639
1640− pm_runtime_mark_last_busy(i2c_imx->adapter.dev.parent);
16411640 pm_runtime_put_autosuspend(i2c_imx->adapter.dev.parent);
16421641
16431642 return result;
@@ -1822,7 +1821,6 @@ static int i2c_imx_probe(struct platform_device *pdev) · 178 unmodified lines
18221821 if (ret < 0)
18231822 goto clk_notifier_unregister;
18241823
1825− pm_runtime_mark_last_busy(&pdev->dev);
18261824 pm_runtime_put_autosuspend(&pdev->dev);
18271825
18281826 dev_dbg(&i2c_imx->adapter.dev, "claimed irq %d\n", irq);
@@ -1928,7 +1926,6 @@ static int i2c_imx_suspend(struct device *dev) · 99 unmodified lines
19281926
19291927 static int i2c_imx_resume(struct device *dev)
19301928 {
1931− pm_runtime_mark_last_busy(dev);
19321929 pm_runtime_put_autosuspend(dev);
19331930
19341931 return 0;
drivers/i2c/busses/i2c-mv64xxx.c+0−1
@@ -766,7 +766,6 @@ mv64xxx_i2c_xfer_core(struct i2c_adapter *adap, struct i2c_msg msgs[], int num) · 765 unmodified lines
766766 drv_data->num_msgs = 0;
767767 drv_data->msgs = NULL;
768768
769− pm_runtime_mark_last_busy(&adap->dev);
770769 pm_runtime_put_autosuspend(&adap->dev);
771770
772771 return ret;
drivers/i2c/busses/i2c-nvidia-gpu.c+0−1
@@ -216,7 +216,6 @@ exit: · 215 unmodified lines
216216 if (status2 < 0)
217217 dev_err(i2cd->dev, "i2c stop failed %d\n", status2);
218218 }
219− pm_runtime_mark_last_busy(i2cd->dev);
220219 pm_runtime_put_autosuspend(i2cd->dev);
221220 return status;
222221 }
drivers/i2c/busses/i2c-omap.c+0−3
@@ -828,7 +828,6 @@ omap_i2c_xfer_common(struct i2c_adapter *adap, struct i2c_msg msgs[], int num, · 827 unmodified lines
828828 omap->set_mpu_wkup_lat(omap->dev, -1);
829829
830830 out:
831− pm_runtime_mark_last_busy(omap->dev);
832831 pm_runtime_put_autosuspend(omap->dev);
833832 return r;
834833 }
@@ -1510,7 +1509,6 @@ omap_i2c_probe(struct platform_device *pdev) · 675 unmodified lines
15101509 dev_info(omap->dev, "bus %d rev%d.%d at %d kHz\n", adap->nr,
15111510 major, minor, omap->speed);
15121511
1513− pm_runtime_mark_last_busy(omap->dev);
15141512 pm_runtime_put_autosuspend(omap->dev);
15151513
15161514 return 0;
@@ -1605,7 +1603,6 @@ static int omap_i2c_suspend(struct device *dev) · 88 unmodified lines
16051603
16061604 static int omap_i2c_resume(struct device *dev)
16071605 {
1608− pm_runtime_mark_last_busy(dev);
16091606 pm_runtime_put_autosuspend(dev);
16101607
16111608 return 0;
drivers/i2c/busses/i2c-qcom-cci.c+0−2
@@ -450,7 +450,6 @@ static int cci_xfer(struct i2c_adapter *adap, struct i2c_msg msgs[], int num) · 449 unmodified lines
450450 ret = num;
451451
452452 err:
453− pm_runtime_mark_last_busy(cci->dev);
454453 pm_runtime_put_autosuspend(cci->dev);
455454
456455 return ret;
@@ -508,7 +507,6 @@ static int __maybe_unused cci_suspend(struct device *dev) · 51 unmodified lines
508507 static int __maybe_unused cci_resume(struct device *dev)
509508 {
510509 cci_resume_runtime(dev);
511− pm_runtime_mark_last_busy(dev);
512510 pm_request_autosuspend(dev);
513511
514512 return 0;
drivers/i2c/busses/i2c-qcom-geni.c+0−1
@@ -714,7 +714,6 @@ static int geni_i2c_xfer(struct i2c_adapter *adap, · 713 unmodified lines
714714 else
715715 ret = geni_i2c_fifo_xfer(gi2c, msgs, num);
716716
717− pm_runtime_mark_last_busy(gi2c->se.dev);
718717 pm_runtime_put_autosuspend(gi2c->se.dev);
719718 gi2c->cur = NULL;
720719 gi2c->err = 0;
drivers/i2c/busses/i2c-qup.c+0−3
@@ -1139,7 +1139,6 @@ static int qup_i2c_xfer(struct i2c_adapter *adap, · 1138 unmodified lines
11391139 ret = num;
11401140 out:
11411141
1142− pm_runtime_mark_last_busy(qup->dev);
11431142 pm_runtime_put_autosuspend(qup->dev);
11441143
11451144 return ret;
@@ -1624,7 +1623,6 @@ static int qup_i2c_xfer_v2(struct i2c_adapter *adap, · 478 unmodified lines
16241623 if (ret == 0)
16251624 ret = num;
16261625 out:
1627− pm_runtime_mark_last_busy(qup->dev);
16281626 pm_runtime_put_autosuspend(qup->dev);
16291627
16301628 return ret;
@@ -1991,7 +1989,6 @@ static int qup_i2c_suspend(struct device *device) · 360 unmodified lines
19911989 static int qup_i2c_resume(struct device *device)
19921990 {
19931991 qup_i2c_pm_resume_runtime(device);
1994− pm_runtime_mark_last_busy(device);
19951992 pm_request_autosuspend(device);
19961993 return 0;
19971994 }
drivers/i2c/busses/i2c-riic.c+0−2
@@ -206,7 +206,6 @@ static int riic_xfer(struct i2c_adapter *adap, struct i2c_msg msgs[], int num) · 205 unmodified lines
206206 }
207207
208208 out:
209− pm_runtime_mark_last_busy(dev);
210209 pm_runtime_put_autosuspend(dev);
211210
212211 return riic->err ?: num;
@@ -452,7 +451,6 @@ static int riic_init_hw(struct riic_dev *riic) · 239 unmodified lines
452451
453452 riic_clear_set_bit(riic, ICCR1_IICRST, 0, RIIC_ICCR1);
454453
455− pm_runtime_mark_last_busy(dev);
456454 pm_runtime_put_autosuspend(dev);
457455 return 0;
458456 }
drivers/i2c/busses/i2c-rzv2m.c+0−1
@@ -372,7 +372,6 @@ static int rzv2m_i2c_xfer(struct i2c_adapter *adap, · 371 unmodified lines
372372 ret = num;
373373
374374 out:
375− pm_runtime_mark_last_busy(dev);
376375 pm_runtime_put_autosuspend(dev);
377376
378377 return ret;
drivers/i2c/busses/i2c-sprd.c+0−2
@@ -302,7 +302,6 @@ static int sprd_i2c_xfer(struct i2c_adapter *i2c_adap, · 301 unmodified lines
302302 ret = sprd_i2c_handle_msg(i2c_adap, &msgs[im++], 1);
303303
304304 err_msg:
305− pm_runtime_mark_last_busy(i2c_dev->dev);
306305 pm_runtime_put_autosuspend(i2c_dev->dev);
307306
308307 return ret < 0 ? ret : im;
@@ -559,7 +558,6 @@ static int sprd_i2c_probe(struct platform_device *pdev) · 250 unmodified lines
559558 goto err_rpm_put;
560559 }
561560
562− pm_runtime_mark_last_busy(i2c_dev->dev);
563561 pm_runtime_put_autosuspend(i2c_dev->dev);
564562 return 0;
565563
drivers/i2c/busses/i2c-stm32f7.c+0−5
@@ -1761,7 +1761,6 @@ static int stm32f7_i2c_xfer_core(struct i2c_adapter *i2c_adap, · 1760 unmodified lines
17611761 }
17621762
17631763 pm_free:
1764− pm_runtime_mark_last_busy(i2c_dev->dev);
17651764 pm_runtime_put_autosuspend(i2c_dev->dev);
17661765
17671766 return (ret < 0) ? ret : num;
@@ -1870,7 +1869,6 @@ static int stm32f7_i2c_smbus_xfer(struct i2c_adapter *adapter, u16 addr, · 102 unmodified lines
18701869 }
18711870
18721871 pm_free:
1873− pm_runtime_mark_last_busy(dev);
18741872 pm_runtime_put_autosuspend(dev);
18751873 return ret;
18761874 }
@@ -1977,7 +1975,6 @@ pm_free: · 100 unmodified lines
19771975 if (!stm32f7_i2c_is_slave_registered(i2c_dev))
19781976 stm32f7_i2c_enable_wakeup(i2c_dev, false);
19791977
1980− pm_runtime_mark_last_busy(dev);
19811978 pm_runtime_put_autosuspend(dev);
19821979
19831980 return ret;
@@ -2015,7 +2012,6 @@ static int stm32f7_i2c_unreg_slave(struct i2c_client *slave) · 31 unmodified lines
20152012 stm32f7_i2c_enable_wakeup(i2c_dev, false);
20162013 }
20172014
2018− pm_runtime_mark_last_busy(i2c_dev->dev);
20192015 pm_runtime_put_autosuspend(i2c_dev->dev);
20202016
20212017 return 0;
@@ -2328,7 +2324,6 @@ static int stm32f7_i2c_probe(struct platform_device *pdev) · 306 unmodified lines
23282324
23292325 dev_info(i2c_dev->dev, "STM32F7 I2C-%d bus adapter\n", adap->nr);
23302326
2331− pm_runtime_mark_last_busy(i2c_dev->dev);
23322327 pm_runtime_put_autosuspend(i2c_dev->dev);
23332328
23342329 return 0;
drivers/i2c/busses/i2c-usbio.c+1−0
@@ -27,6 +27,7 @@ static const struct acpi_device_id usbio_i2c_acpi_hids[] = { · 26 unmodified lines
2727 { "INTC1008" }, /* MTL */
2828 { "INTC10B3" }, /* ARL */
2929 { "INTC10B6" }, /* LNL */
30+ { "INTC10D2" }, /* MTL-CVF */
3031 { "INTC10E3" }, /* PTL */
3132 { }
3233 };
drivers/i2c/busses/i2c-xiic.c+0−1
@@ -1349,7 +1349,6 @@ static int xiic_xfer(struct i2c_adapter *adap, struct i2c_msg *msgs, int num) · 1348 unmodified lines
13491349 mutex_unlock(&i2c->lock);
13501350
13511351 out:
1352− pm_runtime_mark_last_busy(i2c->dev);
13531352 pm_runtime_put_autosuspend(i2c->dev);
13541353 return err;
13551354 }