Skip to content

Commit

Permalink
Merge tag 'i3c/for-5.19' of git://git.kernel.org/pub/scm/linux/kernel…
Browse files Browse the repository at this point in the history
…/git/i3c/linux

Pull i3c updates from Alexandre Belloni:
 "Only clean ups and no functional change this cycle. A couple of yaml
  conversions of the DT bindings, and a couple of code cleanups"

* tag 'i3c/for-5.19' of git://git.kernel.org/pub/scm/linux/kernel/git/i3c/linux:
  MAINTAINERS: rectify entries for some i3c drivers after dt conversion
  i3c: master: svc: fix returnvar.cocci warning
  i3c/master: simplify the return expression of i3c_hci_remove()
  dt-bindings: i3c: Convert snps,dw-i3c-master to DT schema
  dt-bindings: i3c: Convert cdns,i3c-master to DT schema
  • Loading branch information
Linus Torvalds committed Jun 1, 2022
2 parents fa78526 + 66ed42c commit 55fe921
Show file tree
Hide file tree
Showing 7 changed files with 116 additions and 94 deletions.
43 changes: 0 additions & 43 deletions Documentation/devicetree/bindings/i3c/cdns,i3c-master.txt

This file was deleted.

60 changes: 60 additions & 0 deletions Documentation/devicetree/bindings/i3c/cdns,i3c-master.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
# SPDX-License-Identifier: GPL-2.0
%YAML 1.2
---
$id: http://devicetree.org/schemas/i3c/cdns,i3c-master.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Cadence I3C master block

maintainers:
- Boris Brezillon <bbrezillon@kernel.org>

allOf:
- $ref: i3c.yaml#

properties:
compatible:
const: cdns,i3c-master

reg:
maxItems: 1

clocks:
maxItems: 2

clock-names:
items:
- const: pclk
- const: sysclk

interrupts:
maxItems: 1

required:
- compatible
- reg
- clocks
- clock-names
- interrupts

unevaluatedProperties: false

examples:
- |
i3c-master@d040000 {
compatible = "cdns,i3c-master";
clocks = <&coreclock>, <&i3csysclock>;
clock-names = "pclk", "sysclk";
interrupts = <3 0>;
reg = <0x0d040000 0x1000>;
#address-cells = <3>;
#size-cells = <0>;
i2c-scl-hz = <100000>;
eeprom@57{
compatible = "atmel,24c01";
reg = <0x57 0x0 0x10>;
pagesize = <0x8>;
};
};
...
41 changes: 0 additions & 41 deletions Documentation/devicetree/bindings/i3c/snps,dw-i3c-master.txt

This file was deleted.

52 changes: 52 additions & 0 deletions Documentation/devicetree/bindings/i3c/snps,dw-i3c-master.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# SPDX-License-Identifier: GPL-2.0
%YAML 1.2
---
$id: http://devicetree.org/schemas/i3c/snps,dw-i3c-master.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Synopsys DesignWare I3C master block

maintainers:
- Alexandre Belloni <alexandre.belloni@bootlin.com>

allOf:
- $ref: i3c.yaml#

properties:
compatible:
const: snps,dw-i3c-master-1.00a

reg:
maxItems: 1

clocks:
maxItems: 1

interrupts:
maxItems: 1

required:
- compatible
- reg
- clocks
- interrupts

unevaluatedProperties: false

examples:
- |
i3c-master@2000 {
compatible = "snps,dw-i3c-master-1.00a";
#address-cells = <3>;
#size-cells = <0>;
reg = <0x02000 0x1000>;
interrupts = <0>;
clocks = <&i3cclk>;
eeprom@57{
compatible = "atmel,24c01";
reg = <0x57 0x0 0x10>;
pagesize = <0x8>;
};
};
...
4 changes: 2 additions & 2 deletions MAINTAINERS
Original file line number Diff line number Diff line change
Expand Up @@ -9319,13 +9319,13 @@ F: drivers/i2c/i2c-stub.c
I3C DRIVER FOR CADENCE I3C MASTER IP
M: Przemysław Gaj <pgaj@cadence.com>
S: Maintained
F: Documentation/devicetree/bindings/i3c/cdns,i3c-master.txt
F: Documentation/devicetree/bindings/i3c/cdns,i3c-master.yaml
F: drivers/i3c/master/i3c-master-cdns.c

I3C DRIVER FOR SYNOPSYS DESIGNWARE
M: Vitor Soares <vitor.soares@synopsys.com>
S: Maintained
F: Documentation/devicetree/bindings/i3c/snps,dw-i3c-master.txt
F: Documentation/devicetree/bindings/i3c/snps,dw-i3c-master.yaml
F: drivers/i3c/master/dw*

I3C SUBSYSTEM
Expand Down
7 changes: 1 addition & 6 deletions drivers/i3c/master/mipi-i3c-hci/core.c
Original file line number Diff line number Diff line change
Expand Up @@ -768,13 +768,8 @@ static int i3c_hci_probe(struct platform_device *pdev)
static int i3c_hci_remove(struct platform_device *pdev)
{
struct i3c_hci *hci = platform_get_drvdata(pdev);
int ret;

ret = i3c_master_unregister(&hci->master);
if (ret)
return ret;

return 0;
return i3c_master_unregister(&hci->master);
}

static const __maybe_unused struct of_device_id i3c_hci_of_match[] = {
Expand Down
3 changes: 1 addition & 2 deletions drivers/i3c/master/svc-i3c-master.c
Original file line number Diff line number Diff line change
Expand Up @@ -1597,12 +1597,11 @@ static int __maybe_unused svc_i3c_runtime_suspend(struct device *dev)
static int __maybe_unused svc_i3c_runtime_resume(struct device *dev)
{
struct svc_i3c_master *master = dev_get_drvdata(dev);
int ret = 0;

pinctrl_pm_select_default_state(dev);
svc_i3c_master_prepare_clks(master);

return ret;
return 0;
}

static const struct dev_pm_ops svc_i3c_pm_ops = {
Expand Down

0 comments on commit 55fe921

Please sign in to comment.