Linux Audio

Check our new training course

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