Project

General

Profile

EC25 » History » Version 29

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