Linux Audio

Check our new training course

Loading...
Note: File does not exist in v4.6.
  1// SPDX-License-Identifier: GPL-2.0-only
  2/*
  3 * Common CPCAP configuration used on Motorola phones
  4 */
  5
  6&mcspi1 {
  7	cpcap: pmic@0 {
  8		compatible = "motorola,cpcap", "st,6556002";
  9		reg = <0>;	/* cs0 */
 10		interrupt-parent = <&gpio1>;
 11		interrupts = <7 IRQ_TYPE_LEVEL_HIGH>;
 12		interrupt-controller;
 13		#interrupt-cells = <2>;
 14		#address-cells = <1>;
 15		#size-cells = <0>;
 16		spi-max-frequency = <3000000>;
 17		spi-cs-high;
 18
 19		cpcap_adc: adc {
 20			compatible = "motorola,mapphone-cpcap-adc";
 21			interrupts-extended = <&cpcap 8 0>;
 22			interrupt-names = "adcdone";
 23			#io-channel-cells = <1>;
 24		};
 25
 26		cpcap_battery: battery {
 27			compatible = "motorola,cpcap-battery";
 28			interrupts-extended = <
 29				&cpcap 6 0 &cpcap 5 0 &cpcap 3 0
 30				&cpcap 20 0 &cpcap 54 0
 31			>;
 32			interrupt-names =
 33				"eol", "lowbph", "lowbpl",
 34				"chrgcurr1", "battdetb";
 35			io-channels = <&cpcap_adc 0 &cpcap_adc 1
 36				       &cpcap_adc 5 &cpcap_adc 6>;
 37			io-channel-names = "battdetb", "battp",
 38					   "chg_isense", "batti";
 39			power-supplies = <&cpcap_charger>;
 40		};
 41
 42		cpcap_charger: charger {
 43			compatible = "motorola,mapphone-cpcap-charger";
 44			interrupts-extended = <
 45				&cpcap 13 0 &cpcap 12 0 &cpcap 29 0 &cpcap 28 0
 46				&cpcap 22 0 &cpcap 20 0 &cpcap 19 0 &cpcap 54 0
 47			>;
 48			interrupt-names =
 49				"chrg_det", "rvrs_chrg", "chrg_se1b", "se0conn",
 50				"rvrs_mode", "chrgcurr1", "vbusvld", "battdetb";
 51			mode-gpios = <&gpio3 29 GPIO_ACTIVE_LOW
 52				      &gpio3 23 GPIO_ACTIVE_LOW>;
 53			io-channels = <&cpcap_adc 0 &cpcap_adc 1
 54				       &cpcap_adc 2 &cpcap_adc 5
 55				       &cpcap_adc 6>;
 56			io-channel-names = "battdetb", "battp",
 57					   "vbus", "chg_isense",
 58					   "batti";
 59		};
 60
 61		cpcap_regulator: regulator {
 62			compatible = "motorola,mapphone-cpcap-regulator";
 63
 64			cpcap_regulators: regulators {
 65			};
 66		};
 67
 68		cpcap_audio: audio-codec {
 69			#sound-dai-cells = <1>;
 70
 71			port@0 {
 72				cpcap_audio_codec0: endpoint {
 73				};
 74			};
 75			port@1 {
 76				cpcap_audio_codec1: endpoint {
 77				};
 78			};
 79		};
 80
 81		cpcap_rtc: rtc {
 82			compatible = "motorola,cpcap-rtc";
 83
 84			interrupt-parent = <&cpcap>;
 85			interrupts = <39 IRQ_TYPE_NONE>, <26 IRQ_TYPE_NONE>;
 86		};
 87
 88		power_button: button {
 89			compatible = "motorola,cpcap-pwrbutton";
 90
 91			interrupts = <23 IRQ_TYPE_NONE>;
 92		};
 93
 94		cpcap_usb2_phy: phy {
 95			compatible = "motorola,mapphone-cpcap-usb-phy";
 96			pinctrl-0 = <&usb_gpio_mux_sel1 &usb_gpio_mux_sel2>;
 97			pinctrl-1 = <&usb_ulpi_pins>;
 98			pinctrl-2 = <&usb_utmi_pins>;
 99			pinctrl-3 = <&uart3_pins>;
100			pinctrl-names = "default", "ulpi", "utmi", "uart";
101			#phy-cells = <0>;
102			interrupts-extended = <
103				&cpcap 15 0 &cpcap 14 0 &cpcap 28 0 &cpcap 19 0
104				&cpcap 18 0 &cpcap 17 0 &cpcap 16 0 &cpcap 49 0
105				&cpcap 48 0
106			>;
107			interrupt-names =
108				"id_ground", "id_float", "se0conn", "vbusvld",
109				"sessvld", "sessend", "se1", "dm", "dp";
110			mode-gpios = <&gpio2 28 GPIO_ACTIVE_HIGH
111				      &gpio1 0 GPIO_ACTIVE_HIGH>;
112			io-channels = <&cpcap_adc 2>, <&cpcap_adc 7>;
113			io-channel-names = "vbus", "id";
114			vusb-supply = <&vusb>;
115		};
116
117		led_red: led-red {
118			compatible = "motorola,cpcap-led-red";
119			vdd-supply = <&sw5>;
120			label = "status-led:red";
121		};
122
123		led_green: led-green {
124			compatible = "motorola,cpcap-led-green";
125			vdd-supply = <&sw5>;
126			label = "status-led:green";
127		};
128
129		led_blue: led-blue {
130			compatible = "motorola,cpcap-led-blue";
131			vdd-supply = <&sw5>;
132			label = "status-led:blue";
133		};
134
135		led_adl: led-adl {
136			compatible = "motorola,cpcap-led-adl";
137			vdd-supply = <&sw5>;
138			label = "button-backlight";
139		};
140
141		led_cp: led-cp {
142			compatible = "motorola,cpcap-led-cp";
143			vdd-supply = <&sw5>;
144			label = "shift-key-light";
145		};
146	};
147};
148
149&cpcap_regulators {
150	sw5: SW5 {
151		regulator-min-microvolt = <5050000>;
152		regulator-max-microvolt = <5050000>;
153		regulator-enable-ramp-delay = <50000>;
154		regulator-boot-on;
155	};
156
157	vcam: VCAM {
158		regulator-min-microvolt = <2900000>;
159		regulator-max-microvolt = <2900000>;
160		regulator-enable-ramp-delay = <1000>;
161	};
162
163	/* Used by DSS */
164	vcsi: VCSI {
165		regulator-min-microvolt = <1800000>;
166		regulator-max-microvolt = <1800000>;
167		regulator-enable-ramp-delay = <1000>;
168		regulator-boot-on;
169	};
170
171	vdac: VDAC {
172		regulator-min-microvolt = <1800000>;
173		regulator-max-microvolt = <1800000>;
174		regulator-enable-ramp-delay = <1000>;
175	};
176
177	vdig: VDIG {
178		regulator-min-microvolt = <1875000>;
179		regulator-max-microvolt = <1875000>;
180		regulator-enable-ramp-delay = <1000>;
181	};
182
183	vfuse: VFUSE {
184		regulator-min-microvolt = <1500000>;
185		regulator-max-microvolt = <3150000>;
186		regulator-enable-ramp-delay = <1000>;
187	};
188
189	vhvio: VHVIO {
190		regulator-min-microvolt = <2775000>;
191		regulator-max-microvolt = <2775000>;
192		regulator-enable-ramp-delay = <1000>;
193		regulator-always-on;
194	};
195
196	/* Used by eMMC at mmc2 */
197	vsdio: VSDIO {
198		regulator-min-microvolt = <2900000>;
199		regulator-max-microvolt = <2900000>;
200		regulator-enable-ramp-delay = <1000>;
201	};
202
203	vpll: VPLL {
204		regulator-min-microvolt = <1200000>;
205		regulator-max-microvolt = <1800000>;
206		regulator-enable-ramp-delay = <100>;
207	};
208
209	vrf1: VRF1 {
210		regulator-min-microvolt = <2775000>;
211		regulator-max-microvolt = <2775000>;
212		regulator-enable-ramp-delay = <1000>;
213	};
214
215	vrf2: VRF2 {
216		regulator-min-microvolt = <2775000>;
217		regulator-max-microvolt = <2775000>;
218		regulator-enable-ramp-delay = <1000>;
219	};
220
221	vrfref: VRFREF {
222		regulator-min-microvolt = <2500000>;
223		regulator-max-microvolt = <2775000>;
224		regulator-enable-ramp-delay = <100>;
225	};
226
227	vwlan1: VWLAN1 {
228		regulator-min-microvolt = <1800000>;
229		regulator-max-microvolt = <1900000>;
230		regulator-enable-ramp-delay = <1000>;
231	};
232
233	/* Used by micro-SDIO at mmc1 */
234	vwlan2: VWLAN2 {
235		regulator-min-microvolt = <3000000>;
236		regulator-max-microvolt = <3000000>;
237		regulator-enable-ramp-delay = <1000>;
238	};
239
240	vsim: VSIM {
241		regulator-min-microvolt = <1800000>;
242		regulator-max-microvolt = <2900000>;
243		regulator-enable-ramp-delay = <1000>;
244	};
245
246	vsimcard: VSIMCARD {
247		regulator-min-microvolt = <1800000>;
248		regulator-max-microvolt = <2900000>;
249		regulator-enable-ramp-delay = <1000>;
250	};
251
252	vvib: VVIB {
253		regulator-min-microvolt = <1300000>;
254		regulator-max-microvolt = <3000000>;
255		regulator-enable-ramp-delay = <500>;
256	};
257
258	vusb: VUSB {
259		regulator-min-microvolt = <3300000>;
260		regulator-max-microvolt = <3300000>;
261		regulator-enable-ramp-delay = <1000>;
262	};
263
264	vaudio: VAUDIO {
265		regulator-min-microvolt = <2775000>;
266		regulator-max-microvolt = <2775000>;
267		regulator-enable-ramp-delay = <1000>;
268		regulator-initial-mode = <0x00>; /* NORMAL */
269	};
270};