Lenovo (x260) and EM7455

Bjørnar Ness bjornar.ness at gmail.com
Thu Aug 18 08:24:08 UTC 2016


2016-08-18 9:10 GMT+02:00 Bjørn Mork <bjorn at mork.no>:
> Let me know if you want to try my hackish perl script to change the
> composition, so you can get an AT port. It won't help directly, but the
> AT!PCINFO command is extremely useful for debugging since it summarizes
> all reasons why a device can be in low power mode.  For example:

That worked, and I now have serial interfaces. Seems W_DISABLE is true, dont
know if that means anything:

# mbimcli -p -d /dev/cdc-wdm0 --query-radio-state
[/dev/cdc-wdm0] Radio state retrieved:
    Hardware Radio State: 'on'
    Software Radio State: 'off'

# mbimcli -p -d /dev/cdc-wdm0 --query-radio-state
[/dev/cdc-wdm0] Radio state retrieved:
    Hardware Radio State: 'on'
    Software Radio State: 'off'
(reverse-i-search)`stat': mbimcli -p -d /dev/cdc-wdm0 --query-radio-^Cate
root at roadwarrior:~# mbimcli -p -d /dev/cdc-wdm0 --set-radio-state=on
error: operation failed: Failure
root at roadwarrior:~# mbimcli -v -p -d /dev/cdc-wdm0 --set-radio-state=on
[18 Aug 2016, 10:23:18] [Debug] opening device...
[18 Aug 2016, 10:23:18] [Debug] [/dev/cdc-wdm0] Read max control
message size from descriptors file: 4096
[18 Aug 2016, 10:23:18] [Debug] [/dev/cdc-wdm0] Sent message...
<<<<<< RAW:
<<<<<<   length = 88
<<<<<<   data   =
03:00:00:00:58:00:00:00:01:00:00:00:01:00:00:00:00:00:00:00:83:8C:F7:FB:8D:0D:4D:7F:87:1E:D7:1D:BE:FB
:B3:9B:01:00:00:00:01:00:00:00:28:00:00:00:0C:00:00:00:1A:00:00:00:1E:00:00:00:2F:00:64:00:65:00:76:00:2F:00:63:00:64:0
0:63:00:2D:00:77:00:64:00:6D:00:30:00:00:00

[18 Aug 2016, 10:23:18] [Debug] [/dev/cdc-wdm0] Sent message (translated)...
<<<<<< Header:
<<<<<<   length      = 88
<<<<<<   type        = command (0x00000003)
<<<<<<   transaction = 1
<<<<<< Fragment header:
<<<<<<   total   = 1
<<<<<<   current = 0
<<<<<< Contents:
<<<<<<   service = 'proxy-control' (838cf7fb-8d0d-4d7f-871e-d71dbefbb39b)
<<<<<<   cid     = 'configuration' (0x00000001)
<<<<<<   type    = 'set' (0x00000001)

[18 Aug 2016, 10:23:18] [Debug] [/dev/cdc-wdm0] Received message...
>>>>>> RAW:
>>>>>>   length = 48
>>>>>>   data   = 03:00:00:80:30:00:00:00:01:00:00:00:01:00:00:00:00:00:00:00:83:8C:F7:FB:8D:0D:4D:7F:87:1E:D7:1D:BE:FB
:B3:9B:01:00:00:00:00:00:00:00:00:00:00:00

[18 Aug 2016, 10:23:18] [Debug] [/dev/cdc-wdm0] Received message (translated)...
>>>>>> Header:
>>>>>>   length      = 48
>>>>>>   type        = command-done (0x80000003)
>>>>>>   transaction = 1
>>>>>> Fragment header:
>>>>>>   total   = 1
>>>>>>   current = 0
>>>>>> Contents:
>>>>>>   status error = 'None' (0x00000000)
>>>>>>   service      = 'proxy-control' (838cf7fb-8d0d-4d7f-871e-d71dbefbb39b)
>>>>>>   cid          = 'configuration' (0x00000001)

[18 Aug 2016, 10:23:18] [Debug] [/dev/cdc-wdm0] Sent message...
<<<<<< RAW:
<<<<<<   length = 16
<<<<<<   data   = 01:00:00:00:10:00:00:00:02:00:00:00:00:10:00:00

[18 Aug 2016, 10:23:18] [Debug] [/dev/cdc-wdm0] Sent message (translated)...
<<<<<< Header:
<<<<<<   length      = 16
<<<<<<   type        = open (0x00000001)
<<<<<<   transaction = 2
<<<<<< Contents:
<<<<<<   max_control_transfer = 4096

[18 Aug 2016, 10:23:18] [Debug] [/dev/cdc-wdm0] Received message...
>>>>>> RAW:
>>>>>>   length = 16
>>>>>>   data   = 01:00:00:80:10:00:00:00:02:00:00:00:00:00:00:00

[18 Aug 2016, 10:23:18] [Debug] MBIM Device at '/dev/cdc-wdm0' ready
[18 Aug 2016, 10:23:18] [Debug] Asynchronously setting radio state to on...
[18 Aug 2016, 10:23:18] [Debug] [/dev/cdc-wdm0] Sent message...
<<<<<< RAW:
<<<<<<   length = 52
<<<<<<   data   =
03:00:00:00:34:00:00:00:03:00:00:00:01:00:00:00:00:00:00:00:A2:89:CC:33:BC:BB:8B:4F:B6:B0:13:3E:C2:AA:E6:DF:03:00:00:00:01:00:00:00:04:00:00:00:01:00:00:00

[18 Aug 2016, 10:23:18] [Debug] [/dev/cdc-wdm0] Sent message (translated)...
<<<<<< Header:
<<<<<<   length      = 52
<<<<<<   type        = command (0x00000003)
<<<<<<   transaction = 3
<<<<<< Fragment header:
<<<<<<   total   = 1
<<<<<<   current = 0
<<<<<< Contents:
<<<<<<   service = 'basic-connect' (a289cc33-bcbb-8b4f-b6b0-133ec2aae6df)
<<<<<<   cid     = 'radio-state' (0x00000003)
<<<<<<   type    = 'set' (0x00000001)

[18 Aug 2016, 10:23:18] [Debug] [/dev/cdc-wdm0] Received message...
>>>>>> RAW:
>>>>>>   length = 56
>>>>>>   data   = 03:00:00:80:38:00:00:00:03:00:00:00:01:00:00:00:00:00:00:00:A2:89:CC:33:BC:BB:8B:4F:B6:B0:13:3E:C2:AA:E6:DF:03:00:00:00:02:00:00:00:08:00:00:00:01:00:00:00:00:00:00:00

[18 Aug 2016, 10:23:18] [Debug] [/dev/cdc-wdm0] Received message (translated)...
>>>>>> Header:
>>>>>>   length      = 56
>>>>>>   type        = command-done (0x80000003)
>>>>>>   transaction = 3
>>>>>> Fragment header:
>>>>>>   total   = 1
>>>>>>   current = 0
>>>>>> Contents:
>>>>>>   status error = 'Failure' (0x00000002)
>>>>>>   service      = 'basic-connect' (a289cc33-bcbb-8b4f-b6b0-133ec2aae6df)
>>>>>>   cid          = 'radio-state' (0x00000003)

error: operation failed: Failure
[18 Aug 2016, 10:23:18] [Debug] [/dev/cdc-wdm0] Sent message...
<<<<<< RAW:
<<<<<<   length = 12
<<<<<<   data   = 02:00:00:00:0C:00:00:00:04:00:00:00

[18 Aug 2016, 10:23:18] [Debug] [/dev/cdc-wdm0] Sent message (translated)...
<<<<<< Header:
<<<<<<   length      = 12
<<<<<<   type        = close (0x00000002)
<<<<<<   transaction = 4

[18 Aug 2016, 10:23:18] [Debug] [/dev/cdc-wdm0] Received message...
>>>>>> RAW:
>>>>>>   length = 16
>>>>>>   data   = 02:00:00:80:10:00:00:00:04:00:00:00:00:00:00:00

[18 Aug 2016, 10:23:18] [Debug] Device closed

>  at!pcinfo?
>  State: Online
>  LPM voters - Temp:0, Volt:0, User:0, W_DISABLE:0, IMSWITCH:0, BIOS:0
>  LPM persistence - None

State: Low Power Mode
LPM voters - Temp:0, Volt:0, User:0, W_DISABLE:0, IMSWITCH:1, BIOS:0
LPM persistence - None

>  # rfkill block 1
>
>  at!pcinfo?
>  State: Low Power Mode
>  LPM voters - Temp:0, Volt:0, User:0, W_DISABLE:1, IMSWITCH:0, BIOS:0
>  LPM persistence - None

State: Low Power Mode
LPM voters - Temp:0, Volt:0, User:0, W_DISABLE:1, IMSWITCH:1, BIOS:0
LPM persistence - None

> I'd love to get something similar out of QMI/MBIM, but I don't know if
> all that is available?  Probably is, but the lack of QMI docs makes it
> hard to figure out..

-- 
Bj(/)rnar


More information about the ModemManager-devel mailing list