[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <05b9ba59-5361-be93-d4d9-e5b52708f151@codeaurora.org>
Date: Sat, 25 Apr 2020 19:35:16 +0530
From: Ajit Pandey <ajitp@...eaurora.org>
To: Srinivas Kandagatla <srinivas.kandagatla@...aro.org>,
alsa-devel@...a-project.org, broonie@...nel.org,
devicetree@...r.kernel.org, plai@...eaurora.org,
bgoswami@...eaurora.org
Cc: linux-kernel@...r.kernel.org, tiwai@...e.com
Subject: Re: [PATCH 01/11] Documentation: device-tree: sound: Update lpass-cpu
driver binding
On 4/16/2020 1:23 PM, Srinivas Kandagatla wrote:
>
>
> On 11/04/2020 09:02, Ajit Pandey wrote:
>> Done the required cleanups to update lpass-cpu binding with newer
>> yaml formats.
>>
>> Signed-off-by: Ajit Pandey <ajitp@...eaurora.org>
>
>
>> ---
>> .../devicetree/bindings/sound/qcom,lpass-cpu.txt | 158
>> ---------------------
>> .../devicetree/bindings/sound/qcom,lpass-cpu.yaml | 103
>> ++++++++++++++
>> 2 files changed, 103 insertions(+), 158 deletions(-)
>> delete mode 100644
>> Documentation/devicetree/bindings/sound/qcom,lpass-cpu.txt
>> create mode 100644
>> Documentation/devicetree/bindings/sound/qcom,lpass-cpu.yaml
>>
>> diff --git
>> a/Documentation/devicetree/bindings/sound/qcom,lpass-cpu.txt
>> b/Documentation/devicetree/bindings/sound/qcom,lpass-cpu.txt
>> deleted file mode 100644
>> index a49b878..00000000
>> --- a/Documentation/devicetree/bindings/sound/qcom,lpass-cpu.txt
>> +++ /dev/null
>> @@ -1,158 +0,0 @@
>> -* Qualcomm Technologies LPASS CPU DAI binding
>> -
>> -Low-Power Audio SubSystem (LPASS) consist of MI2S interfaces for
>> audio data
>> -transfer on external codec. LPASS cpu driver is a common code to
>> configure
>> -MI2S related CPU dai's across different version of LPASS architecture.
>> -
>> -- compatible:
>> - Usage: required
>> - Value type: <stringlist>
>> - Definition: compatible string corresponds to lpass variants driver
>> - must be "qcom, lpass-cpu-sc7180" for sc7180 lpass
> This patch will not apply on mainline, looks like this was done on top
> of your local repo, please fix this!
>
> Best thing would be rebase patches top of
> https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git/log/?h=for-next
Sure I'll rebase on top of mentioned tip during v2 patch chain submission
>
> Secondly, Split this patch into two,
> 1> converting in to yaml
> 2> adding new changes
> so that it will be easy to see what exactly changed.
>
> thanks,
> srini
>
I've not added any newer properties here just changed it to yaml format only
Thanks & Regards
Ajit
>> - must be "qcom,apq8016-lpass-cpu" for apq8016 lpass
>> -- reg:
>> - Usage: required
>> - Value type: <prop-encoded-array>
>> - Definition: must specify the base address and size of the LPAIF
>> CORE
>> - region of lpass variant.
>> -- reg-names:
>> - Usage: required
>> - Value type: <stringlist>
>> - Definition: must be "lpass-lpaif"
>> -
>> -- iommus:
>> - Usage: required for "qcom, lpass-cpu-sc7180" compatible string
>> - Value type: <prop-encoded-array>
>> - Definition: sid mask for lpaif memory region to apps_smmu
>> - must be <&apps_smmu 0x1020 0>
>> -
>> -- power-domains:
>> - Usage: required for "qcom, lpass-cpu-sc7180" compatible string
>> - Value type: <phandle>
>> - Definition: reference to power-domains
>> - must be <&lpass_hm LPASS_CORE_HM_GDSCR>
>> -
>> -- clocks:
>> - Usage: required
>> - Value type: <phandle>
>> - Definition: reference to the clocks that match clock-names
>> -
>> -- clock-names:
>> - Usage: required
>> - Value type: <stringlist>
>> - Definition: The clocks needed depend on the compatible string:
>> - qcom,lpass-cpu-apq8016:
>> - must be "ahbix-clk", "mi2s-osr-clk", "mi2s-bit-clk0",
>> - mi2s-bit-clk1", "mi2s-bit-clk2", "mi2s-bit-clk3",
>> - "pcnoc-mport-clk", "pcnoc-sway-clk"
>> - qcom, lpass-cpu-sc7180:
>> - must be "noc", "audio-core", "mclk0", "sysnoc_mport",
>> - "pri_ibit", "sec_ibit"
>> -
>> -- #sound-dai-cells
>> - Usage: required
>> - Value type: <u32>
>> - Definition: Must be 1
>> -
>> -- interrupts:
>> - Usage: required
>> - Value type: <prop-encoded-array>
>> - Definition: reference to the interrupts that match interrupt-names
>> -
>> -- interrupt-names:
>> - Usage: required
>> - Value type: <stringlist>
>> - Definition: must be "lpass-irq-lpaif"
>> -
>> -- qcom,adsp:
>> - Usage: optional
>> - Value type: <phandle>
>> - Definition: Phandle for the audio DSP node
>> -
>> -= MI2S DAIs (Digial Audio Interface)
>> -"dais" child node of the lpass node. It represents mi2s dais, each
>> mi2s dai is
>> -subnode of "dais" representing board specific dai setup & required
>> dai clocks.
>> -"dais" node should have following properties.
>> -
>> -- id:
>> - Usage: required for mi2s interface
>> - Value type: <u32>
>> - Definition: Must be dai id defined in lpass bindings like
>> MI2S_PRIMARY
>> -
>> -- qcom,bitclk-name:
>> - Usage: required for mi2s interface
>> - Value type: <stringlist>
>> - Definition: bitclk name corresponds to MI2S of lpass version
>> -
>> -- qcom,mclk-name:
>> - Usage: optional for mi2s interface
>> - Value type: <stringlist>
>> - Definition: external mclk name corresponds to MI2S of lpass
>> version
>> -
>> -- qcom,osrclk-name:
>> - Usage: optional for mi2s interface
>> - Value type: <stringlist>
>> - Definition: osrclk name corresponds to MI2S of lpass version
>> -
>> -- qcom,spkmode-mask:
>> - Usage: optional for mi2s interface
>> - Value type: <u32>
>> - Definition: board specific property to change default
>> spkmode mask
>> - of MI2S dai based on dataline connection on board.
>> -
>> -- qcom,micmode-mask:
>> - Usage: optional for mi2s interface
>> - Value type: <u32>
>> - Definition: board specific property to change default
>> micmode mask
>> - of MI2S dai based on dataline connection on board.
>> -
>> -- qcom,loopback-mask:
>> - Usage: optional for mi2s interface
>> - Value type: <u32>
>> - Definition: board specific property to change default
>> loopback mask
>> - of MI2S dai as per requirement.
>> -
>> -- qcom,wssrc-mask:
>> - Usage: optional for mi2s interface
>> - Value type: <u32>
>> - Definition: board specific property to change default wssrc
>> mask
>> - of MI2S dai based as per requirement.
>> -
>> -Example:
>> -
>> -lpass_cpu: lpass {
>> - compatible = "qcom, lpass-cpu-sc7180";
>> -
>> - reg = <0 0x62F00000 0 0x29000>;
>> - reg-names = "lpass-lpaif";
>> -
>> - iommus = <&apps_smmu 0x1020 0>;
>> -
>> - power-domains = <&lpass_hm LPASS_CORE_HM_GDSCR>;
>> -
>> - clocks = <&gcc GCC_LPASS_CFG_NOC_SWAY_CLK>,
>> - <&lpasscorecc LPASS_AUDIO_CORE_CORE_CLK>,
>> - <&lpasscorecc LPASS_AUDIO_CORE_EXT_MCLK0_CLK>,
>> - <&lpasscorecc LPASS_AUDIO_CORE_SYSNOC_MPORT_CORE_CLK>,
>> - <&lpasscorecc LPASS_AUDIO_CORE_LPAIF_PRI_IBIT_CLK>,
>> - <&lpasscorecc LPASS_AUDIO_CORE_LPAIF_SEC_IBIT_CLK>;
>> -
>> - clock-names = "noc", "audio-core", "mclk0", "sysnoc_mport",
>> - "pri_ibit", "sec_ibit";
>> -
>> - #sound-dai-cells = <1>;
>> -
>> - interrupts = <0 160 IRQ_TYPE_LEVEL_HIGH>;
>> - interrupt-names = "lpass-irq-lpaif";
>> -
>> - prim-mi2s@0 {
>> - id = <MI2S_PRIMARY>;
>> - qcom,bitclk-name = "pri_ibit";
>> - qcom,mclk-name = "mclk0";
>> - };
>> -
>> - sec-mi2s@1 {
>> - id = <MI2S_SECONDARY>;
>> - qcom,bitclk-name = "sec_ibit";
>> - };
>> -};
>> diff --git
>> a/Documentation/devicetree/bindings/sound/qcom,lpass-cpu.yaml
>> b/Documentation/devicetree/bindings/sound/qcom,lpass-cpu.yaml
>> new file mode 100644
>> index 00000000..a87a406
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/sound/qcom,lpass-cpu.yaml
>> @@ -0,0 +1,103 @@
>> +# SPDX-License-Identifier: GPL-2.0-only
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/sound/qcom,lpass-cpu.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: Qualcomm LPASS CPU dai driver bindings
>> +
>> +maintainers:
>> + - Srinivas Kandagatla <srinivas.kandagatla@...aro.org>
>> + - Ajit Pandey <ajitp@...eaurora.org>
>> +
>> +description: |
>> + Qualcomm SOC Low-Power Audio SubSystem (LPASS) that consist of
>> MI2S interface
>> + for audio data transfer on external codecs. LPASS cpu driver is a
>> module to
>> + configure Low-Power Audio Interface(LPAIF) core registers across
>> different
>> + IP versions.
>> +
>> +properties:
>> + compatible:
>> + enum:
>> + - qcom,lpass-cpu
>> + - qcom,apq8016-lpass-cpu
>> +
>> + reg:
>> + items:
>> + - description: LPAIF core registers
>> +
>> + reg-names:
>> + items:
>> + - const: lpass-lpaif
>> +
>> + clocks:
>> + items:
>> + - description: AHBIX core clock for IPQ806X
>> + - description: oscillator clock for MI2S external interfaces
>> + - description: Bit clock for single MI2S dai in IPQ806X
>> + - description: Bit clock for MI2S_PRIMARY dai interface
>> + - description: Bit clock for MI2S_SECONDARY dai interface
>> + - description: Bit clock for MI2S_TERTIARY dai interface
>> + - description: Bit clock for MI2S_QUATERNARY dai interface
>> + - description: NOC MPORT clock of LPASS core
>> + - description: NOC SWAY clock of LPASS core
>> +
>> + clock-names:
>> + items:
>> + - const: ahbix-clk
>> + - const: mi2s-osr-clk
>> + - const: mi2s-bit-clk
>> + - const: mi2s-bit-clk0
>> + - const: mi2s-bit-clk1
>> + - const: mi2s-bit-clk2
>> + - const: mi2s-bit-clk3
>> + - const: pcnoc-mport-clk
>> + - const: pcnoc-sway-clk
>> +
>> + interrupts:
>> + items:
>> + - description: LPAIF DMA buffer interrupt
>> +
>> + interrupt-names:
>> + items:
>> + - const: lpass-irq-lpaif
>> +
>> + qcom,adsp:
>> + maxItems: 1
>> + description: Phandle for the audio DSP node
>> +
>> + '#sound-dai-cells':
>> + const: 1
>> +
>> +required:
>> + - compatible
>> + - reg
>> + - reg-names
>> + - clocks
>> + - clock-names
>> + - interrupts
>> + - interrupt-names
>> + - sound-dai-cells
>> +
>> +optional:
>> + - qcom,adsp
>> +
>> +examples:
>> + lpass@...00000 {
>> + compatible = "qcom,lpass-cpu";
>> + clocks = <&lcc AHBIX_CLK>,
>> + <&lcc MI2S_OSR_CLK>,
>> + <&lcc MI2S_BIT_CLK>;
>> +
>> + clock-names = "ahbix-clk",
>> + "mi2s-osr-clk",
>> + "mi2s-bit-clk";
>> +
>> + interrupts = <0 85 1>;
>> + interrupt-names = "lpass-irq-lpaif";
>> +
>> + reg = <0x28100000 0x10000>;
>> + reg-names = "lpass-lpaif";
>> + #sound-dai-cells = <1>;
>> + qcom,adsp = <&adsp>;
>> +
>>
Powered by blists - more mailing lists