mbox series

[v1,0/6] Add support for DISP/VIDEO/GPU CCs for SC7280

Message ID 1615944142-12171-1-git-send-email-tdas@codeaurora.org
Headers show
Series Add support for DISP/VIDEO/GPU CCs for SC7280 | expand

Message

Taniya Das March 17, 2021, 1:22 a.m. UTC
Add support for display, video & graphics clock controllers on SC7280
along with the bindings for each of the clock controllers.

Taniya Das (6):
  dt-bindings: clock: Add SC7280 DISPCC clock binding
  clk: qcom: Add display clock controller driver for SC7280
  dt-bindings: clock: Add SC7280 GPUCC clock binding
  clk: qcom: Add graphics clock controller driver for SC7280
  dt-bindings: clock: Add SC7280 VideoCC clock binding
  clk: qcom: Add video clock controller driver for SC7280

 .../devicetree/bindings/clock/qcom,gpucc.yaml      |   4 +-
 .../bindings/clock/qcom,sc7280-dispcc.yaml         |  94 +++
 .../devicetree/bindings/clock/qcom,videocc.yaml    |   4 +-
 drivers/clk/qcom/Kconfig                           |  25 +
 drivers/clk/qcom/Makefile                          |   3 +
 drivers/clk/qcom/dispcc-sc7280.c                   | 908 +++++++++++++++++++++
 drivers/clk/qcom/gpucc-sc7280.c                    | 491 +++++++++++
 drivers/clk/qcom/videocc-sc7280.c                  | 372 +++++++++
 include/dt-bindings/clock/qcom,dispcc-sc7280.h     |  55 ++
 include/dt-bindings/clock/qcom,gpucc-sc7280.h      |  35 +
 include/dt-bindings/clock/qcom,videocc-sc7280.h    |  27 +
 11 files changed, 2016 insertions(+), 2 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/clock/qcom,sc7280-dispcc.yaml
 create mode 100644 drivers/clk/qcom/dispcc-sc7280.c
 create mode 100644 drivers/clk/qcom/gpucc-sc7280.c
 create mode 100644 drivers/clk/qcom/videocc-sc7280.c
 create mode 100644 include/dt-bindings/clock/qcom,dispcc-sc7280.h
 create mode 100644 include/dt-bindings/clock/qcom,gpucc-sc7280.h
 create mode 100644 include/dt-bindings/clock/qcom,videocc-sc7280.h

--
Qualcomm INDIA, on behalf of Qualcomm Innovation Center, Inc.is a member
of the Code Aurora Forum, hosted by the  Linux Foundation.

Comments

Rob Herring (Arm) March 26, 2021, 12:11 a.m. UTC | #1
On Wed, Mar 17, 2021 at 06:52:17AM +0530, Taniya Das wrote:
> Add device tree bindings for display clock controller subsystem for

> Qualcomm Technology Inc's SC7280 SoCs.

> 

> Signed-off-by: Taniya Das <tdas@codeaurora.org>

> ---

>  .../bindings/clock/qcom,sc7280-dispcc.yaml         | 94 ++++++++++++++++++++++

>  include/dt-bindings/clock/qcom,dispcc-sc7280.h     | 55 +++++++++++++

>  2 files changed, 149 insertions(+)

>  create mode 100644 Documentation/devicetree/bindings/clock/qcom,sc7280-dispcc.yaml

>  create mode 100644 include/dt-bindings/clock/qcom,dispcc-sc7280.h

> 

> diff --git a/Documentation/devicetree/bindings/clock/qcom,sc7280-dispcc.yaml b/Documentation/devicetree/bindings/clock/qcom,sc7280-dispcc.yaml

> new file mode 100644

> index 0000000..2178666

> --- /dev/null

> +++ b/Documentation/devicetree/bindings/clock/qcom,sc7280-dispcc.yaml

> @@ -0,0 +1,94 @@

> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)

> +%YAML 1.2

> +---

> +$id: http://devicetree.org/schemas/clock/qcom,sc7280-dispcc.yaml#

> +$schema: http://devicetree.org/meta-schemas/core.yaml#

> +

> +title: Qualcomm Display Clock & Reset Controller Binding for SC7280

> +

> +maintainers:

> +  - Taniya Das <tdas@codeaurora.org>

> +

> +description: |

> +  Qualcomm display clock control module which supports the clocks, resets and

> +  power domains on SC7280.

> +

> +  See also dt-bindings/clock/qcom,dispcc-sc7280.h.

> +

> +properties:

> +  compatible:

> +    const: qcom,sc7280-dispcc

> +

> +  clocks:

> +    items:

> +      - description: Board XO source

> +      - description: GPLL0 source from GCC

> +      - description: Byte clock from DSI PHY

> +      - description: Pixel clock from DSI PHY

> +      - description: Link clock from DP PHY

> +      - description: VCO DIV clock from DP PHY

> +      - description: Link clock from EDP PHY

> +      - description: VCO DIV clock from EDP PHY

> +

> +  clock-names:

> +    items:

> +      - const: bi_tcxo

> +      - const: gcc_disp_gpll0_clk

> +      - const: dsi0_phy_pll_out_byteclk

> +      - const: dsi0_phy_pll_out_dsiclk

> +      - const: dp_phy_pll_link_clk

> +      - const: dp_phy_pll_vco_div_clk

> +      - const: edp_phy_pll_link_clk

> +      - const: edp_phy_pll_vco_div_clk

> +

> +  '#clock-cells':

> +    const: 1

> +

> +  '#reset-cells':

> +    const: 1

> +

> +  '#power-domain-cells':

> +    const: 1

> +

> +  reg:

> +    maxItems: 1

> +

> +required:

> +  - compatible

> +  - reg

> +  - clocks

> +  - clock-names

> +  - '#clock-cells'

> +  - '#reset-cells'

> +  - '#power-domain-cells'

> +

> +additionalProperties: false

> +

> +examples:

> +  - |

> +    #include <dt-bindings/clock/qcom,gcc-sc7280.h>

> +    #include <dt-bindings/clock/qcom,rpmh.h>

> +    clock-controller@af00000 {

> +      compatible = "qcom,sc7280-dispcc";

> +      reg = <0x0af00000 0x200000>;

> +      clocks = <&rpmhcc RPMH_CXO_CLK>,

> +               <&gcc GCC_DISP_GPLL0_CLK_SRC>,

> +               <&dsi_phy 0>,

> +               <&dsi_phy 1>,

> +               <&dp_phy 0>,

> +               <&dp_phy 1>,

> +               <&edp_phy 0>,

> +               <&edp_phy 1>;

> +      clock-names = "bi_tcxo",

> +                    "gcc_disp_gpll0_clk",

> +                    "dsi0_phy_pll_out_byteclk",

> +                    "dsi0_phy_pll_out_dsiclk",

> +                    "dp_phy_pll_link_clk",

> +                    "dp_phy_pll_vco_div_clk",

> +                    "edp_phy_pll_link_clk",

> +                    "edp_phy_pll_vco_div_clk";

> +      #clock-cells = <1>;

> +      #reset-cells = <1>;

> +      #power-domain-cells = <1>;

> +    };

> +...

> diff --git a/include/dt-bindings/clock/qcom,dispcc-sc7280.h b/include/dt-bindings/clock/qcom,dispcc-sc7280.h

> new file mode 100644

> index 0000000..2074b30

> --- /dev/null

> +++ b/include/dt-bindings/clock/qcom,dispcc-sc7280.h

> @@ -0,0 +1,55 @@

> +/* SPDX-License-Identifier: GPL-2.0-only */


Dual license?

Rob
Taniya Das April 27, 2021, 9:48 a.m. UTC | #2
Hello Rob,

Thank you for your review.

On 3/26/2021 5:41 AM, Rob Herring wrote:
> On Wed, Mar 17, 2021 at 06:52:17AM +0530, Taniya Das wrote:
>> Add device tree bindings for display clock controller subsystem for
>> Qualcomm Technology Inc's SC7280 SoCs.
>>
>> Signed-off-by: Taniya Das <tdas@codeaurora.org>
>> ---
>>   .../bindings/clock/qcom,sc7280-dispcc.yaml         | 94 ++++++++++++++++++++++
>>   include/dt-bindings/clock/qcom,dispcc-sc7280.h     | 55 +++++++++++++
>>   2 files changed, 149 insertions(+)
>>   create mode 100644 Documentation/devicetree/bindings/clock/qcom,sc7280-dispcc.yaml
>>   create mode 100644 include/dt-bindings/clock/qcom,dispcc-sc7280.h

>> +...
>> diff --git a/include/dt-bindings/clock/qcom,dispcc-sc7280.h b/include/dt-bindings/clock/qcom,dispcc-sc7280.h
>> new file mode 100644
>> index 0000000..2074b30
>> --- /dev/null
>> +++ b/include/dt-bindings/clock/qcom,dispcc-sc7280.h
>> @@ -0,0 +1,55 @@
>> +/* SPDX-License-Identifier: GPL-2.0-only */
> 
> Dual license?
> 
> Rob
> 

As per our legal team we still need to use the GPL-2.0-only license.