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

dt-bindings: clock: Add support for LPASS Audio Clock Controller

Audio Clock controller is a block inside LPASS which controls
2 Glitch free muxes to LPASS codec Macros.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20201026120221.18984-2-srinivas.kandagatla@linaro.org
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Stephen Boyd <sboyd@kernel.org>

authored by

Srinivas Kandagatla and committed by
Stephen Boyd
a6dee2fe 4ee9fe3e

+71
+58
Documentation/devicetree/bindings/clock/qcom,audiocc-sm8250.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,audiocc-sm8250.yaml# 5 + $schema: http://devicetree.org/meta-schemas/core.yaml# 6 + 7 + title: Clock bindings for LPASS Audio Clock Controller on SM8250 SoCs 8 + 9 + maintainers: 10 + - Srinivas Kandagatla <srinivas.kandagatla@linaro.org> 11 + 12 + description: | 13 + The clock consumer should specify the desired clock by having the clock 14 + ID in its "clocks" phandle cell. 15 + See include/dt-bindings/clock/qcom,sm8250-lpass-audiocc.h for the full list 16 + of Audio Clock controller clock IDs. 17 + 18 + properties: 19 + compatible: 20 + const: qcom,sm8250-lpass-audiocc 21 + 22 + reg: 23 + maxItems: 1 24 + 25 + '#clock-cells': 26 + const: 1 27 + 28 + clocks: 29 + items: 30 + - description: LPASS Core voting clock 31 + - description: Glitch Free Mux register clock 32 + 33 + clock-names: 34 + items: 35 + - const: core 36 + - const: bus 37 + 38 + required: 39 + - compatible 40 + - reg 41 + - '#clock-cells' 42 + - clocks 43 + - clock-names 44 + 45 + additionalProperties: false 46 + 47 + examples: 48 + - | 49 + #include <dt-bindings/clock/qcom,sm8250-lpass-audiocc.h> 50 + #include <dt-bindings/sound/qcom,q6afe.h> 51 + clock-controller@3300000 { 52 + #clock-cells = <1>; 53 + compatible = "qcom,sm8250-lpass-audiocc"; 54 + reg = <0x03300000 0x30000>; 55 + clocks = <&q6afecc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>, 56 + <&q6afecc LPASS_CLK_ID_TX_CORE_MCLK LPASS_CLK_ATTRIBUTE_COUPLE_NO>; 57 + clock-names = "core", "bus"; 58 + };
+13
include/dt-bindings/clock/qcom,sm8250-lpass-audiocc.h
··· 1 + /* SPDX-License-Identifier: GPL-2.0 */ 2 + 3 + #ifndef _DT_BINDINGS_CLK_LPASS_AUDIOCC_SM8250_H 4 + #define _DT_BINDINGS_CLK_LPASS_AUDIOCC_SM8250_H 5 + 6 + /* From AudioCC */ 7 + #define LPASS_CDC_WSA_NPL 0 8 + #define LPASS_CDC_WSA_MCLK 1 9 + #define LPASS_CDC_RX_MCLK 2 10 + #define LPASS_CDC_RX_NPL 3 11 + #define LPASS_CDC_RX_MCLK_MCLK2 4 12 + 13 + #endif /* _DT_BINDINGS_CLK_LPASS_AUDIOCC_SM8250_H */