mbox series

[0/6] arm64: dts: qcom: qrb5165-rb5 audio support

Message ID 20201201153706.13450-1-srinivas.kandagatla@linaro.org
Headers show
Series arm64: dts: qcom: qrb5165-rb5 audio support | expand

Message

Srinivas Kandagatla Dec. 1, 2020, 3:37 p.m. UTC
This patchset adds support to Qualcomm Robotics RB5 Development Kit based on
QRB5165 Robotics SoC. This board has 2 WSA881X smart speakers with onboard
DMIC connected to internal LPASS codec via WSA and VA macros respectively.

All the audio related driver patches are merged via respective maintainer trees
along with bindings. Only LPI pinctrl driver is not merged yet, however the
bindings are acked by Rob, so am guessing that the dt changes should be okay to go!

Thanks,
srini

Srinivas Kandagatla (6):
  arm64: dts: qcom: sm8250: add apr and its services
  arm64: dts: qcom: sm8250: add audio clock controllers
  arm64: dts: qcom: sm8250: add lpass lpi pin controller node
  arm64: dts: qcom: sm8250: add wsa and va codec macros
  arm64: dts: qcom: sm8250: add mi2s pinconfs
  arm64: dts: qcom: qrb5165-rb5: Add Audio support

 arch/arm64/boot/dts/qcom/qrb5165-rb5.dts | 125 +++++++++
 arch/arm64/boot/dts/qcom/sm8250.dtsi     | 327 +++++++++++++++++++++++
 2 files changed, 452 insertions(+)

-- 
2.21.0

Comments

Bjorn Andersson Dec. 1, 2020, 7:25 p.m. UTC | #1
On Tue 01 Dec 09:37 CST 2020, Srinivas Kandagatla wrote:

> Add apr node and its associated services required for audio on RB5.

> 

> Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>

> ---

>  arch/arm64/boot/dts/qcom/sm8250.dtsi | 56 ++++++++++++++++++++++++++++

>  1 file changed, 56 insertions(+)

> 

> diff --git a/arch/arm64/boot/dts/qcom/sm8250.dtsi b/arch/arm64/boot/dts/qcom/sm8250.dtsi

> index 65acd1f381eb..3b4e98b13d36 100644

> --- a/arch/arm64/boot/dts/qcom/sm8250.dtsi

> +++ b/arch/arm64/boot/dts/qcom/sm8250.dtsi

> @@ -11,6 +11,8 @@

>  #include <dt-bindings/mailbox/qcom-ipcc.h>

>  #include <dt-bindings/power/qcom-aoss-qmp.h>

>  #include <dt-bindings/power/qcom-rpmpd.h>

> +#include <dt-bindings/soc/qcom,apr.h>

> +#include <dt-bindings/sound/qcom,q6afe.h>


Please move this line one step down to maintain the alphabetical sort
order.

Thanks,
Bjorn

>  #include <dt-bindings/soc/qcom,rpmh-rsc.h>

>  #include <dt-bindings/thermal/thermal.h>

>  

> @@ -2620,6 +2622,60 @@

>  				label = "lpass";

>  				qcom,remote-pid = <2>;

>  

> +				apr {

> +					compatible = "qcom,apr-v2";

> +					qcom,glink-channels = "apr_audio_svc";

> +					qcom,apr-domain = <APR_DOMAIN_ADSP>;

> +					#address-cells = <1>;

> +					#size-cells = <0>;

> +

> +					apr-service@3 {

> +						reg = <APR_SVC_ADSP_CORE>;

> +						compatible = "qcom,q6core";

> +						qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";

> +					};

> +

> +					q6afe: apr-service@4 {

> +						compatible = "qcom,q6afe";

> +						reg = <APR_SVC_AFE>;

> +						qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";

> +						q6afedai: dais {

> +							compatible = "qcom,q6afe-dais";

> +							#address-cells = <1>;

> +							#size-cells = <0>;

> +							#sound-dai-cells = <1>;

> +						};

> +

> +						q6afecc: cc {

> +							compatible = "qcom,q6afe-clocks";

> +							#clock-cells = <2>;

> +						};

> +					};

> +

> +					q6asm: apr-service@7 {

> +						compatible = "qcom,q6asm";

> +						reg = <APR_SVC_ASM>;

> +						qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";

> +						q6asmdai: dais {

> +							compatible = "qcom,q6asm-dais";

> +							#address-cells = <1>;

> +							#size-cells = <0>;

> +							#sound-dai-cells = <1>;

> +							iommus = <&apps_smmu 0x1801 0x0>;

> +						};

> +					};

> +

> +					q6adm: apr-service@8 {

> +						compatible = "qcom,q6adm";

> +						reg = <APR_SVC_ADM>;

> +						qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";

> +						q6routing: routing {

> +							compatible = "qcom,q6adm-routing";

> +							#sound-dai-cells = <0>;

> +						};

> +					};

> +				};

> +

>  				fastrpc {

>  					compatible = "qcom,fastrpc";

>  					qcom,glink-channels = "fastrpcglink-apps-dsp";

> -- 

> 2.21.0

>
Dmitry Baryshkov Dec. 1, 2020, 7:55 p.m. UTC | #2
On 01/12/2020 18:37, Srinivas Kandagatla wrote:
> This patchset adds support to Qualcomm Robotics RB5 Development Kit based on

> QRB5165 Robotics SoC. This board has 2 WSA881X smart speakers with onboard

> DMIC connected to internal LPASS codec via WSA and VA macros respectively.

> 

> All the audio related driver patches are merged via respective maintainer trees

> along with bindings. Only LPI pinctrl driver is not merged yet, however the

> bindings are acked by Rob, so am guessing that the dt changes should be okay to go!

> 

> Thanks,

> srini

> 

> Srinivas Kandagatla (6):

>    arm64: dts: qcom: sm8250: add apr and its services

>    arm64: dts: qcom: sm8250: add audio clock controllers

>    arm64: dts: qcom: sm8250: add lpass lpi pin controller node

>    arm64: dts: qcom: sm8250: add wsa and va codec macros

>    arm64: dts: qcom: sm8250: add mi2s pinconfs

>    arm64: dts: qcom: qrb5165-rb5: Add Audio support


Tested-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>


> 

>   arch/arm64/boot/dts/qcom/qrb5165-rb5.dts | 125 +++++++++

>   arch/arm64/boot/dts/qcom/sm8250.dtsi     | 327 +++++++++++++++++++++++

>   2 files changed, 452 insertions(+)

> 



-- 
With best wishes
Dmitry
Srinivas Kandagatla Dec. 2, 2020, 3:47 p.m. UTC | #3
Many thanks Bjorn for review,

On 01/12/2020 19:25, Bjorn Andersson wrote:
> On Tue 01 Dec 09:37 CST 2020, Srinivas Kandagatla wrote:

> 

>> Add apr node and its associated services required for audio on RB5.

>>

>> Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>

>> ---

>>   arch/arm64/boot/dts/qcom/sm8250.dtsi | 56 ++++++++++++++++++++++++++++

>>   1 file changed, 56 insertions(+)

>>

>> diff --git a/arch/arm64/boot/dts/qcom/sm8250.dtsi b/arch/arm64/boot/dts/qcom/sm8250.dtsi

>> index 65acd1f381eb..3b4e98b13d36 100644

>> --- a/arch/arm64/boot/dts/qcom/sm8250.dtsi

>> +++ b/arch/arm64/boot/dts/qcom/sm8250.dtsi

>> @@ -11,6 +11,8 @@

>>   #include <dt-bindings/mailbox/qcom-ipcc.h>

>>   #include <dt-bindings/power/qcom-aoss-qmp.h>

>>   #include <dt-bindings/power/qcom-rpmpd.h>

>> +#include <dt-bindings/soc/qcom,apr.h>

>> +#include <dt-bindings/sound/qcom,q6afe.h>

> 

> Please move this line one step down to maintain the alphabetical sort

> order.


I agree with all the comments on this patch as well as other patches, 
will send v2 with those fixed!

Thanks,
srini
> 

> Thanks,

> Bjorn

> 

>>   #include <dt-bindings/soc/qcom,rpmh-rsc.h>

>>   #include <dt-bindings/thermal/thermal.h>

>>   

>> @@ -2620,6 +2622,60 @@

>>   				label = "lpass";

>>   				qcom,remote-pid = <2>;

>>   

>> +				apr {

>> +					compatible = "qcom,apr-v2";

>> +					qcom,glink-channels = "apr_audio_svc";

>> +					qcom,apr-domain = <APR_DOMAIN_ADSP>;

>> +					#address-cells = <1>;

>> +					#size-cells = <0>;

>> +

>> +					apr-service@3 {

>> +						reg = <APR_SVC_ADSP_CORE>;

>> +						compatible = "qcom,q6core";

>> +						qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";

>> +					};

>> +

>> +					q6afe: apr-service@4 {

>> +						compatible = "qcom,q6afe";

>> +						reg = <APR_SVC_AFE>;

>> +						qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";

>> +						q6afedai: dais {

>> +							compatible = "qcom,q6afe-dais";

>> +							#address-cells = <1>;

>> +							#size-cells = <0>;

>> +							#sound-dai-cells = <1>;

>> +						};

>> +

>> +						q6afecc: cc {

>> +							compatible = "qcom,q6afe-clocks";

>> +							#clock-cells = <2>;

>> +						};

>> +					};

>> +

>> +					q6asm: apr-service@7 {

>> +						compatible = "qcom,q6asm";

>> +						reg = <APR_SVC_ASM>;

>> +						qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";

>> +						q6asmdai: dais {

>> +							compatible = "qcom,q6asm-dais";

>> +							#address-cells = <1>;

>> +							#size-cells = <0>;

>> +							#sound-dai-cells = <1>;

>> +							iommus = <&apps_smmu 0x1801 0x0>;

>> +						};

>> +					};

>> +

>> +					q6adm: apr-service@8 {

>> +						compatible = "qcom,q6adm";

>> +						reg = <APR_SVC_ADM>;

>> +						qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";

>> +						q6routing: routing {

>> +							compatible = "qcom,q6adm-routing";

>> +							#sound-dai-cells = <0>;

>> +						};

>> +					};

>> +				};

>> +

>>   				fastrpc {

>>   					compatible = "qcom,fastrpc";

>>   					qcom,glink-channels = "fastrpcglink-apps-dsp";

>> -- 

>> 2.21.0

>>