On Sun, Nov 28, 2021 at 9:09 PM Aleksander Morgado <aleksan...@aleksander.es> wrote:
> So it may really be that they've changed the unlock method already :/ > Are you able to flash back v48, or is the downgrade path not possible? > Fortunately, I can downgrade (via a Windows installation I have on a USB disk). > My firmware version in the SDX55 I have is T99W175.F0.0.0.5.8.TF.007. > > Could you run this just to confirm? > $ sudo qmicli -d /dev/wwan0mbim0 -p --dms-foxconn-set-fcc-authentication=0 > -v > That seems unsuccessful: error: couldn't run Foxconn FCC authentication: QMI protocol error (17): 'MissingArgument' Complete output attached. > Regarding the lenovo-wwan-dpr in https://snapcraft.io/lenovo-wwan-dpr, > does it help to unlock the module in the newer firmware versions? > Nope, unfortunately not, it apparently refuses to do its work: 2021-11-30T00:03:10+01:00 DPR_wwan[4779]: get_product(): WWAN DPR functionality is not supported in this product When I have a look at the decompiled DPR_wwan binary from the snap, they seem to have a product whitelist that does not include the X1E4. If the whitelist wasn't in place, they'd invoke some binary (the name of which I can't seem to figure out due to obfuscation or compiler optimization) with a --dms-set-bios-lock flag. I will leave v51 in place in case there is anything I can do to debug the situation. I may need some guidance, though. Regards, Thilo
[29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Opening device with flags 'proxy, auto'... [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] automatically selecting MBIM mode [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] created endpoint [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] creating MBIM device... [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] MBIM device created [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] opening MBIM device... [29 Nov 2021, 23:56:33] [Debug] opening device... [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Couldn't find descriptors file, possibly not using cdc_mbim [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Fallback to default max control message size: 4096 [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Sent message... <<<<<< RAW: <<<<<< length = 92 <<<<<< data = 03:00:00:00:5C: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:2C:00:00:00:0C:00:00:00:1E:00:00:00:05:00:00:00:2F:00:64:00:65:00:76:00:2F:00:77:00:77:00:61:00:6E:00:30:00:6D:00:62:00:69:00:6D:00:30:00:00:00 [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Sent message (translated)... <<<<<< Header: <<<<<< length = 92 <<<<<< 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) <<<<<< Fields: <<<<<< DevicePath = '/dev/wwan0mbim0' <<<<<< Timeout = '5' [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] 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 [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] 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) [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Sent message... <<<<<< RAW: <<<<<< length = 16 <<<<<< data = 01:00:00:00:10:00:00:00:02:00:00:00:00:10:00:00 [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Sent message (translated)... <<<<<< Header: <<<<<< length = 16 <<<<<< type = open (0x00000001) <<<<<< transaction = 2 <<<<<< Contents: <<<<<< max control transfer = 4096 [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Received message... >>>>>> RAW: >>>>>> length = 16 >>>>>> data = 01:00:00:80:10:00:00:00:02:00:00:00:00:00:00:00 [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] MBIM device open [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Enabling QMI indications via MBIM... [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Sent message... <<<<<< RAW: <<<<<< length = 84 <<<<<< data = 03:00:00:00:54: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:13:00:00:00:01:00:00:00:24:00:00:00:01:00:00:00:0C:00:00:00:18:00:00:00:D1:A3:0B:C2:F9:7A:6E:43:BF:65:C7:E2:4F:B0:F0:D3:01:00:00:00:01:00:00:00 [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Sent message (translated)... <<<<<< Header: <<<<<< length = 84 <<<<<< type = command (0x00000003) <<<<<< transaction = 3 <<<<<< Fragment header: <<<<<< total = 1 <<<<<< current = 0 <<<<<< Contents: <<<<<< service = 'basic-connect' (a289cc33-bcbb-8b4f-b6b0-133ec2aae6df) <<<<<< cid = 'device-service-subscribe-list' (0x00000013) <<<<<< type = 'set' (0x00000001) <<<<<< Fields: <<<<<< EventsCount = '1' <<<<<< Events = '{ <<<<<< [0] = { <<<<<< DeviceServiceId = 'd1a30bc2-f97a-6e43-bf65-c7e24fb0f0d3' <<<<<< CidsCount = '1' <<<<<< Cids = '1' <<<<<< }, <<<<<< }' [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Received message... >>>>>> RAW: >>>>>> length = 84 >>>>>> data = 03:00:00:80:54: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:13:00:00:00:00:00:00:00:24:00:00:00:01:00:00:00:0C:00:00:00:18:00:00:00:D1:A3:0B:C2:F9:7A:6E:43:BF:65:C7:E2:4F:B0:F0:D3:01:00:00:00:01:00:00:00 [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Received message (translated)... >>>>>> Header: >>>>>> length = 84 >>>>>> type = command-done (0x80000003) >>>>>> transaction = 3 >>>>>> Fragment header: >>>>>> total = 1 >>>>>> current = 0 >>>>>> Contents: >>>>>> status error = 'None' (0x00000000) >>>>>> service = 'basic-connect' (a289cc33-bcbb-8b4f-b6b0-133ec2aae6df) >>>>>> cid = 'device-service-subscribe-list' (0x00000013) >>>>>> Fields: >>>>>> EventsCount = '1' >>>>>> Events = '{ >>>>>> [0] = { >>>>>> DeviceServiceId = 'd1a30bc2-f97a-6e43-bf65-c7e24fb0f0d3' >>>>>> CidsCount = '1' >>>>>> Cids = '1' >>>>>> }, >>>>>> }' [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] enabled QMI indications via MBIM [29 Nov 2021, 23:56:33] [Debug] QMI Device at '/dev/wwan0mbim0' ready [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Assuming service 'dms' is supported... [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Allocating new client ID... [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Sent message... <<<<<< RAW: <<<<<< length = 16 <<<<<< data = 01:0F:00:00:00:00:00:01:22:00:04:00:01:01:00:02 [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Sent generic request (translated)... <<<<<< QMUX: <<<<<< length = 15 <<<<<< flags = 0x00 <<<<<< service = "ctl" <<<<<< client = 0 <<<<<< QMI: <<<<<< flags = "none" <<<<<< transaction = 1 <<<<<< tlv_length = 4 <<<<<< message = "Allocate CID" (0x0022) <<<<<< TLV: <<<<<< type = "Service" (0x01) <<<<<< length = 1 <<<<<< value = 02 <<<<<< translated = dms [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Sent message... <<<<<< RAW: <<<<<< length = 64 <<<<<< data = 03:00:00:00:40:00:00:00:04:00:00:00:01:00:00:00:00:00:00:00:D1:A3:0B:C2:F9:7A:6E:43:BF:65:C7:E2:4F:B0:F0:D3:01:00:00:00:01:00:00:00:10:00:00:00:01:0F:00:00:00:00:00:01:22:00:04:00:01:01:00:02 [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Sent message (translated)... <<<<<< Header: <<<<<< length = 64 <<<<<< type = command (0x00000003) <<<<<< transaction = 4 <<<<<< Fragment header: <<<<<< total = 1 <<<<<< current = 0 <<<<<< Contents: <<<<<< service = 'qmi' (d1a30bc2-f97a-6e43-bf65-c7e24fb0f0d3) <<<<<< cid = 'msg' (0x00000001) <<<<<< type = 'set' (0x00000001) <<<<<< Fields: <<<<<< QmiMsg = '01:0f:00:00:00:00:00:01:22:00:04:00:01:01:00:02' [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Received message... >>>>>> RAW: >>>>>> length = 72 >>>>>> data = 03:00:00:80:48:00:00:00:04:00:00:00:01:00:00:00:00:00:00:00:D1:A3:0B:C2:F9:7A:6E:43:BF:65:C7:E2:4F:B0:F0:D3:01:00:00:00:00:00:00:00:18:00:00:00:01:17:00:80:00:00:01:01:22:00:0C:00:02:04:00:00:00:00:00:01:02:00:02:02 [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Received message (translated)... >>>>>> Header: >>>>>> length = 72 >>>>>> type = command-done (0x80000003) >>>>>> transaction = 4 >>>>>> Fragment header: >>>>>> total = 1 >>>>>> current = 0 >>>>>> Contents: >>>>>> status error = 'None' (0x00000000) >>>>>> service = 'qmi' (d1a30bc2-f97a-6e43-bf65-c7e24fb0f0d3) >>>>>> cid = 'msg' (0x00000001) >>>>>> Fields: >>>>>> QMUX = '01:17:00:80:00:00:01:01:22:00:0c:00:02:04:00:00:00:00:00:01:02:00:02:02' [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Received message... <<<<<< RAW: <<<<<< length = 24 <<<<<< data = 01:17:00:80:00:00:01:01:22:00:0C:00:02:04:00:00:00:00:00:01:02:00:02:02 [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Received generic response (translated)... <<<<<< QMUX: <<<<<< length = 23 <<<<<< flags = 0x80 <<<<<< service = "ctl" <<<<<< client = 0 <<<<<< QMI: <<<<<< flags = "response" <<<<<< transaction = 1 <<<<<< tlv_length = 12 <<<<<< message = "Allocate CID" (0x0022) <<<<<< TLV: <<<<<< type = "Result" (0x02) <<<<<< length = 4 <<<<<< value = 00:00:00:00 <<<<<< translated = SUCCESS <<<<<< TLV: <<<<<< type = "Allocation Info" (0x01) <<<<<< length = 2 <<<<<< value = 02:02 <<<<<< translated = [ service = 'dms' cid = '2' ] [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Registered 'dms' (version unknown) client with ID '2' [29 Nov 2021, 23:56:33] [Debug] Asynchronously running Foxconn FCC authentication... [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Sent message... <<<<<< RAW: <<<<<< length = 17 <<<<<< data = 01:10:00:00:02:02:00:01:00:71:55:04:00:01:01:00:00 [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Sent vendor-specific (0x0489) request (translated)... <<<<<< QMUX: <<<<<< length = 16 <<<<<< flags = 0x00 <<<<<< service = "dms" <<<<<< client = 2 <<<<<< QMI: <<<<<< flags = "none" <<<<<< transaction = 1 <<<<<< tlv_length = 4 <<<<<< message = "Foxconn Set FCC Authentication" (0x5571) <<<<<< TLV: <<<<<< type = "Value" (0x01) <<<<<< length = 1 <<<<<< value = 00 <<<<<< translated = 0 [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Sent message... <<<<<< RAW: <<<<<< length = 65 <<<<<< data = 03:00:00:00:41:00:00:00:05:00:00:00:01:00:00:00:00:00:00:00:D1:A3:0B:C2:F9:7A:6E:43:BF:65:C7:E2:4F:B0:F0:D3:01:00:00:00:01:00:00:00:11:00:00:00:01:10:00:00:02:02:00:01:00:71:55:04:00:01:01:00:00 [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Sent message (translated)... <<<<<< Header: <<<<<< length = 65 <<<<<< type = command (0x00000003) <<<<<< transaction = 5 <<<<<< Fragment header: <<<<<< total = 1 <<<<<< current = 0 <<<<<< Contents: <<<<<< service = 'qmi' (d1a30bc2-f97a-6e43-bf65-c7e24fb0f0d3) <<<<<< cid = 'msg' (0x00000001) <<<<<< type = 'set' (0x00000001) <<<<<< Fields: <<<<<< QmiMsg = '01:10:00:00:02:02:00:01:00:71:55:04:00:01:01:00:00' [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Received message... >>>>>> RAW: >>>>>> length = 68 >>>>>> data = 03:00:00:80:44:00:00:00:05:00:00:00:01:00:00:00:00:00:00:00:D1:A3:0B:C2:F9:7A:6E:43:BF:65:C7:E2:4F:B0:F0:D3:01:00:00:00:00:00:00:00:14:00:00:00:01:13:00:80:02:02:02:01:00:71:55:07:00:02:04:00:01:00:11:00 [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Received message (translated)... >>>>>> Header: >>>>>> length = 68 >>>>>> type = command-done (0x80000003) >>>>>> transaction = 5 >>>>>> Fragment header: >>>>>> total = 1 >>>>>> current = 0 >>>>>> Contents: >>>>>> status error = 'None' (0x00000000) >>>>>> service = 'qmi' (d1a30bc2-f97a-6e43-bf65-c7e24fb0f0d3) >>>>>> cid = 'msg' (0x00000001) >>>>>> Fields: >>>>>> QMUX = '01:13:00:80:02:02:02:01:00:71:55:07:00:02:04:00:01:00:11:00' [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Received message... <<<<<< RAW: <<<<<< length = 20 <<<<<< data = 01:13:00:80:02:02:02:01:00:71:55:07:00:02:04:00:01:00:11:00 [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Received vendor-specific (0x0489) response (translated)... <<<<<< QMUX: <<<<<< length = 19 <<<<<< flags = 0x80 <<<<<< service = "dms" <<<<<< client = 2 <<<<<< QMI: <<<<<< flags = "response" <<<<<< transaction = 1 <<<<<< tlv_length = 7 <<<<<< message = "Foxconn Set FCC Authentication" (0x5571) <<<<<< TLV: <<<<<< type = "Result" (0x02) <<<<<< length = 4 <<<<<< value = 01:00:11:00 <<<<<< translated = FAILURE: MissingArgument [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Releasing 'dms' client with flags 'release-cid'... [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Unregistered 'dms' client with ID '2' [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Sent message... <<<<<< RAW: <<<<<< length = 17 <<<<<< data = 01:10:00:00:00:00:00:02:23:00:05:00:01:02:00:02:02 [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Sent generic request (translated)... <<<<<< QMUX: <<<<<< length = 16 <<<<<< flags = 0x00 <<<<<< service = "ctl" <<<<<< client = 0 <<<<<< QMI: <<<<<< flags = "none" <<<<<< transaction = 2 <<<<<< tlv_length = 5 <<<<<< message = "Release CID" (0x0023) <<<<<< TLV: <<<<<< type = "Release Info" (0x01) <<<<<< length = 2 <<<<<< value = 02:02 <<<<<< translated = [ service = 'dms' cid = '2' ] [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Sent message... <<<<<< RAW: <<<<<< length = 65 <<<<<< data = 03:00:00:00:41:00:00:00:06:00:00:00:01:00:00:00:00:00:00:00:D1:A3:0B:C2:F9:7A:6E:43:BF:65:C7:E2:4F:B0:F0:D3:01:00:00:00:01:00:00:00:11:00:00:00:01:10:00:00:00:00:00:02:23:00:05:00:01:02:00:02:02 [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Sent message (translated)... <<<<<< Header: <<<<<< length = 65 <<<<<< type = command (0x00000003) <<<<<< transaction = 6 <<<<<< Fragment header: <<<<<< total = 1 <<<<<< current = 0 <<<<<< Contents: <<<<<< service = 'qmi' (d1a30bc2-f97a-6e43-bf65-c7e24fb0f0d3) <<<<<< cid = 'msg' (0x00000001) <<<<<< type = 'set' (0x00000001) <<<<<< Fields: <<<<<< QmiMsg = '01:10:00:00:00:00:00:02:23:00:05:00:01:02:00:02:02' [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Received message... >>>>>> RAW: >>>>>> length = 72 >>>>>> data = 03:00:00:80:48:00:00:00:06:00:00:00:01:00:00:00:00:00:00:00:D1:A3:0B:C2:F9:7A:6E:43:BF:65:C7:E2:4F:B0:F0:D3:01:00:00:00:00:00:00:00:18:00:00:00:01:17:00:80:00:00:01:02:23:00:0C:00:02:04:00:00:00:00:00:01:02:00:02:02 [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Received message (translated)... >>>>>> Header: >>>>>> length = 72 >>>>>> type = command-done (0x80000003) >>>>>> transaction = 6 >>>>>> Fragment header: >>>>>> total = 1 >>>>>> current = 0 >>>>>> Contents: >>>>>> status error = 'None' (0x00000000) >>>>>> service = 'qmi' (d1a30bc2-f97a-6e43-bf65-c7e24fb0f0d3) >>>>>> cid = 'msg' (0x00000001) >>>>>> Fields: >>>>>> QMUX = '01:17:00:80:00:00:01:02:23:00:0c:00:02:04:00:00:00:00:00:01:02:00:02:02' [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Received message... <<<<<< RAW: <<<<<< length = 24 <<<<<< data = 01:17:00:80:00:00:01:02:23:00:0C:00:02:04:00:00:00:00:00:01:02:00:02:02 [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Received generic response (translated)... <<<<<< QMUX: <<<<<< length = 23 <<<<<< flags = 0x80 <<<<<< service = "ctl" <<<<<< client = 0 <<<<<< QMI: <<<<<< flags = "response" <<<<<< transaction = 2 <<<<<< tlv_length = 12 <<<<<< message = "Release CID" (0x0023) <<<<<< TLV: <<<<<< type = "Result" (0x02) <<<<<< length = 4 <<<<<< value = 00:00:00:00 <<<<<< translated = SUCCESS <<<<<< TLV: <<<<<< type = "Release Info" (0x01) <<<<<< length = 2 <<<<<< value = 02:02 <<<<<< translated = [ service = 'dms' cid = '2' ] [29 Nov 2021, 23:56:33] [Debug] Client released [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Sent message... <<<<<< RAW: <<<<<< length = 12 <<<<<< data = 02:00:00:00:0C:00:00:00:07:00:00:00 [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Sent message (translated)... <<<<<< Header: <<<<<< length = 12 <<<<<< type = close (0x00000002) <<<<<< transaction = 7 [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] Received message... >>>>>> RAW: >>>>>> length = 16 >>>>>> data = 02:00:00:80:10:00:00:00:07:00:00:00:00:00:00:00 [29 Nov 2021, 23:56:33] [Debug] [/dev/wwan0mbim0] channel destroyed [29 Nov 2021, 23:56:33] [Debug] Closed