[PATCH 2/2] dt-bindings: clock: ti,dra7-atl: convert to dt-schema
Bhargav Joshi <[email protected]>
| Newsgroups | org.kernel.vger.linux-clk,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <[email protected]> |
Convert the IP driver portion of the DRA7 ATL (Audio Tracking Logic) binding from the freeform text binding to dt-schema. Together with ti,dra7-atl-clock.yaml this fully replaces dra7-atl.txt. ti,hwmods is marked deprecated as modern DTS uses ti,sysc target-module wrappers and the property is absent from current dra7-l4.dtsi. bws/aws maximum set to 15 per the 16 mux sources in dt-bindings/clock/ti-dra7-atl.h. Signed-off-by: Bhargav Joshi <[email protected]> --- .../devicetree/bindings/clock/ti/dra7-atl.txt | 56 ------------- .../devicetree/bindings/clock/ti/ti,dra7-atl.yaml | 98 ++++++++++++++++++++++ 2 files changed, 98 insertions(+), 56 deletions(-) diff --git a/Documentation/devicetree/bindings/clock/ti/dra7-atl.txt b/Documentation/devicetree/bindings/clock/ti/dra7-atl.txt deleted file mode 100644 index e3c05844ae86..000000000000 --- a/Documentation/devicetree/bindings/clock/ti/dra7-atl.txt +++ /dev/null @@ -1,56 +0,0 @@ -Device Tree Clock bindings for ATL (Audio Tracking Logic) of DRA7 SoC. - -The ATL IP is used to generate clock to be used to synchronize baseband and -audio codec. A single ATL IP provides four ATL clock instances sharing the same -functional clock but can be configured to provide different clocks. -ATL can maintain a clock averages to some desired frequency based on the bws/aws -signals - can compensate the drift between the two ws signal. - -In order to provide the support for ATL and its output clocks (which can be used -internally within the SoC or external components) two sets of bindings is needed: - - -Binding for the IP driver: -This binding is used to configure the IP driver which is going to handle the -configuration of the IP for the ATL clock instances. - -Required properties: -- compatible : shall be "ti,dra7-atl" -- reg : base address for the ATL IP -- ti,provided-clocks : List of phandles to the clocks associated with the ATL -- clocks : link phandles to functional clock of ATL -- clock-names : Shall be set to "fck" -- ti,hwmods : Shall be set to "atl" - -Optional properties: -Configuration of ATL instances: -- atl{0/1/2/3} { - - bws : Baseband word select signal selection - - aws : Audio word select signal selection -}; - -For valid word select signals, see the dt-bindings/clock/ti-dra7-atl.h include -file. - -Examples: - -/* binding for the IP */ -atl: atl@4843c000 { - compatible = "ti,dra7-atl"; - reg = <0x4843c000 0x3ff>; - ti,hwmods = "atl"; - ti,provided-clocks = <&atl_clkin0_ck>, <&atl_clkin1_ck>, - <&atl_clkin2_ck>, <&atl_clkin3_ck>; - clocks = <&atl_gfclk_mux>; - clock-names = "fck"; -}; - -#include <dt-bindings/clock/ti-dra7-atl.h> - -&atl { - - atl2 { - bws = <DRA7_ATL_WS_MCASP2_FSX>; - aws = <DRA7_ATL_WS_MCASP3_FSX>; - }; -}; diff --git a/Documentation/devicetree/bindings/clock/ti/ti,dra7-atl.yaml b/Documentation/devicetree/bindings/clock/ti/ti,dra7-atl.yaml new file mode 100644 index 000000000000..5460432219a5 --- /dev/null +++ b/Documentation/devicetree/bindings/clock/ti/ti,dra7-atl.yaml @@ -0,0 +1,98 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/clock/ti/ti,dra7-atl.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: TI DRA7 ATL (Audio Tracking Logic) Clock Controller + +maintainers: + - Peter Ujfalusi <[email protected]> + +description: + The ATL IP is used to generate clock to be used to synchronize baseband and + audio codec. A single ATL IP provides four ATL clock instances sharing the + same functional clock but can be configured to provide different clocks. + ATL can maintain a clock averages to some desired frequency based on the + bws/aws signals - can compensate the drift between the two ws signal. + + See also Documentation/devicetree/bindings/clock/ti/ti,dra7-atl-clock.yaml + +properties: + compatible: + const: ti,dra7-atl + + reg: + maxItems: 1 + + clocks: + maxItems: 1 + + clock-names: + items: + - const: fck + + ti,provided-clocks: + $ref: /schemas/types.yaml#/definitions/phandle-array + minItems: 4 + maxItems: 4 + description: + List of phandles to the clocks associated with the ATL. + + ti,hwmods: + $ref: /schemas/types.yaml#/definitions/string + description: + Name of the hwmod associated with the ATL. + deprecated: true + const: atl + +patternProperties: + "^atl[0-3]$": + type: object + additionalProperties: false + description: + Configuration of ATL instances. + + properties: + bws: + $ref: /schemas/types.yaml#/definitions/uint32 + description: + Baseband word select signal selection. + maximum: 15 + + aws: + $ref: /schemas/types.yaml#/definitions/uint32 + description: + Audio word select signal selection. + maximum: 15 + + required: + - bws + - aws + +required: + - compatible + - reg + - clocks + - clock-names + - ti,provided-clocks + +additionalProperties: false + +examples: + - | + #include <dt-bindings/clock/ti-dra7-atl.h> + + atl@4843c000 { + compatible = "ti,dra7-atl"; + reg = <0x4843c000 0x3ff>; + clocks = <&atl_gfclk_mux>; + clock-names = "fck"; + ti,provided-clocks = <&atl_clkin0_ck>, <&atl_clkin1_ck>, + <&atl_clkin2_ck>, <&atl_clkin3_ck>; + + atl2 { + bws = <DRA7_ATL_WS_MCASP2_FSX>; + aws = <DRA7_ATL_WS_MCASP3_FSX>; + }; + }; -- 2.55.0