Project

General

Profile

EC25 » History » Version 30

laforge, 12/18/2016 12:48 PM

1 4 laforge
{{>toc}}
2
3 24 laforge
h1. Quectel EC25
4
5
The Quectel EC25 is a LTE Modem Module manufactured by the Chinese Company Quectel.  It is available as solder-type version but also as miniPCIe card.
6
7 25 laforge
It is based around the Qualcomm MSM 9x70 and runs an [[Qualcomm_OE_MSM|OE based Linux distribution]] on its internal Cortex-A5 core.  This Linux on Cortex-A5 is what implements the USB device that you see from the host PC!
8 1 laforge
9 3 laforge
Below testing has been made on an EC25-E Revision: EC25EFAR02A03M4G (according to ATI0 and the label on the device)
10
11 2 laforge
h2. serial console
12
13
In the EC25-E miniPCI that was analyzed, the serial console of bootloader and Linux appears to be active on pins 11+12 of the LGA module (DBG_RXD, DBG_TXD). The console is at 1.8V and at 115200bps.
14
15 23 laforge
You can use something like [[mv-uart:|the Osmocom Multi-Voltage UART]] to interface an UART at 1.8V.
16
17 29 laforge
h3. Linux
18
19
this is the UART from the Linux point-of-view:
20
<pre>
21
[    0.343979] msm_serial_hsl_probe: detected port #0 (ttyHSL0)
22
[    0.344034] msm_serial_hsl_probe: Bus scaling is disabled
23
[    0.344162] 78b3000.serial: ttyHSL0 at MMIO 0x78b3000 (irq = 153, base_baud = 460800) is a MSM
24
</pre>
25
26
The boot command line arguments feature @console=ttyHSL0,115200,n8 earlycon=msm_hsl_uart,0x78b3000@
27 30 laforge
28 29 laforge
h3. Not enabled?
29
30
It seems like not all modules have the serial console enabled.  It is yet TBD to figure out what can be done to enable/disable it.
31
32
In terms of pinctrl, an EC25 with enabled serial console shows the following from @/sys/kernel/debug/pinctrl/pinctrl-handles@:
33
<pre>
34
device: 78b3000.serial current state: default
35
  state: default
36
    type: MUX_GROUP controller 1000000.pinctrl group: gpio8 (8) function: blsp_uart5 (16)
37
    type: MUX_GROUP controller 1000000.pinctrl group: gpio9 (9) function: blsp_uart5 (16)
38
    type: CONFIGS_GROUP controller 1000000.pinctrl group gpio8 (8) 00010004 00020009
39
    type: CONFIGS_GROUP controller 1000000.pinctrl group gpio9 (9) 00010004 00020009
40
</pre>
41
42 21 laforge
h2. enabling adb
43
44
h3. via serial console
45
46
access the serial console of the device and enter the following commands
47
48
<pre>
49
echo 0 > /sys/class/android_usb/android0/enable                       
50
echo adb,diag,serial,rmnet > /sys/class/android_usb/android0/functions
51
echo 1 > /sys/class/android_usb/android0/enable
52
</pre>
53
54
at this point the usb device re-enumerates on the PC and has now 6 instead of 5 interfaces, in the following order:
55
56
|_.Interface|_.Type|_.Driver|_.Purpose|
57
|0|adb|-|adbd on USB host|
58
|1|diag|-|diag software on host|
59
|2|serial|qcserial|GPS|
60
|3|serial|qcserial|AT commands|
61
|4|serial|qcserial|AT commands|
62
|5|rmnet|qmi_wwan|libqmi/qmicli|
63
64
See [[Android_USB_Gadget]] for more information on configuration options of the USB gadget.
65
66 22 laforge
*NOTE: If you use stock Linux, the drivers will have fixed assumptions as to which interface is used by what function! You need to patch your kernel to change that assumption, or ensure that the order of interfaces / interface numbers doesn't change*
67
68 5 laforge
h2. processes
69
70
h3. quectel_daemon
71
72
seems to be primarily concerned with voice routing / alsa codec related bits, including playback of ringtones
73
74
h3. atfwd_daemon
75
76 18 laforge
implements Quectel specific extensions to the AT command interpreter (ATCOP) using the QMI framework to register them in the modem processor. See [[AT Commands]].
77 5 laforge
78
h3. Quec_WIFI_CLI
79
80
h3. /usr/bin/time_daemon
81
82 17 laforge
* get time from modem via qmi
83
* get time from RTC
84
85 20 laforge
<pre>
86
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff_pre_init::Base = 0
87
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: ats_rtc_init: Time read from RTC -- year = 70, month = 0,day = 1
88
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: Value read from RTC seconds = 700000
89
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff_init_config: ATS_RTC initialized
90
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff_pre_init::Base = 1
91
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]:  Storage Name: ats_1 
92
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: Opening File: /data/time/ats_1
93
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: time_persistent_memory_opr:Genoff Read operation 
94
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff_pre_init::Base = 2
95
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]:  Storage Name: ats_2 
96
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: Opening File: /data/time/ats_2
97
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: time_persistent_memory_opr:Genoff Read operation 
98
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: Unable to open filefor read
99
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff_post_init:Error in accessing storage
100
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff_pre_init::Base = 3
101
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]:  Storage Name: ats_3 
102
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: Opening File: /data/time/ats_3
103
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: time_persistent_memory_opr:Genoff Read operation 
104
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: Unable to open filefor read
105
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff_post_init:Error in accessing storage
106
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff_pre_init::Base = 4
107
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]:  Storage Name: ats_4 
108
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: Opening File: /data/time/ats_4
109
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: time_persistent_memory_opr:Genoff Read operation 
110
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: Unable to open filefor read
111
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff_post_init:Error in accessing storage
112
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff_pre_init::Base = 5
113
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]:  Storage Name: ats_5 
114
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: Opening File: /data/time/ats_5
115
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: time_persistent_memory_opr:Genoff Read operation 
116
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: Unable to open filefor read
117
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff_post_init:Error in accessing storage
118
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff_pre_init::Base = 6
119
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]:  Storage Name: ats_6 
120
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: Opening File: /data/time/ats_6
121
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: time_persistent_memory_opr:Genoff Read operation 
122
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: Unable to open filefor read
123
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff_post_init:Error in accessing storage
124
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff_pre_init::Base = 7
125
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]:  Storage Name: ats_7 
126
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: Opening File: /data/time/ats_7
127
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: time_persistent_memory_opr:Genoff Read operation 
128
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: Unable to open filefor read
129
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff_post_init:Error in accessing storage
130
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff_pre_init::Base = 8
131
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]:  Storage Name: ats_8 
132
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: Opening File: /data/time/ats_8
133
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: time_persistent_memory_opr:Genoff Read operation 
134
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: Unable to open filefor read
135
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff_post_init:Error in accessing storage
136
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff_pre_init::Base = 9
137
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]:  Storage Name: ats_9 
138
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: Opening File: /data/time/ats_9
139
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: time_persistent_memory_opr:Genoff Read operation 
140
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: Unable to open filefor read
141
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff_post_init:Error in accessing storage
142
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff_pre_init::Base = 10
143
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]:  Storage Name: ats_10 
144
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: Opening File: /data/time/ats_10
145
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: time_persistent_memory_opr:Genoff Read operation 
146
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: Unable to open filefor read
147
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff_post_init:Error in accessing storage
148
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff_pre_init::Base = 11
149
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]:  Storage Name: ats_11 
150
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: Opening File: /data/time/ats_11
151
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: time_persistent_memory_opr:Genoff Read operation 
152
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: Unable to open filefor read
153
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff_post_init:Error in accessing storage
154
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff_init_config: Other bases initilized, exiting genoff_init
155
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff_opr: Base = 1, val = 198101071560715, operation = 1
156
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff get for 1
157
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: rtc_get: Time read from RTC -- year = 70, month = 0,day = 1
158
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: Value read from RTC seconds = 700000
159
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: Value read from RTC seconds = 700000
160
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: Final Time = 315965500246
161
Jan  1 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff_boot_tod_init: Updating system time to sec=315965500, usec=246000
162
Jan  6 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff_modem_qmi_init: Initiallizing QMI 
163
Jan  6 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff_modem_qmi_init: qmi_client_get_service_list returned 0num_services 1
164
Jan  6 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff_modem_qmi_init: Sending initial transaction to read time
165
Jan  6 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: Daemon:genoff_modem_qmi_init:Time received 315965500233
166
Jan  6 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff_opr: Base = 1, val = 315965500233, operation = 0
167
Jan  6 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: rtc_get: Time read from RTC -- year = 70, month = 0,day = 1
168
Jan  6 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: Value read from RTC seconds = 701000
169
Jan  6 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: new time 315965500233 
170
Jan  6 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: delta 315964799233 genoff 315964799233 
171
Jan  6 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff_persistent_update: Writing genoff = 315964799233 to memory
172
Jan  6 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: Opening File: /data/time/ats_1
173
Jan  6 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: time_persistent_memory_opr:Genoff write operation 
174
Jan  6 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: Daemon:genoff_modem_qmi_init: offset 1 updated
175
Jan  6 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff_modem_qmi_init: Updating system time to sec=315965500, usec=233000
176
Jan  6 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]: genoff_modem_qmi_init: Local Genoff update for base = 1 , rc = 0
177
Jan  6 00:11:40 mdm9607-perf user.err time_daemon_mdm:[1081]:  starting with pid (1081)
178
Jan  6 00:11:45 mdm9607-perf authpriv.notice login[1080]: ROOT LOGIN  on '/dev/ttyHSL0'
179
Jan  6 03:26:20 mdm9607-perf user.info quectel_daemon: [Max][CodeFlag] rc = 0
180
</pre>
181
182 5 laforge
h3. /usr/bin/mbimd
183
184
h3. /usr/bin/pdc_daemon
185
186
h3. /usr/bin/diagrebootapp
187
188 9 laforge
an application registering a DIAG command with /dev/diag.  Once that diag command is received, it will write to @/dev/rebooterdev@ which will be picked up by reboot-daemon to actually do the reboot. Weird architecture.
189 5 laforge
190
h3. /sbin/reboot-daemon
191
192 8 laforge
strange minimalistic daemon that does a blocking read on @/dev/rebooterdev@ and issues a system("reboot") as soon as the read returns.
193 7 laforge
194 5 laforge
h3. wlan_services
195
196
h3. /usr/bin/qmi_ip_multiclient
197
198
h3. eMBMs_TunnelingModule
199
200
something related to eMBMS (evolved=LTE Multicast)
201
202
h3. alsaucm_test
203
204
h3. /usr/bin/quectel-remotefs-service
205
206 15 laforge
* uses /dev/smd8
207
208
209 5 laforge
h3. /usr/bin/quectel_psm_aware
210
211
h3. /usr/bin/quectel_monitor_daemon
212
213 14 laforge
* reads from  /sys/devices/4080000.qcom,mss/subsys1/quec_state
214
215
216 5 laforge
h3. /usr/bin/quectel-gps-handle
217
218 13 laforge
* uses /dev/ttyGS0 to print NMEA to host
219
* uses /dev/smd7 to communicate with  BB
220
221
222 5 laforge
h3. /usr/bin/qmi_shutdown_modem
223
224 10 laforge
something low power mode related, uses @qmi_simple_ril_test@ and data in /tmp/qmi-shutdown-modem/
225
226 5 laforge
h3. /usr/bin/netmgrd
227
228
h3. /usr/bin/thermal-engine
229
230 6 laforge
some kind of thermal management for the MSM SoC
231
232 19 laforge
<pre>
233
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: Thermal daemon started
234
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: No target config file, falling back to '/etc/thermal-engine.conf'
235
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: devices_manager_init: Init
236
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: Unable to open /sys/class/kgsl
237
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: Number of gpus :0
238
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: Number of cpus :1
239
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: update_cpu_topology: Cluster info node not found/sys/module/msm_thermal/cluster_info
240
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: tmd_init_cluster_devs: No clusters found
241
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: vdd_rstr_init: Init KTM VDD RSTR enabled: 0
242
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: cpr_band_init: Could not read /sys/module/msm_thermal/cpr_band/curr_cpr_band
243
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: sensors_manager_init: Init
244
Jan  1 00:11:36 mdm9607-perf user.err thermal-engine: bcl_setup: Unexpected node error
245
Jan  1 00:11:36 mdm9607-perf user.err thermal-engine: add_tgt_sensors_set: Error adding bcl
246
Jan  1 00:11:36 mdm9607-perf user.err thermal-engine: sensors_init: Error adding BCL TS
247
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: Loading configuration file /etc/thermal-engine.conf
248
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: Parsing section global
249
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: [PEAK_POWER_MONITOR]
250
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: #algo_type monitor
251
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: sampling 1000 sensor tsens_tz_sensor2
252
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: thresholds 110000
253
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: thresholds_clr 105000
254
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: actions cpu
255
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: action_info 400000
256
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: [MODEM_MONITOR]
257
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: #algo_type monitor
258
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: sampling 1000 sensor tsens_tz_sensor2
259
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: thresholds 100000
260
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: thresholds_clr 95000
261
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: actions modem
262
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: action_info 2
263
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: [PA_MONITOR]
264
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: #algo_type monitor
265
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: sampling 1000 sensor tsens_tz_sensor2
266
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: thresholds 95000
267
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: thresholds_clr 90000
268
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: actions modem
269
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: action_info 1
270
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: [CX_MODEM_MONITOR]
271
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: #algo_type monitor
272
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: sampling 1000 sensor tsens_tz_sensor2
273
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: thresholds 110000 112000 115000
274
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: thresholds_clr 105000 110000 112000
275
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: actions modem_cx modem_cx modem_cx
276
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: action_info 1 2 3
277
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: [VDD_RSTR_MONITOR-TSENS4]
278
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: #algo_type monitor
279
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: sampling 1000 sensor tsens_tz_sensor4
280
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: thresholds 5000
281
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: thresholds_clr 10000
282
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: actions vdd_restriction
283
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: action_info 1
284
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: descending
285
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: [VDD_RSTR_MONITOR-TSENS3]
286
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: #algo_type monitor
287
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: sampling 1000 sensor tsens_tz_sensor3
288
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: thresholds 5000
289
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: thresholds_clr 10000
290
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: actions vdd_restriction
291
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: action_info 1
292
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: descending
293
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: [VDD_RSTR_MONITOR-TSENS2]
294
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: #algo_type monitor
295
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: sampling 1000 sensor tsens_tz_sensor2
296
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: thresholds 5000
297
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: thresholds_clr 10000
298
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: actions vdd_restriction
299
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: action_info 1
300
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: descending
301
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: [VDD_RSTR_MONITOR-TSENS1]
302
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: #algo_type monitor
303
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: sampling 1000 sensor tsens_tz_sensor1
304
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: thresholds 5000
305
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: thresholds_clr 10000
306
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: actions vdd_restriction
307
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: action_info 1
308
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: descending
309
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: [VDD_RSTR_MONITOR-TSENS0]
310
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: #algo_type monitor
311
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: sampling 1000 sensor tsens_tz_sensor0
312
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: thresholds 5000
313
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: thresholds_clr 10000
314
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: actions vdd_restriction
315
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: action_info 1
316
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: descending
317
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: [SS-CPU]
318
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: #algo_type ss
319
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: sampling 65 sensor cpu0 device cpu
320
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: set_point 95000 set_point_clr 90000 time_constant 0
321
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: vdd_restrict_qmi_request: MODEM req level(0) is recorded and waiting for completing QMI registration
322
Jan  1 00:11:36 mdm9607-perf user.info thermal-engine: vdd_restrict_qmi_request: ADSP req level(0) is recorded and waiting for completing QMI registration
323
Jan  1 00:11:37 mdm9607-perf user.info quectel_daemon: [Max][CodeFlag] rc = 0
324
Jan  1 00:11:37 mdm9607-perf user.info thermal-engine: MODEM thermal mitigation available.
325
Jan  1 00:11:37 mdm9607-perf user.info thermal-engine: ACTION: MODEM - Pending request: pa mitigation succeeded for level 0.
326
Jan  1 00:11:37 mdm9607-perf user.info thermal-engine: Mitigation:Modem:0
327
Jan  1 00:11:37 mdm9607-perf user.info thermal-engine: ACTION: MODEM - Pending request: cpuv_restriction_cold mitigation succeeded for level 0.
328
Jan  1 00:11:37 mdm9607-perf user.info thermal-engine: Mitigation:VDD[MODEM-cpuv_restriction_cold]:0
329
Jan  1 00:11:37 mdm9607-perf user.info thermal-engine: ACTION: MODEM - Pending request: cx_vdd_limit mitigation succeeded for level 0.
330
Jan  1 00:11:37 mdm9607-perf user.info thermal-engine: Mitigation:VDD[MODEM-cx_vdd_limit]:0
331
Jan  1 00:11:37 mdm9607-perf user.info thermal-engine: ACTION: MODEM - Pending request: modem mitigation succeeded for level 0.
332
Jan  1 00:11:37 mdm9607-perf user.info thermal-engine: Mitigation:VDD[MODEM-modem]:0
333
</pre>
334
335 5 laforge
h3. /usr/bin/qmuxd
336
337
h3. /usr/bin/quectel_pcm_daemon
338
339
related to alsa soc (asoc) codec configuration, uses /etc/auxpcm.conf
340
341
h3. /usr/bin/qti
342
343 16 laforge
rmnet/tethering related
344
* /dev/dpl_ctrl 
345
* /dev/rmnet_ctrl
346
347
348 5 laforge
h3. QCMAP_ConnectionManager
349
350 11 laforge
related to WLAN/WWAN back-haul switching
351
352 12 laforge
h3. QCMAP_CLI
353
354
Program to configure QCMAP. Cnfiguration can also be done via web?
355
356
<pre>
357
Please select an option to test from the items listed below.
358
359
 1. Display Current Config         49. Get UPnP Status                
360
 2. Delete SNAT Entry              50. Get DLNA Status                
361
 3. Add SNAT Entry                 51. Get MDNS Status                
362
 4. Get SNAT Config                52. Get Station Mode Status        
363
 5. Set Roaming                    53. Set DLNA Media Directory       
364
 6. Get Roaming                    54. Get DLNA Media Directory       
365
 7. Delete DMZ IP                  55. Set MobileAP/WLAN Bootup Config
366
 8. Add DMZ IP                     56. Get MobileAP/WLAN Bootup Config
367
 9. Get DMZ IP                     57. Enable/Disable IPV4            
368
10. Set IPSEC VPN Passthrough      58. Get IPv4 State                 
369
11. Get IPSEC VPN Passthrough      59. Get Data Bitrate               
370
12. Set PPTP VPN Passthrough       60. Set UPnP Notify Interval       
371
13. Get PPTP VPN Passthrough       61. Get UPnP Notify Interval       
372
14. Set L2TP VPN Passthrough       62. Set DLNA Notify Interval       
373
15. Get L2TP VPN Passthrough       63. Get DLNA Notify Interval       
374
16. Set Autoconnect Config         64. Add DHCP Reservation Record    
375
17. Get Autoconnect Config         65. Get DHCP Reservation Records   
376
18. Get WAN status                 66. Edit DHCP Reservation Record   
377
19. Add Firewall Entry             67. Delete DHCP Reservation Record 
378
20. Enable/Disable M-DNS           68. Activate Hostapd Config        
379
21. Enable/Disable UPnP            69. Activate Supplicant Config     
380
22. Enable/Disable DLNA            70. Get Webserver WWAN access flag 
381
23. Display Firewalls              71. Set Webserver WWAN access flag 
382
24. Delete Firewall Entry          72. Enable/Disable ALG             
383
25. Get WWAN Statistics            73. Set SIP server info            
384
26. Reset WWAN Statistics          74. Get SIP server info            
385
27. Get Network Configuration      75. Restore Factory Default Settings(** Will Reboot Device )
386
28. Get NAT Type                   76. Get Connected Device info      
387
29. Set NAT Type                   77. Get Cradle Mode                
388
30. Enable/Disable Mobile AP       78. Set Cradle Mode                
389
31. Enable/Disable WLAN            79. Get Prefix Delegation Config   
390
32. Connect/Disconnect Backhaul    80. Set Prefix Delegation Config   
391
33. Get Mobile AP status           81. Get Prefix Delegation Status   
392
34. Set NAT Timeout                82. Set/Get Gateway URL            
393
35. Get NAT Timeout                83. Enable/Disable DDNS            
394
36. Set WLAN Config                84. Set DDNS Config                
395
37. Get WLAN Config                85. Get DDNS Config                
396
38. Activate WLAN                  86. Enable/Disable TinyProxy       
397
39. Set  LAN Config                87. Get TinyProxy Status           
398
40. Get  LAN Config                88. Set DLNAWhitelisting           
399
41. Activate  LAN                  89. Get DLNAWhitelisting           
400
42. Get WLAN Status                90. Add DLNAWhitelistingIP         
401
43. Enable/Disable IPV6            91. Delete DLNAWhitelistingIP      
402
44. Set Firewall Config            92. Set UPNPPinhole State          
403
45. Get Firewall Config            93. Get UPNPPinhole State          
404
46. Get IPv6 State                 94. Configure Active Backhaul Priority
405
47. Get WWAN Profile               95. Get Backhaul Priority          
406
48. Set WWAN Profile               96. Teardown/Disable and Exit      
407
</pre>
408
409 5 laforge
h3. ipacmdiag
410
411
related to https://source.codeaurora.org/quic/la/platform/vendor/qcom-opensource/data-ipa-cfg-mgr/ ?
412
h3. ipacm_perf
413
414
related to https://source.codeaurora.org/quic/la/platform/vendor/qcom-opensource/data-ipa-cfg-mgr/ ?
415
416
h3. psmd
417
418 26 laforge
* /dev/socket/psm
419
* /data/psm_aware_urc
420
* /data/psm/psm_log.txt
421
* /dev/subsys_modem
422
* MSM_IPC sockets
423 5 laforge
424
h3. /sbin/adbd
425
426
android debug bridge.
427
428
h2. misc outputs
429
430
h3. lsusb output
431 1 laforge
432
<pre>
433
Bus 001 Device 058: ID 2c7c:0125··
434
Device Descriptor:
435
  bLength                18
436
  bDescriptorType         1
437
  bcdUSB               2.00
438
  bDeviceClass            0 (Defined at Interface level)
439
  bDeviceSubClass         0·
440
  bDeviceProtocol         0·
441
  bMaxPacketSize0        64
442
  idVendor           0x2c7c·
443
  idProduct          0x0125·
444
  bcdDevice            3.18
445
  iManufacturer           1 Android
446
  iProduct                2 Android
447
  iSerial                 0·
448
  bNumConfigurations      1
449
  Configuration Descriptor:
450
    bLength                 9
451
    bDescriptorType         2
452
    wTotalLength          209
453
    bNumInterfaces          5
454
    bConfigurationValue     1
455
    iConfiguration          0·
456
    bmAttributes         0xa0
457
      (Bus Powered)
458
      Remote Wakeup
459
    MaxPower              500mA
460
    Interface Descriptor:
461
      bLength                 9
462
      bDescriptorType         4
463
      bInterfaceNumber        0
464
      bAlternateSetting       0
465
      bNumEndpoints           2
466
      bInterfaceClass       255 Vendor Specific Class
467
      bInterfaceSubClass    255 Vendor Specific Subclass
468
      bInterfaceProtocol    255 Vendor Specific Protocol
469
      iInterface              0·
470
      Endpoint Descriptor:
471
        bLength                 7
472
        bDescriptorType         5
473
        bEndpointAddress     0x81  EP 1 IN
474
        bmAttributes            2
475
          Transfer Type            Bulk
476
          Synch Type               None
477
          Usage Type               Data
478
        wMaxPacketSize     0x0200  1x 512 bytes
479
        bInterval               0
480
      Endpoint Descriptor:
481
        bLength                 7
482
        bDescriptorType         5
483
        bEndpointAddress     0x01  EP 1 OUT
484
        bmAttributes            2
485
          Transfer Type            Bulk
486
          Synch Type               None
487
          Usage Type               Data
488
        wMaxPacketSize     0x0200  1x 512 bytes
489
        bInterval               0
490
    Interface Descriptor:
491
      bLength                 9
492
      bDescriptorType         4
493
      bInterfaceNumber        1
494
      bAlternateSetting       0
495
      bNumEndpoints           3
496
      bInterfaceClass       255 Vendor Specific Class
497
      bInterfaceSubClass      0·
498
      bInterfaceProtocol      0·
499
      iInterface              0·
500
      ** UNRECOGNIZED:  05 24 00 10 01
501
      ** UNRECOGNIZED:  05 24 01 00 00
502
      ** UNRECOGNIZED:  04 24 02 02
503
      ** UNRECOGNIZED:  05 24 06 00 00
504
      Endpoint Descriptor:
505
        bLength                 7
506
        bDescriptorType         5
507
        bEndpointAddress     0x83  EP 3 IN
508
        bmAttributes            3
509
          Transfer Type            Interrupt
510
          Synch Type               None
511
          Usage Type               Data
512
        wMaxPacketSize     0x000a  1x 10 bytes
513
        bInterval               9
514
      Endpoint Descriptor:
515
        bLength                 7
516
        bDescriptorType         5
517
        bEndpointAddress     0x82  EP 2 IN
518
        bmAttributes            2
519
          Transfer Type            Bulk
520
          Synch Type               None
521
          Usage Type               Data
522
        wMaxPacketSize     0x0200  1x 512 bytes
523
        bInterval               0
524
      Endpoint Descriptor:
525
        bLength                 7
526
        bDescriptorType         5
527
        bEndpointAddress     0x02  EP 2 OUT
528
        bmAttributes            2
529
          Transfer Type            Bulk
530
          Synch Type               None
531
          Usage Type               Data
532
        wMaxPacketSize     0x0200  1x 512 bytes
533
        bInterval               0
534
    Interface Descriptor:
535
      bLength                 9
536
      bDescriptorType         4
537
      bInterfaceNumber        2
538
      bAlternateSetting       0
539
      bNumEndpoints           3
540
      bInterfaceClass       255 Vendor Specific Class
541
      bInterfaceSubClass      0·
542
      bInterfaceProtocol      0·
543
      iInterface              0·
544
      ** UNRECOGNIZED:  05 24 00 10 01
545
      ** UNRECOGNIZED:  05 24 01 00 00
546
      ** UNRECOGNIZED:  04 24 02 02
547
      ** UNRECOGNIZED:  05 24 06 00 00
548
      Endpoint Descriptor:
549
        bLength                 7
550
        bDescriptorType         5
551
        bEndpointAddress     0x85  EP 5 IN
552
        bmAttributes            3
553
          Transfer Type            Interrupt
554
          Synch Type               None
555
          Usage Type               Data
556
        wMaxPacketSize     0x000a  1x 10 bytes
557
        bInterval               9
558
      Endpoint Descriptor:
559
        bLength                 7
560
        bDescriptorType         5
561
        bEndpointAddress     0x84  EP 4 IN
562
        bmAttributes            2
563
          Transfer Type            Bulk
564
          Synch Type               None
565
          Usage Type               Data
566
        wMaxPacketSize     0x0200  1x 512 bytes
567
        bInterval               0
568
      Endpoint Descriptor:
569
        bLength                 7
570
        bDescriptorType         5
571
        bEndpointAddress     0x03  EP 3 OUT
572
        bmAttributes            2
573
          Transfer Type            Bulk
574
          Synch Type               None
575
          Usage Type               Data
576
        wMaxPacketSize     0x0200  1x 512 bytes
577
        bInterval               0
578
    Interface Descriptor:
579
      bLength                 9
580
      bDescriptorType         4
581
      bInterfaceNumber        3
582
      bAlternateSetting       0
583
      bNumEndpoints           3
584
      bInterfaceClass       255 Vendor Specific Class
585
      bInterfaceSubClass      0·
586
      bInterfaceProtocol      0·
587
      iInterface              0·
588
      ** UNRECOGNIZED:  05 24 00 10 01
589
      ** UNRECOGNIZED:  05 24 01 00 00
590
      ** UNRECOGNIZED:  04 24 02 02
591
      ** UNRECOGNIZED:  05 24 06 00 00
592
      Endpoint Descriptor:
593
        bLength                 7
594
        bDescriptorType         5
595
        bEndpointAddress     0x87  EP 7 IN
596
        bmAttributes            3
597
          Transfer Type            Interrupt
598
          Synch Type               None
599
          Usage Type               Data
600
        wMaxPacketSize     0x000a  1x 10 bytes
601
        bInterval               9
602
      Endpoint Descriptor:
603
        bLength                 7
604
        bDescriptorType         5
605
        bEndpointAddress     0x86  EP 6 IN
606
        bmAttributes            2
607
          Transfer Type            Bulk
608
          Synch Type               None
609
          Usage Type               Data
610
        wMaxPacketSize     0x0200  1x 512 bytes
611
        bInterval               0
612
      Endpoint Descriptor:
613
        bLength                 7
614
        bDescriptorType         5
615
        bEndpointAddress     0x04  EP 4 OUT
616
        bmAttributes            2
617
          Transfer Type            Bulk
618
          Synch Type               None
619
          Usage Type               Data
620
        wMaxPacketSize     0x0200  1x 512 bytes
621
        bInterval               0
622
    Interface Descriptor:
623
      bLength                 9
624
      bDescriptorType         4
625
      bInterfaceNumber        4
626
      bAlternateSetting       0
627
      bNumEndpoints           3
628
      bInterfaceClass       255 Vendor Specific Class
629
      bInterfaceSubClass    255 Vendor Specific Subclass
630
      bInterfaceProtocol    255 Vendor Specific Protocol
631
      iInterface              0·
632
      Endpoint Descriptor:
633
        bLength                 7
634
        bDescriptorType         5
635
        bEndpointAddress     0x89  EP 9 IN
636
        bmAttributes            3
637
          Transfer Type            Interrupt
638
          Synch Type               None
639
          Usage Type               Data
640
        wMaxPacketSize     0x0008  1x 8 bytes
641
        bInterval               9
642
      Endpoint Descriptor:
643
        bLength                 7
644
        bDescriptorType         5
645
        bEndpointAddress     0x88  EP 8 IN
646
        bmAttributes            2
647
          Transfer Type            Bulk
648
          Synch Type               None
649
          Usage Type               Data
650
        wMaxPacketSize     0x0200  1x 512 bytes
651
        bInterval               0
652
      Endpoint Descriptor:
653
        bLength                 7
654
        bDescriptorType         5
655
        bEndpointAddress     0x05  EP 5 OUT
656
        bmAttributes            2
657
          Transfer Type            Bulk
658
          Synch Type               None
659
          Usage Type               Data
660
        wMaxPacketSize     0x0200  1x 512 bytes
661
        bInterval               0
662
Device Qualifier (for other device speed):
663
  bLength                10
664
  bDescriptorType         6
665
  bcdUSB               2.00
666
  bDeviceClass            0 (Defined at Interface level)
667
  bDeviceSubClass         0·
668
  bDeviceProtocol         0·
669
  bMaxPacketSize0        64
670
  bNumConfigurations      1
671
Device Status:     0x0000
672
  (Bus Powered)
673 4 laforge
</pre>
674
675
h3. ps
676
677
<pre>
678
root@mdm9607-perf:/firmware/image# ps axuw
679
PID   USER     TIME   COMMAND
680
    1 root       0:06 init [5]
681
    2 root       0:00 [kthreadd]
682
    3 root       0:02 [ksoftirqd/0]
683
    4 root       0:04 [kworker/0:0]
684
    5 root       0:00 [kworker/0:0H]
685
    6 root       0:00 [kworker/u2:0]
686
    7 root       0:00 [rcu_preempt]
687
    8 root       0:00 [rcu_sched]
688
    9 root       0:00 [rcu_bh]
689
   10 root       0:00 [khelper]
690
   11 root       0:00 [netns]
691
   12 root       0:00 [perf]
692
   13 root       0:00 [msm_watchdog]
693
   14 root       0:00 [smd_channel_clo]
694
   15 root       0:00 [smsm_cb_wq]
695
   17 root       0:00 [deferwq]
696
   19 root       0:00 [irq/52-cpr]
697
   20 root       0:00 [mpm]
698
   29 root       0:00 [writeback]
699
   30 root       0:00 [crypto]
700
   31 root       0:00 [bioset]
701
   32 root       0:00 [kblockd]
702
   33 root       0:00 [system]
703
   34 root       0:00 [devfreq_wq]
704
   35 root       0:00 [cfg80211]
705
   36 root       0:00 [power_off_alarm]
706
   37 root       0:00 [kswapd0]
707
   38 root       0:00 [fsnotify_mark]
708
   46 root       0:00 [glink_ssr_wq]
709
   47 root       0:00 [apr_driver]
710
   48 root       0:00 [k_hsuart]
711
   49 root       0:00 [msm_serial_hs_0]
712
   50 root       0:00 [msm_serial_hs_0]
713
   51 root       0:00 [diag_real_time_]
714
   52 root       0:00 [diag_wq]
715
   53 root       0:00 [DIAG_USB_diag]
716
   54 root       0:00 [diag_cntl_wq]
717
   55 root       0:00 [diag_dci_wq]
718
   56 root       0:00 [DIAG_SMD_MODEM_]
719
   57 root       0:00 [DIAG_SMD_MODEM_]
720
   58 root       0:00 [DIAG_SMD_MODEM_]
721
   59 root       0:00 [DIAG_SMD_MODEM_]
722
   60 root       0:00 [DIAG_SMD_MODEM_]
723
   61 root       0:00 [DIAG_SMD_LPASS_]
724
   62 root       0:00 [DIAG_SMD_LPASS_]
725
   63 root       0:00 [DIAG_SMD_LPASS_]
726
   64 root       0:00 [DIAG_SMD_LPASS_]
727
   65 root       0:00 [DIAG_SMD_LPASS_]
728
   66 root       0:00 [DIAG_SMD_WCNSS_]
729
   67 root       0:00 [DIAG_SMD_WCNSS_]
730
   68 root       0:00 [DIAG_SMD_WCNSS_]
731
   69 root       0:00 [DIAG_SMD_WCNSS_]
732
   70 root       0:00 [DIAG_SMD_WCNSS_]
733
   71 root       0:00 [DIAG_SMD_SENSOR]
734
   72 root       0:00 [DIAG_SMD_SENSOR]
735
   73 root       0:00 [DIAG_SMD_SENSOR]
736
   74 root       0:00 [DIAG_SMD_SENSOR]
737
   75 root       0:00 [DIAG_SMD_SENSOR]
738
   76 root       0:00 [DIAG_SOCKMODEM_]
739
   77 root       0:00 [DIAG_SOCKMODEM_]
740
   78 root       0:00 [DIAG_SOCKMODEM_]
741
   79 root       0:00 [DIAG_SOCKMODEM_]
742
   80 root       0:00 [DIAG_SOCKMODEM_]
743
   81 root       0:00 [DIAG_SOCKLPASS_]
744
   82 root       0:00 [DIAG_SOCKLPASS_]
745
   83 root       0:00 [DIAG_SOCKLPASS_]
746
   84 root       0:00 [DIAG_SOCKLPASS_]
747
   85 root       0:00 [DIAG_SOCKLPASS_]
748
   86 root       0:00 [DIAG_SOCKWCNSS_]
749
   87 root       0:00 [DIAG_SOCKWCNSS_]
750
   88 root       0:00 [DIAG_SOCKWCNSS_]
751
   89 root       0:00 [DIAG_SOCKWCNSS_]
752
   90 root       0:00 [DIAG_SOCKWCNSS_]
753
   91 root       0:00 [DIAG_SOCKSENSOR]
754
   92 root       0:00 [DIAG_SOCKSENSOR]
755
   93 root       0:00 [DIAG_SOCKSENSOR]
756
   94 root       0:00 [DIAG_SOCKSENSOR]
757
   95 root       0:00 [DIAG_SOCKSENSOR]
758
   96 root       0:00 [DIAG_CNTL_SOCKE]
759
   97 root       0:00 [k_gserial]
760
   98 root       0:00 [k_ipa_usb]
761
   99 root       0:00 [uether]
762
  100 root       0:00 [k_gbridge]
763
  101 root       0:00 [therm_core:noti]
764
  102 root       0:00 [therm_core:noti]
765
  103 root       0:00 [therm_core:noti]
766
  104 root       0:00 [therm_core:noti]
767
  105 root       0:00 [therm_core:noti]
768
  106 root       0:00 [irq/216-tsens_i]
769
  107 root       0:00 [therm_core:noti]
770
  108 root       0:00 [therm_core:noti]
771
  109 root       0:00 [cfinteractive]
772
  110 root       0:00 [irq/170-7824900]
773
  111 root       0:00 [irq/155-mmc0]
774
  112 root       0:03 [irq/253-7864900]
775
  113 root       0:00 [irq/157-mmc1]
776
  114 root       0:00 [usb_bam_wq]
777
  115 root       0:00 [qsmd]
778
  116 root       0:00 [ipv6_addrconf]
779
  117 root       0:00 [msm_ipc_router]
780
  118 root       0:00 [irq/441-modem]
781
  119 root       0:00 [sysmon_wq]
782
  120 root       0:00 [qmi_svc_event_w]
783
  122 root       0:00 [bam_dmux_rx]
784
  123 root       0:00 [bam_dmux_tx]
785
  124 root       0:00 [ubi_bgt0d]
786
  125 root       0:00 [ubi_bgt1d]
787
  126 root       0:00 [k_bam_data]
788
  127 root       0:00 [f_mtp]
789
  129 root       0:00 [msm_thermal:fre]
790
  130 root       0:00 [msm_thermal:the]
791
  131 root       0:00 [ubifs_bgt0_0]
792
  132 root       0:00 [IPCRTR]
793
  133 root       0:00 [modem_IPCRTR]
794
  186 root       0:00 [ubifs_bgt0_1]
795
  195 root       0:00 /sbin/adbd
796
  216 root       0:00 psmd
797
  324 root       0:00 ipacm_perf
798
  333 root       0:00 ipacmdiag
799
  343 root       0:00 QCMAP_ConnectionManager /etc/mobileap_cfg.xml d
800
  347 root       0:00 /usr/bin/qti
801
  358 root       0:00 /sbin/tftp_server
802
  359 root       0:00 /sbin/fs-scrub-daemon
803
  377 root       0:00 /usr/bin/quectel_pcm_daemon
804
  397 root       0:00 [sh]
805
  435 root       0:00 /sbin/syslogd -n -C64
806
  444 root       0:00 [k_gsmd]
807
  445 root       0:00 [k_gbam]
808
  459 root       0:00 /usr/bin/qmuxd
809
  463 root       0:00 /usr/bin/thermal-engine
810
  468 root       0:00 /usr/bin/netmgrd
811
  497 root       0:00 /usr/bin/qmi_shutdown_modem
812
  504 root       0:01 /usr/bin/quectel-gps-handle
813
  518 root       0:00 /usr/bin/quectel_monitor_daemon
814
  537 root       1:30 /usr/bin/quectel_daemon
815
  544 root       0:00 /usr/bin/quectel_psm_aware
816
  563 root       0:00 /usr/bin/quectel-remotefs-service
817
  672 root       0:20 alsaucm_test
818
  811 www-data   0:02 /usr/sbin/lighttpd -f /etc/lighttpd.conf
819
  818 nobody     0:00 dnsmasq -i bridge0 -I lo -z --dhcp-range=bridge0,192.168.
820
  824 root       0:00 eMBMs_TunnelingModule
821
  828 root       0:00 /usr/bin/qmi_ip_multiclient /etc/qmi_ip_cfg.xml
822
  887 root       0:00 wlan_services
823
 1004 messageb   0:00 /usr/bin/dbus-daemon --system
824
 1022 root       0:00 /sbin/reboot-daemon
825
 1024 diag       0:02 /usr/bin/diagrebootapp
826
 1029 root       1:24 /usr/bin/atfwd_daemon
827
 1066 root       0:00 /usr/bin/pdc_daemon
828
 1079 root       0:00 /usr/bin/mbimd
829
 1080 root       0:00 -sh
830
 1081 root       0:00 /usr/bin/time_daemon
831
 1177 root       0:00 [kworker/0:1]
832
 1202 root       0:00 [kworker/u2:1]
833
 1205 root       0:09 [kworker/u2:2]
834
 1206 root       0:02 [kworker/u2:3]
835
 1213 root       0:00 [kworker/u2:4]
836
 1233 root       0:00 ps axuw
837 1 laforge
</pre>
838 27 laforge
839
h2. GPIOs
840
841
<pre>
842
GPIOs 0-79, platform/1000000.pinctrl, 1000000.pinctrl:
843
 gpio0   : out 1 2mA pull up
844
 gpio1   : in  1 2mA pull down
845
 gpio2   : in  1 2mA pull down
846
 gpio3   : out 1 2mA pull up
847
 gpio4   : out 0 2mA no pull
848
 gpio5   : in  0 2mA pull up
849
 gpio6   : in  0 2mA pull down
850
 gpio7   : in  0 2mA pull down
851
 gpio8   : out 2 2mA pull down
852
 gpio9   : in  2 2mA pull down
853
 gpio10  : in  0 2mA pull down
854
 gpio11  : in  0 2mA pull up
855
 gpio12  : in  0 2mA pull down
856
 gpio13  : in  0 2mA pull down
857
 gpio14  : in  0 2mA pull down
858
 gpio15  : in  0 2mA pull down
859
 gpio16  : in  0 2mA no pull
860
 gpio17  : in  0 2mA pull down
861
 gpio18  : in  3 16mA pull up
862
 gpio19  : in  3 16mA pull up
863
 gpio20  : out 3 8mA no pull
864
 gpio21  : in  3 8mA no pull
865
 gpio22  : out 3 8mA no pull
866
 gpio23  : out 3 8mA no pull
867
 gpio24  : out 0 2mA no pull
868
 gpio25  : in  0 2mA pull down
869
 gpio26  : in  0 2mA pull up
870
 gpio27  : in  0 2mA pull down
871
 gpio28  : in  0 2mA pull down
872
 gpio29  : in  0 2mA pull down
873
 gpio30  : in  0 2mA pull down
874
 gpio31  : out 1 2mA no pull
875
 gpio32  : out 1 2mA no pull
876
 gpio33  : out 1 2mA no pull
877
 gpio34  : in  0 2mA pull down
878
 gpio35  : in  0 2mA pull down
879
 gpio36  : out 1 2mA pull up
880
 gpio37  : in  1 2mA pull up
881
 gpio38  : in  0 2mA pull down
882
 gpio39  : in  0 2mA pull down
883
 gpio40  : in  0 2mA pull down
884
 gpio41  : in  0 2mA pull down
885
 gpio42  : out 0 2mA pull down
886
 gpio43  : in  0 2mA pull down
887
 gpio44  : in  0 2mA pull down
888
 gpio45  : in  0 2mA pull down
889
 gpio46  : in  0 2mA pull down
890
 gpio47  : in  0 2mA pull down
891
 gpio48  : in  0 2mA pull down
892
 gpio49  : in  0 2mA pull down
893
 gpio50  : in  0 2mA pull down
894
 gpio51  : in  0 2mA pull down
895
 gpio52  : in  0 2mA no pull
896
 gpio53  : out 0 2mA no pull
897
 gpio54  : in  0 2mA pull down
898
 gpio55  : out 0 2mA no pull
899
 gpio56  : in  0 2mA no pull
900
 gpio57  : out 0 2mA no pull
901
 gpio58  : out 0 2mA no pull
902
 gpio59  : out 0 2mA no pull
903
 gpio60  : in  0 2mA pull down
904
 gpio61  : in  0 2mA pull down
905
 gpio62  : in  0 2mA pull down
906
 gpio63  : in  0 2mA pull down
907
 gpio64  : in  0 2mA pull down
908
 gpio65  : in  0 2mA pull down
909
 gpio66  : in  0 2mA pull down
910
 gpio67  : in  0 2mA pull down
911
 gpio68  : in  0 2mA pull down
912
 gpio69  : in  0 2mA pull down
913
 gpio70  : in  0 2mA pull down
914
 gpio71  : in  0 2mA pull down
915
 gpio72  : in  0 2mA pull down
916
 gpio73  : in  0 2mA pull down
917
 gpio74  : in  0 2mA pull down
918
 gpio75  : out 0 2mA no pull
919
 gpio76  : in  2 8mA no pull
920
 gpio77  : out 2 8mA no pull
921
 gpio78  : out 2 8mA no pull
922
 gpio79  : out 1 8mA no pull
923
</pre>
924 28 laforge
925
h3. pinctrl-handles
926
927
<pre>
928
root@mdm9607-perf:/sys/kernel/debug/pinctrl# cat pinctrl-handles 
929
Requested pin control handlers their pinmux maps:
930
device: 78b6000.i2c current state: i2c_sleep
931
  state: i2c_active
932
    type: MUX_GROUP controller 1000000.pinctrl group: gpio6 (6) function: blsp_i2c2 (12)
933
    type: MUX_GROUP controller 1000000.pinctrl group: gpio7 (7) function: blsp_i2c2 (12)
934
    type: CONFIGS_GROUP controller 1000000.pinctrl group gpio6 (6) 00000000 00020009
935
    type: CONFIGS_GROUP controller 1000000.pinctrl group gpio7 (7) 00000000 00020009
936
  state: i2c_sleep
937
    type: MUX_GROUP controller 1000000.pinctrl group: gpio6 (6) function: gpio (1)
938
    type: MUX_GROUP controller 1000000.pinctrl group: gpio7 (7) function: gpio (1)
939
    type: CONFIGS_GROUP controller 1000000.pinctrl group gpio6 (6) 00010004 00020009
940
    type: CONFIGS_GROUP controller 1000000.pinctrl group gpio7 (7) 00010004 00020009
941
device: 78b1000.uart current state: default
942
  state: sleep
943
    type: MUX_GROUP controller 1000000.pinctrl group: gpio0 (0) function: gpio (1)
944
    type: MUX_GROUP controller 1000000.pinctrl group: gpio1 (1) function: gpio (1)
945
    type: MUX_GROUP controller 1000000.pinctrl group: gpio2 (2) function: gpio (1)
946
    type: MUX_GROUP controller 1000000.pinctrl group: gpio3 (3) function: gpio (1)
947
    type: CONFIGS_GROUP controller 1000000.pinctrl group gpio0 (0) 00000000 00020009
948
    type: CONFIGS_GROUP controller 1000000.pinctrl group gpio1 (1) 00000000 00020009
949
    type: CONFIGS_GROUP controller 1000000.pinctrl group gpio2 (2) 00000000 00020009
950
    type: CONFIGS_GROUP controller 1000000.pinctrl group gpio3 (3) 00000000 00020009
951
  state: default
952
    type: MUX_GROUP controller 1000000.pinctrl group: gpio0 (0) function: blsp_uart3 (2)
953
    type: MUX_GROUP controller 1000000.pinctrl group: gpio1 (1) function: blsp_uart3 (2)
954
    type: MUX_GROUP controller 1000000.pinctrl group: gpio2 (2) function: blsp_uart3 (2)
955
    type: MUX_GROUP controller 1000000.pinctrl group: gpio3 (3) function: blsp_uart3 (2)
956
    type: CONFIGS_GROUP controller 1000000.pinctrl group gpio0 (0) 00000000 00020009
957
    type: CONFIGS_GROUP controller 1000000.pinctrl group gpio1 (1) 00000000 00020009
958
    type: CONFIGS_GROUP controller 1000000.pinctrl group gpio2 (2) 00000000 00020009
959
    type: CONFIGS_GROUP controller 1000000.pinctrl group gpio3 (3) 00000000 00020009
960
device: 78b3000.serial current state: default
961
  state: default
962
    type: MUX_GROUP controller 1000000.pinctrl group: gpio8 (8) function: blsp_uart5 (16)
963
    type: MUX_GROUP controller 1000000.pinctrl group: gpio9 (9) function: blsp_uart5 (16)
964
    type: CONFIGS_GROUP controller 1000000.pinctrl group gpio8 (8) 00010004 00020009
965
    type: CONFIGS_GROUP controller 1000000.pinctrl group gpio9 (9) 00010004 00020009
966
device: msm_hsusb current state: none
967
device: 7824900.sdhci current state: sleep
968
  state: active
969
    type: CONFIGS_GROUP controller 1000000.pinctrl group sdc1_clk (80) 00000000 00100009
970
    type: CONFIGS_GROUP controller 1000000.pinctrl group sdc1_cmd (81) 00010003 000a0009
971
    type: CONFIGS_GROUP controller 1000000.pinctrl group sdc1_data (82) 00010003 000a0009
972
  state: sleep
973
    type: CONFIGS_GROUP controller 1000000.pinctrl group sdc1_clk (80) 00000000 00020009
974
    type: CONFIGS_GROUP controller 1000000.pinctrl group sdc1_cmd (81) 00010003 00020009
975
    type: CONFIGS_GROUP controller 1000000.pinctrl group sdc1_data (82) 00010003 00020009
976
device: 7864900.sdhci current state: sleep
977
  state: active
978
    type: CONFIGS_GROUP controller 1000000.pinctrl group sdc2_clk (83) 00000000 00100009
979
    type: CONFIGS_GROUP controller 1000000.pinctrl group sdc2_cmd (84) 00010003 000a0009
980
    type: CONFIGS_GROUP controller 1000000.pinctrl group sdc2_data (85) 00010003 000a0009
981
    type: MUX_GROUP controller 1000000.pinctrl group: gpio26 (26) function: gpio (1)
982
    type: CONFIGS_GROUP controller 1000000.pinctrl group gpio26 (26) 00010003 00020009
983
  state: sleep
984
    type: CONFIGS_GROUP controller 1000000.pinctrl group sdc2_clk (83) 00000000 00020009
985
    type: CONFIGS_GROUP controller 1000000.pinctrl group sdc2_cmd (84) 00010003 00020009
986
    type: CONFIGS_GROUP controller 1000000.pinctrl group sdc2_data (85) c00010003 00020009
987
device: 6020000.tpiu current state: none
988
  state: sdcard
989
    type: CONFIGS_GROUP controller 1000000.pinctrl group qdsd_clk (86) 00000000 00100009
990
    type: CONFIGS_GROUP controller 1000000.pinctrl group qdsd_cmd (87) 00010004 00080009
991
    type: CONFIGS_GROUP controller 1000000.pinctrl group qdsd_data0 (88) 00010004 00080009
992
    type: CONFIGS_GROUP controller 1000000.pinctrl group qdsd_data1 (89) 00010004 00080009
993
    type: CONFIGS_GROUP controller 1000000.pinctrl group qdsd_data2 (90) 00010004 00080009
994
    type: CONFIGS_GROUP controller 1000000.pinctrl group qdsd_data3 (91) 00010004 00080009
995
  state: trace
996
    type: CONFIGS_GROUP controller 1000000.pinctrl group qdsd_clk (86) 00010004 00020009
997
    type: CONFIGS_GROUP controller 1000000.pinctrl group qdsd_cmd (87) 00010004 00020009
998
    type: CONFIGS_GROUP controller 1000000.pinctrl group qdsd_data0 (88) 00010004 00080009
999
    type: CONFIGS_GROUP controller 1000000.pinctrl group qdsd_data1 (89) 00010004 00080009
1000
    type: CONFIGS_GROUP controller 1000000.pinctrl group qdsd_data2 (90) 00010004 00080009
1001
    type: CONFIGS_GROUP controller 1000000.pinctrl group qdsd_data3 (91) 00010004 00080009
1002
  state: swduart
1003
    type: CONFIGS_GROUP controller 1000000.pinctrl group qdsd_cmd (87) 00010003 00020009
1004
    type: CONFIGS_GROUP controller 1000000.pinctrl group qdsd_data0 (88) 00010004 00020009
1005
    type: CONFIGS_GROUP controller 1000000.pinctrl group qdsd_data1 (89) 00010004 00020009
1006
    type: CONFIGS_GROUP controller 1000000.pinctrl group qdsd_data2 (90) 00010004 00020009
1007
    type: CONFIGS_GROUP controller 1000000.pinctrl group qdsd_data3 (91) 00010003 00020009
1008
  state: swdtrc
1009
    type: CONFIGS_GROUP controller 1000000.pinctrl group qdsd_clk (86) 00010004 00020009
1010
    type: CONFIGS_GROUP controller 1000000.pinctrl group qdsd_cmd (87) 00010003 00020009
1011
    type: CONFIGS_GROUP controller 1000000.pinctrl group qdsd_data0 (88) 00010004 00020009
1012
    type: CONFIGS_GROUP controller 1000000.pinctrl group qdsd_data1 (89) 00010004 00020009
1013
    type: CONFIGS_GROUP controller 1000000.pinctrl group qdsd_data2 (90) 00010004 00020009
1014
    type: CONFIGS_GROUP controller 1000000.pinctrl group qdsd_data3 (91) 00010003 00020009
1015
  state: jtag
1016
    type: CONFIGS_GROUP controller 1000000.pinctrl group qdsd_cmd (87) 00000000 00080009
1017
    type: CONFIGS_GROUP controller 1000000.pinctrl group qdsd_data0 (88) 00010003 00020009
1018
    type: CONFIGS_GROUP controller 1000000.pinctrl group qdsd_data1 (89) 00010004 00020009
1019
    type: CONFIGS_GROUP controller 1000000.pinctrl group qdsd_data2 (90) 00010003 00080009
1020
    type: CONFIGS_GROUP controller 1000000.pinctrl group qdsd_data3 (91) 00010003 00020009
1021
  state: spmi
1022
    type: CONFIGS_GROUP controller 1000000.pinctrl group qdsd_clk (86) 00010004 00020009
1023
    type: CONFIGS_GROUP controller 1000000.pinctrl group qdsd_cmd (87) 00010004 000a0009
1024
    type: CONFIGS_GROUP controller 1000000.pinctrl group qdsd_data0 (88) 00010004 00020009
1025
    type: CONFIGS_GROUP controller 1000000.pinctrl group qdsd_data3 (91) 00010004 00080009
1026
device: soc:qcom,msm-sec-auxpcm current state: default
1027
  state: default
1028
    type: MUX_GROUP controller 1000000.pinctrl group: gpio79 (79) function: sec_mi2s (120)
1029
    type: CONFIGS_GROUP controller 1000000.pinctrl group gpio79 (79) 00000000 00080009 00010011
1030
    type: MUX_GROUP controller 1000000.pinctrl group: gpio78 (78) function: sec_mi2s (120)
1031
    type: CONFIGS_GROUP controller 1000000.pinctrl group gpio78 (78) 00000000 00080009 00010011
1032
    type: MUX_GROUP controller 1000000.pinctrl group: gpio77 (77) function: sec_mi2s (120)
1033
    type: CONFIGS_GROUP controller 1000000.pinctrl group gpio77 (77) 00000000 00080009 00010011
1034
    type: MUX_GROUP controller 1000000.pinctrl group: gpio76 (76) function: sec_mi2s (120)
1035
    type: CONFIGS_GROUP controller 1000000.pinctrl group gpio76 (76) 00000000 00080009
1036
  state: idle
1037
    type: MUX_GROUP controller 1000000.pinctrl group: gpio79 (79) function: sec_mi2s (120)
1038
    type: CONFIGS_GROUP controller 1000000.pinctrl group gpio79 (79) 00010004 00020009
1039
    type: MUX_GROUP controller 1000000.pinctrl group: gpio78 (78) function: sec_mi2s (120)
1040
    type: CONFIGS_GROUP controller 1000000.pinctrl group gpio78 (78) 00010004 00020009
1041
    type: MUX_GROUP controller 1000000.pinctrl group: gpio77 (77) function: sec_mi2s (120)
1042
    type: CONFIGS_GROUP controller 1000000.pinctrl group gpio77 (77) 00010004 00020009
1043
    type: MUX_GROUP controller 1000000.pinctrl group: gpio76 (76) function: sec_mi2s (120)
1044
    type: CONFIGS_GROUP controller 1000000.pinctrl group gpio76 (76) 00010004 00020009
1045
device: soc:qcom,msm-dai-mi2s:qcom,msm-dai-q6-mi2s-prim current state: default
1046
  state: default
1047
    type: MUX_GROUP controller 1000000.pinctrl group: gpio20 (20) function: pri_mi2s_ws_a (43)
1048
    type: CONFIGS_GROUP controller 1000000.pinctrl group gpio20 (20) 00000000 00080009 00010011
1049
    type: MUX_GROUP controller 1000000.pinctrl group: gpio23 (23) function: pri_mi2s_sck_a (51)
1050
    type: CONFIGS_GROUP controller 1000000.pinctrl group gpio23 (23) 00000000 00080009 00010011
1051
    type: MUX_GROUP controller 1000000.pinctrl group: gpio22 (22) function: pri_mi2s_data1_a (48)
1052
    type: CONFIGS_GROUP controller 1000000.pinctrl group gpio22 (22) 00000000 00080009 00010011
1053
    type: MUX_GROUP controller 1000000.pinctrl group: gpio21 (21) function: pri_mi2s_data0_a (47)
1054
    type: CONFIGS_GROUP controller 1000000.pinctrl group gpio21 (21) 00000000 00080009
1055
  state: idle
1056
    type: MUX_GROUP controller 1000000.pinctrl group: gpio20 (20) function: pri_mi2s_ws_a (43)
1057
    type: CONFIGS_GROUP controller 1000000.pinctrl group gpio20 (20) 00010004 00020009
1058
    type: MUX_GROUP controller 1000000.pinctrl group: gpio23 (23) function: pri_mi2s_sck_a (51)
1059
    type: CONFIGS_GROUP controller 1000000.pinctrl group gpio23 (23) 00010004 00020009
1060
    type: MUX_GROUP controller 1000000.pinctrl group: gpio22 (22) function: pri_mi2s_data1_a (48)
1061
    type: CONFIGS_GROUP controller 1000000.pinctrl group gpio22 (22) 00010004 00020009
1062
    type: MUX_GROUP controller 1000000.pinctrl group: gpio21 (21) function: pri_mi2s_data0_a (47)
1063
    type: CONFIGS_GROUP controller 1000000.pinctrl group gpio21 (21) 00010004 00020009
1064
</pre>
Add picture from clipboard (Maximum size: 48.8 MB)