mbox series

[v4,0/7] Couple improvements for Tegra clk driver

Message ID 20210312163632.8861-1-digetx@gmail.com
Headers show
Series Couple improvements for Tegra clk driver | expand

Message

Dmitry Osipenko March 12, 2021, 4:36 p.m. UTC
This series fixes couple minor standalone problems of the Tegra clk
driver.

Changelog:

v4: - Added new patch that converts DT bindings to schema.

v3: - Added acks from Thierry Reding that he gave to v2.

    - Added new patch "clk: tegra: Don't allow zero clock rate for PLLs".

v2: - Added these new patches:

      clk: tegra: Halve SCLK rate on Tegra20
      MAINTAINERS: Hand Tegra clk driver to Jon and Thierry

v1: - Collected clk patches into a single series.

Dmitry Osipenko (7):
  clk: tegra30: Use 300MHz for video decoder by default
  clk: tegra: Fix refcounting of gate clocks
  clk: tegra: Ensure that PLLU configuration is applied properly
  clk: tegra: Halve SCLK rate on Tegra20
  MAINTAINERS: Hand Tegra clk driver to Jon and Thierry
  clk: tegra: Don't allow zero clock rate for PLLs
  dt-bindings: clock: tegra: Convert to schema

 CREDITS                                       |   6 +
 .../bindings/clock/nvidia,tegra-car.yaml      | 118 ++++++++++++++++++
 .../bindings/clock/nvidia,tegra114-car.txt    |  63 ----------
 .../bindings/clock/nvidia,tegra124-car.txt    | 107 ----------------
 .../bindings/clock/nvidia,tegra20-car.txt     |  63 ----------
 .../bindings/clock/nvidia,tegra210-car.txt    |  56 ---------
 .../bindings/clock/nvidia,tegra30-car.txt     |  63 ----------
 MAINTAINERS                                   |   4 +-
 drivers/clk/tegra/clk-periph-gate.c           |  72 +++++++----
 drivers/clk/tegra/clk-periph.c                |  11 ++
 drivers/clk/tegra/clk-pll.c                   |  12 +-
 drivers/clk/tegra/clk-tegra20.c               |   6 +-
 drivers/clk/tegra/clk-tegra30.c               |   2 +-
 13 files changed, 195 insertions(+), 388 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/clock/nvidia,tegra-car.yaml
 delete mode 100644 Documentation/devicetree/bindings/clock/nvidia,tegra114-car.txt
 delete mode 100644 Documentation/devicetree/bindings/clock/nvidia,tegra124-car.txt
 delete mode 100644 Documentation/devicetree/bindings/clock/nvidia,tegra20-car.txt
 delete mode 100644 Documentation/devicetree/bindings/clock/nvidia,tegra210-car.txt
 delete mode 100644 Documentation/devicetree/bindings/clock/nvidia,tegra30-car.txt

Comments

Rob Herring March 15, 2021, 2:22 p.m. UTC | #1
On Fri, 12 Mar 2021 19:36:32 +0300, Dmitry Osipenko wrote:
> Convert NVIDIA Tegra clock bindings to schema.

> 

> Signed-off-by: Dmitry Osipenko <digetx@gmail.com>

> ---

>  .../bindings/clock/nvidia,tegra-car.yaml      | 118 ++++++++++++++++++

>  .../bindings/clock/nvidia,tegra114-car.txt    |  63 ----------

>  .../bindings/clock/nvidia,tegra124-car.txt    | 107 ----------------

>  .../bindings/clock/nvidia,tegra20-car.txt     |  63 ----------

>  .../bindings/clock/nvidia,tegra210-car.txt    |  56 ---------

>  .../bindings/clock/nvidia,tegra30-car.txt     |  63 ----------

>  6 files changed, 118 insertions(+), 352 deletions(-)

>  create mode 100644 Documentation/devicetree/bindings/clock/nvidia,tegra-car.yaml

>  delete mode 100644 Documentation/devicetree/bindings/clock/nvidia,tegra114-car.txt

>  delete mode 100644 Documentation/devicetree/bindings/clock/nvidia,tegra124-car.txt

>  delete mode 100644 Documentation/devicetree/bindings/clock/nvidia,tegra20-car.txt

>  delete mode 100644 Documentation/devicetree/bindings/clock/nvidia,tegra210-car.txt

>  delete mode 100644 Documentation/devicetree/bindings/clock/nvidia,tegra30-car.txt

> 


My bot found errors running 'make dt_binding_check' on your patch:

yamllint warnings/errors:

dtschema/dtc warnings/errors:
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/clock/nvidia,tegra-car.example.dt.yaml: usb-controller@c5004000: compatible: 'oneOf' conditional failed, one must be fixed:
	['nvidia,tegra20-ehci', 'usb-ehci'] is too long
	Additional items are not allowed ('usb-ehci' was unexpected)
	'nvidia,tegra20-ehci' is not one of ['allwinner,sun4i-a10-ehci', 'allwinner,sun50i-a64-ehci', 'allwinner,sun50i-h6-ehci', 'allwinner,sun5i-a13-ehci', 'allwinner,sun6i-a31-ehci', 'allwinner,sun7i-a20-ehci', 'allwinner,sun8i-a23-ehci', 'allwinner,sun8i-h3-ehci', 'allwinner,sun8i-r40-ehci', 'allwinner,sun9i-a80-ehci', 'aspeed,ast2400-ehci', 'aspeed,ast2500-ehci', 'aspeed,ast2600-ehci', 'brcm,bcm3384-ehci', 'brcm,bcm63268-ehci', 'brcm,bcm6328-ehci', 'brcm,bcm6358-ehci', 'brcm,bcm6362-ehci', 'brcm,bcm6368-ehci', 'brcm,bcm7125-ehci', 'brcm,bcm7346-ehci', 'brcm,bcm7358-ehci', 'brcm,bcm7360-ehci', 'brcm,bcm7362-ehci', 'brcm,bcm7420-ehci', 'brcm,bcm7425-ehci', 'brcm,bcm7435-ehci', 'ibm,476gtr-ehci', 'nxp,lpc1850-ehci', 'qca,ar7100-ehci', 'snps,hsdk-v1.0-ehci', 'socionext,uniphier-ehci']
	'nvidia,tegra20-ehci' is not one of ['cavium,octeon-6335-ehci', 'ibm,usb-ehci-440epx', 'ibm,usb-ehci-460ex', 'nintendo,hollywood-usb-ehci', 'st,spear600-ehci']
	'nvidia,tegra20-ehci' is not one of ['generic-ehci', 'usb-ehci']
	'generic-ehci' was expected
	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/usb/generic-ehci.yaml
/builds/robherring/linux-dt-review/Documentation/devicetree/bindings/clock/nvidia,tegra-car.example.dt.yaml: usb-controller@c5004000: 'oneOf' conditional failed, one must be fixed:
	'interrupts' is a required property
	'interrupts-extended' is a required property
	From schema: /builds/robherring/linux-dt-review/Documentation/devicetree/bindings/usb/generic-ehci.yaml

See https://patchwork.ozlabs.org/patch/1452220

This check can fail if there are any dependencies. The base for a patch
series is generally the most recent rc1.

If you already ran 'make dt_binding_check' and didn't see the above
error(s), then make sure 'yamllint' is installed and dt-schema is up to
date:

pip3 install dtschema --upgrade

Please check and re-submit.
Rob Herring March 15, 2021, 3:53 p.m. UTC | #2
On Fri, Mar 12, 2021 at 07:36:32PM +0300, Dmitry Osipenko wrote:
> Convert NVIDIA Tegra clock bindings to schema.

> 

> Signed-off-by: Dmitry Osipenko <digetx@gmail.com>

> ---

>  .../bindings/clock/nvidia,tegra-car.yaml      | 118 ++++++++++++++++++

>  .../bindings/clock/nvidia,tegra114-car.txt    |  63 ----------

>  .../bindings/clock/nvidia,tegra124-car.txt    | 107 ----------------


Seems like this one is a bit different and should remain a separate 
binding?

>  .../bindings/clock/nvidia,tegra20-car.txt     |  63 ----------

>  .../bindings/clock/nvidia,tegra210-car.txt    |  56 ---------

>  .../bindings/clock/nvidia,tegra30-car.txt     |  63 ----------

>  6 files changed, 118 insertions(+), 352 deletions(-)

>  create mode 100644 Documentation/devicetree/bindings/clock/nvidia,tegra-car.yaml

>  delete mode 100644 Documentation/devicetree/bindings/clock/nvidia,tegra114-car.txt

>  delete mode 100644 Documentation/devicetree/bindings/clock/nvidia,tegra124-car.txt

>  delete mode 100644 Documentation/devicetree/bindings/clock/nvidia,tegra20-car.txt

>  delete mode 100644 Documentation/devicetree/bindings/clock/nvidia,tegra210-car.txt

>  delete mode 100644 Documentation/devicetree/bindings/clock/nvidia,tegra30-car.txt
Dmitry Osipenko March 15, 2021, 7:07 p.m. UTC | #3
15.03.2021 18:53, Rob Herring пишет:
> On Fri, Mar 12, 2021 at 07:36:32PM +0300, Dmitry Osipenko wrote:

>> Convert NVIDIA Tegra clock bindings to schema.

>>

>> Signed-off-by: Dmitry Osipenko <digetx@gmail.com>

>> ---

>>  .../bindings/clock/nvidia,tegra-car.yaml      | 118 ++++++++++++++++++

>>  .../bindings/clock/nvidia,tegra114-car.txt    |  63 ----------

>>  .../bindings/clock/nvidia,tegra124-car.txt    | 107 ----------------

> 

> Seems like this one is a bit different and should remain a separate 

> binding?


The T124 binding has optional EMC (external memory controller) clocks
that aren't used by other SoCs. The T124 also shouldn't need these
clocks, but that's how the binding happened to be defined historically.
Since the optional properties have no effect on a non-T124 SoCs, I
thought that it should be better to unify all the bindings, rather than
partially duplicate them with out any real benefit.