xref: /openbmc/linux/arch/arm64/boot/dts/qcom/sdm845-wcd9340.dtsi (revision 1ac731c529cd4d6adbce134754b51ff7d822b145)
134c86173SKrzysztof Kozlowski// SPDX-License-Identifier: GPL-2.0
234c86173SKrzysztof Kozlowski/*
334c86173SKrzysztof Kozlowski * SDM845 SoC device tree source
434c86173SKrzysztof Kozlowski *
534c86173SKrzysztof Kozlowski * Copyright (c) 2018, The Linux Foundation. All rights reserved.
634c86173SKrzysztof Kozlowski */
734c86173SKrzysztof Kozlowski
834c86173SKrzysztof Kozlowski&slim {
934c86173SKrzysztof Kozlowski	status = "okay";
1034c86173SKrzysztof Kozlowski
1134c86173SKrzysztof Kozlowski	slim@1 {
1234c86173SKrzysztof Kozlowski		reg = <1>;
1334c86173SKrzysztof Kozlowski		#address-cells = <2>;
1434c86173SKrzysztof Kozlowski		#size-cells = <0>;
1534c86173SKrzysztof Kozlowski
1634c86173SKrzysztof Kozlowski		wcd9340_ifd: ifd@0,0 {
1734c86173SKrzysztof Kozlowski			compatible = "slim217,250";
1834c86173SKrzysztof Kozlowski			reg = <0 0>;
1934c86173SKrzysztof Kozlowski		};
2034c86173SKrzysztof Kozlowski
2134c86173SKrzysztof Kozlowski		wcd9340: codec@1,0 {
2234c86173SKrzysztof Kozlowski			compatible = "slim217,250";
2334c86173SKrzysztof Kozlowski			reg = <1 0>;
2434c86173SKrzysztof Kozlowski			slim-ifc-dev = <&wcd9340_ifd>;
2534c86173SKrzysztof Kozlowski
2634c86173SKrzysztof Kozlowski			#sound-dai-cells = <1>;
2734c86173SKrzysztof Kozlowski
2834c86173SKrzysztof Kozlowski			interrupts-extended = <&tlmm 54 IRQ_TYPE_LEVEL_HIGH>;
2934c86173SKrzysztof Kozlowski			interrupt-controller;
3034c86173SKrzysztof Kozlowski			#interrupt-cells = <1>;
3134c86173SKrzysztof Kozlowski
32*47a17dfbSKrzysztof Kozlowski			clock-names = "extclk";
33*47a17dfbSKrzysztof Kozlowski			clocks = <&rpmhcc RPMH_LN_BB_CLK2>;
34*47a17dfbSKrzysztof Kozlowski
3534c86173SKrzysztof Kozlowski			#clock-cells = <0>;
3634c86173SKrzysztof Kozlowski			clock-frequency = <9600000>;
3734c86173SKrzysztof Kozlowski			clock-output-names = "mclk";
3871c461a3SKrzysztof Kozlowski
3971c461a3SKrzysztof Kozlowski			pinctrl-0 = <&wcd_intr_default>;
4071c461a3SKrzysztof Kozlowski			pinctrl-names = "default";
4171c461a3SKrzysztof Kozlowski
4234c86173SKrzysztof Kozlowski			qcom,micbias1-microvolt = <1800000>;
4334c86173SKrzysztof Kozlowski			qcom,micbias2-microvolt = <1800000>;
4434c86173SKrzysztof Kozlowski			qcom,micbias3-microvolt = <1800000>;
4534c86173SKrzysztof Kozlowski			qcom,micbias4-microvolt = <1800000>;
4634c86173SKrzysztof Kozlowski
4734c86173SKrzysztof Kozlowski			#address-cells = <1>;
4834c86173SKrzysztof Kozlowski			#size-cells = <1>;
4934c86173SKrzysztof Kozlowski
5034c86173SKrzysztof Kozlowski			wcdgpio: gpio-controller@42 {
5134c86173SKrzysztof Kozlowski				compatible = "qcom,wcd9340-gpio";
5234c86173SKrzysztof Kozlowski				gpio-controller;
5334c86173SKrzysztof Kozlowski				#gpio-cells = <2>;
5434c86173SKrzysztof Kozlowski				reg = <0x42 0x2>;
5534c86173SKrzysztof Kozlowski			};
5634c86173SKrzysztof Kozlowski
5734c86173SKrzysztof Kozlowski			swm: swm@c85 {
5834c86173SKrzysztof Kozlowski				compatible = "qcom,soundwire-v1.3.0";
5934c86173SKrzysztof Kozlowski				reg = <0xc85 0x40>;
6034c86173SKrzysztof Kozlowski				interrupts-extended = <&wcd9340 20>;
6134c86173SKrzysztof Kozlowski
6234c86173SKrzysztof Kozlowski				qcom,dout-ports = <6>;
6334c86173SKrzysztof Kozlowski				qcom,din-ports = <2>;
6434c86173SKrzysztof Kozlowski				qcom,ports-sinterval-low = /bits/ 8  <0x07 0x1f 0x3f 0x7 0x1f 0x3f 0x0f 0x0f>;
6534c86173SKrzysztof Kozlowski				qcom,ports-offset1 = /bits/ 8 <0x01 0x02 0x0c 0x6 0x12 0x0d 0x07 0x0a>;
6634c86173SKrzysztof Kozlowski				qcom,ports-offset2 = /bits/ 8 <0x00 0x00 0x1f 0x00 0x00 0x1f 0x00 0x00>;
6734c86173SKrzysztof Kozlowski
6834c86173SKrzysztof Kozlowski				#sound-dai-cells = <1>;
6934c86173SKrzysztof Kozlowski				clocks = <&wcd9340>;
7034c86173SKrzysztof Kozlowski				clock-names = "iface";
7134c86173SKrzysztof Kozlowski				#address-cells = <2>;
7234c86173SKrzysztof Kozlowski				#size-cells = <0>;
7334c86173SKrzysztof Kozlowski			};
7434c86173SKrzysztof Kozlowski		};
7534c86173SKrzysztof Kozlowski	};
7634c86173SKrzysztof Kozlowski};
7771c461a3SKrzysztof Kozlowski
7871c461a3SKrzysztof Kozlowski&tlmm {
7971c461a3SKrzysztof Kozlowski	wcd_intr_default: wcd-intr-default-state {
8071c461a3SKrzysztof Kozlowski		pins = "gpio54";
8171c461a3SKrzysztof Kozlowski		function = "gpio";
8271c461a3SKrzysztof Kozlowski
8371c461a3SKrzysztof Kozlowski		bias-pull-down;
8471c461a3SKrzysztof Kozlowski		drive-strength = <2>;
8571c461a3SKrzysztof Kozlowski	};
8671c461a3SKrzysztof Kozlowski};
87