Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

dt-bindings: clock: Add YAML schemas for the QCOM MSS clock bindings

The Modem Subsystem clock provider have a bunch of generic properties
that are needed in a device tree. Add a YAML schemas for those.

Add clock ids for GCC MSS and MSS clocks which are required to bring
the modem out of reset.

Signed-off-by: Taniya Das <tdas@codeaurora.org>
Link: https://lkml.kernel.org/r/1584596131-22741-2-git-send-email-tdas@codeaurora.org
Reviewed-by: Rob Herring <robh@kernel.org>
Tested-by: Sibi Sankar <sibis@codeaurora.org>
Signed-off-by: Stephen Boyd <sboyd@kernel.org>

authored by

Taniya Das and committed by
Stephen Boyd
53624f9b eec15273

+80 -1
+62
Documentation/devicetree/bindings/clock/qcom,sc7180-mss.yaml
··· 1 + # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 + %YAML 1.2 3 + --- 4 + $id: http://devicetree.org/schemas/clock/qcom,sc7180-mss.yaml# 5 + $schema: http://devicetree.org/meta-schemas/core.yaml# 6 + 7 + title: Qualcomm Modem Clock Controller Binding for SC7180 8 + 9 + maintainers: 10 + - Taniya Das <tdas@codeaurora.org> 11 + 12 + description: | 13 + Qualcomm modem clock control module which supports the clocks on SC7180. 14 + 15 + See also: 16 + - dt-bindings/clock/qcom,mss-sc7180.h 17 + 18 + properties: 19 + compatible: 20 + const: qcom,sc7180-mss 21 + 22 + clocks: 23 + items: 24 + - description: gcc_mss_mfab_axi clock from GCC 25 + - description: gcc_mss_nav_axi clock from GCC 26 + - description: gcc_mss_cfg_ahb clock from GCC 27 + 28 + clock-names: 29 + items: 30 + - const: gcc_mss_mfab_axis 31 + - const: gcc_mss_nav_axi 32 + - const: cfg_ahb 33 + 34 + '#clock-cells': 35 + const: 1 36 + 37 + reg: 38 + maxItems: 1 39 + 40 + required: 41 + - compatible 42 + - reg 43 + - clocks 44 + - '#clock-cells' 45 + 46 + additionalProperties: false 47 + 48 + examples: 49 + - | 50 + #include <dt-bindings/clock/qcom,gcc-sc7180.h> 51 + clock-controller@41a8000 { 52 + compatible = "qcom,sc7180-mss"; 53 + reg = <0 0x041a8000 0 0x8000>; 54 + clocks = <&gcc GCC_MSS_MFAB_AXIS_CLK>, 55 + <&gcc GCC_MSS_NAV_AXI_CLK>, 56 + <&gcc GCC_MSS_CFG_AHB_CLK>; 57 + clock-names = "gcc_mss_mfab_axis", 58 + "gcc_mss_nav_axi", 59 + "cfg_ahb"; 60 + #clock-cells = <1>; 61 + }; 62 + ...
+6 -1
include/dt-bindings/clock/qcom,gcc-sc7180.h
··· 1 1 /* SPDX-License-Identifier: GPL-2.0-only */ 2 2 /* 3 - * Copyright (c) 2019, The Linux Foundation. All rights reserved. 3 + * Copyright (c) 2019-2020, The Linux Foundation. All rights reserved. 4 4 */ 5 5 6 6 #ifndef _DT_BINDINGS_CLK_QCOM_GCC_SC7180_H ··· 132 132 #define GCC_VIDEO_GPLL0_DIV_CLK_SRC 122 133 133 #define GCC_VIDEO_THROTTLE_AXI_CLK 123 134 134 #define GCC_VIDEO_XO_CLK 124 135 + #define GCC_MSS_CFG_AHB_CLK 125 136 + #define GCC_MSS_MFAB_AXIS_CLK 126 137 + #define GCC_MSS_NAV_AXI_CLK 127 138 + #define GCC_MSS_Q6_MEMNOC_AXI_CLK 128 139 + #define GCC_MSS_SNOC_AXI_CLK 129 135 140 136 141 /* GCC resets */ 137 142 #define GCC_QUSB2PHY_PRIM_BCR 0
+12
include/dt-bindings/clock/qcom,mss-sc7180.h
··· 1 + /* SPDX-License-Identifier: GPL-2.0-only */ 2 + /* 3 + * Copyright (c) 2020, The Linux Foundation. All rights reserved. 4 + */ 5 + 6 + #ifndef _DT_BINDINGS_CLK_QCOM_MSS_SC7180_H 7 + #define _DT_BINDINGS_CLK_QCOM_MSS_SC7180_H 8 + 9 + #define MSS_AXI_CRYPTO_CLK 0 10 + #define MSS_AXI_NAV_CLK 1 11 + 12 + #endif