Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

read data is full of bit flips, dying NAND or software issue? #598

Open
smiba opened this issue Oct 28, 2024 · 9 comments
Open

read data is full of bit flips, dying NAND or software issue? #598

smiba opened this issue Oct 28, 2024 · 9 comments

Comments

@smiba
Copy link

smiba commented Oct 28, 2024

Hi,

I'm trying to recover data from a bricked Wiko Pulp 4G, but although I get no errors dumping the userdata partition, the data is severely corrupted. And not just that, they are bit flips on single bit level that will change if you read the sector a couple of times.

What is going on here? Is the NAND (eMMC) just absolutely cooked, or is there something else going on?

For example

% edl rs 27350912 100000 userdata_204.bin
/opt/homebrew/bin/edl:4: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html
  __import__('pkg_resources').run_script('edlclient==3.62', 'edl')
Keystone library is missing (optional).
Qualcomm Sahara / Firehose Client V3.62 (c) B.Kerler 2018-2024.
main - Trying with no loader given ...
main - Waiting for the device
main - Device detected :)
main - Mode detected: firehose
Progress: |██████████| 100.0% Read (Sector 0x18680 of 0x186A0, ) 1.16 MB/s
Progress: |██████████| 100.0% Read (Sector 0x186A0 of 0x186A0, ) 1.01 MB/s
Dumped sector 27350912 with sector count 100000 as userdata_204.bin.

% edl rs 27350912 100000 userdata_204_2.bin
[...]

% edl rs 27350912 100000 userdata_204_3.bin
[...]

% edl rs 27350912 100000 userdata_204_4.bin
[...]

% edl rs 27350912 100000 userdata_204_5.bin
[...]

% sha256sum userdata_204*
40d9c5d08f2a9db307fead8ad72354165f9718b77d6608fb56822414bb275b51  userdata_204.bin
48f62ba5e6cedfc82818079b6030379b869a7e473f04ecc12e83d906fbad0279  userdata_204_2.bin
d0e70881db3590f635dc8386d83af71474e277b175f66a1162d503c53da66f2d  userdata_204_3.bin
62710ad09f08ae260fbce45db67290401e4d540a2fae9e9b235ee45d6330ba39  userdata_204_4.bin
5fe42c2b5f96bb3900a79521ed8f75a511924e776f750bc3e0d307d443547435  userdata_204_5.bin

If we look at a single sector a few times:

Try 1:

% edl rs 27444873 1 test.bin; xxd test.bin; sha256sum test.bin
[...]
Dumped sector 27444873 with sector count 1 as test.bin.
00000000: 3310 0025 0517 0508 0008 2877 1705 0000  3..%......(w....
00000010: 1d53 6c61 6170 204c 65eb 6b65 7239 3038  .Slaap Le.ker908
00000020: 3136 3035 3531 3231 3732 333a 3030 0170  16055121723:00.p
00000030: c676 3300 6372 6964 3a7e 7e32 467e 7e32  .v3.crid:~~2F~~2
00000040: 4662 6473 2e74 767e 7e32 4638 3736 3536  Fbds.tv~~2F87656
00000050: 3939 3633 2d68 6d69 3a30 3031 3030 3030  9963-hmi:0010000
00000060: 3030 3136 4232 3339 3830 303a 3030 0170  0016B239800:00.p
00000070: c6ad 2180 3133 3934 3634 3537 7694 96c1  ..!.13946457v...
00000080: ecf2 db81 ce49 1000 1b25 1705 0800 0808  .....I...%......
00000090: 7717 0500 001d 4e48 2047 4f6f 6937 3936  w.....NH GOoi796
000000a0: 3434 3136 3339 3433 3531 363a 313b 0170  44163943516:1;.p
000000b0: dec6 dea0 6372 6964 3a7e 7e32 467e 7e32  ....crid:~~2F~~2
000000c0: 4662 6472 2e74 767e 7e32 4638 7539 3637  Fbdr.tv~~2F8u967
000000d0: 3039 3534 2d69 ed61 3a30 3031 3034 3030  0954-i.a:0010400
000000e0: 3030 3136 4530 4236 4231 363a 3237 0170  0016E0B6B16:27.p
000000f0: dece 11a0 3133 3934 3633 3139 7796 16c2  ....13946319w...
00000100: ee94 978c a8fe 1000 1d25 1705 0800 0808  .........%......
00000110: 7717 0500 001d 5265 6769 6f4e 4544 3739  w.....RegioNED79
00000120: 3634 3431 3633 3839 3633 3131 3a34 1401  644163896311:4..
00000130: 7106 fdf9 8863 7269 7996 95c4 95fc 9e66  q....criy......f
00000140: 8363 1000 2323 1705 0800 0808 7717 0500  .c..##......w...
00000150: 001d 5370 6f72 7420 546f 6461 f932 3434  ..Sport Toda.244
00000160: 3433 b934 3330 3439 3133 3a34 3501 f12b  43.4304913:45..+
00000170: 7944 e063 7269 643a 7e7e 3246 7e7e 3246  yD.crid:~~2F~~2F
00000180: 6264 732e 7476 7e7e 3246 3336 7332 3037  bds.tv~~2F36s207
00000190: 3635 392d 696d 693a 3030 3130 3030 3030  659-imi:00100000
000001a0: 3031 3646 3136 4145 3134 3b30 3001 712b  016F16AE14;00.q+
000001b0: 8600 8031 3379 3436 3335 3281 0296 9683  ...13y46352.....
000001c0: accc 80dd b7f7 1000 3325 1705 0800 0808  ........3%......
000001d0: 7717 0500 001d 476c 7573 656e 2062 696a  w.....Glusen bij
000001e0: 2064 6520 4275 7265 6e37 3936 3434 3136   de Buren7964416
000001f0: 3338 3936 3030 323a 3231 0171 2907 0c60  3896002:21.q)..`
f43e1cf8a297b4d6e79e7c4a8e84d96167d286b1fdf34f5c80b105b3454f2328  test.bin

Try 2:

% edl rs 27444873 1 test.bin; xxd test.bin; sha256sum test.bin
[...]
Dumped sector 27444873 with sector count 1 as test.bin.
00000000: 3310 0025 0517 0508 0008 2877 1705 0000  3..%......(w....
00000010: 1d53 6c61 6170 204c 65eb 6b65 7239 3038  .Slaap Le.ker908
00000020: 3136 3035 3531 3231 3732 333a 3030 0170  16055121723:00.p
00000030: c676 3300 6372 6964 3a7e 7e32 467e 7e32  .v3.crid:~~2F~~2
00000040: 4662 6473 2e74 767e 7e32 4638 3736 3536  Fbds.tv~~2F87656
00000050: 3939 3633 2d68 6d69 3a30 3031 3030 3030  9963-hmi:0010000
00000060: 3030 3136 4232 3339 3830 303a 3030 0170  0016B239800:00.p
00000070: c6ad 2180 3133 3934 3634 3537 7694 96c1  ..!.13946457v...
00000080: ecf2 db81 ce49 1000 1b25 1705 0800 0808  .....I...%......
00000090: 7717 0500 001d 4e48 2047 4f6f 6937 3936  w.....NH GOoi796
000000a0: 3434 3136 3339 3433 3531 363a 313b 0170  44163943516:1;.p
000000b0: dec6 dea0 6372 6964 3a7e 7e32 467e 7e32  ....crid:~~2F~~2
000000c0: 4662 6473 2e74 767e 7e32 4638 7539 3637  Fbds.tv~~2F8u967
000000d0: 3039 3534 2d69 ed61 3a30 3031 3034 3030  0954-i.a:0010400
000000e0: 3030 3136 4530 4236 4231 363a 3237 0170  0016E0B6B16:27.p
000000f0: dece 11a0 3133 3934 3633 3139 7796 16c2  ....13946319w...
00000100: ee94 978c a8fe 1000 1d25 1705 0800 0808  .........%......
00000110: 7717 0500 009d 5265 6769 6f4e 4544 3739  w.....RegioNED79
00000120: 3634 3431 3633 3839 3633 3131 3a34 1401  644163896311:4..
00000130: 7106 fdf9 8863 7269 7996 85c4 95fc 9e66  q....criy......f
00000140: 8363 1000 2323 1705 0800 0808 7717 0500  .c..##......w...
00000150: 001d 5370 6f72 7420 546f 6461 f932 3434  ..Sport Toda.244
00000160: 3433 b934 3330 3439 3133 3a34 3501 f12b  43.4304913:45..+
00000170: 7944 e063 7269 643a 7e7e 3246 7e7e 3246  yD.crid:~~2F~~2F
00000180: 6264 732e 7476 7e7e 3246 3336 7332 3037  bds.tv~~2F36s207
00000190: 3635 392d 696d 693a 3030 3130 3030 3030  659-imi:00100000
000001a0: 3031 3646 3136 4145 3134 3a30 3001 712b  016F16AE14:00.q+
000001b0: 8600 8031 3379 3436 3335 3281 0296 9683  ...13y46352.....
000001c0: accc 80dd b7f7 1000 3325 1705 0800 0808  ........3%......
000001d0: 7717 0500 001d 476c 7573 656e 2062 696a  w.....Glusen bij
000001e0: 2064 6520 4275 7265 6e37 3936 3434 3136   de Buren7964416
000001f0: 3338 3936 3030 323a 3231 0171 2907 0c60  3896002:21.q)..`
e07078519176a6bbd98dd4aa8305ea3153f195333dadc91f526ef34f67719b1a  test.bin

Try 3:

% edl rs 27444873 1 test.bin; xxd test.bin; sha256sum test.bin
[...]
Dumped sector 27444873 with sector count 1 as test.bin.
00000000: 3310 0025 0517 0508 0008 2877 1705 0000  3..%......(w....
00000010: 1d53 6c61 6170 204c 65eb 6b65 72b9 3038  .Slaap Le.ker.08
00000020: 3136 3035 3531 3231 3732 333a 3030 0170  16055121723:00.p
00000030: c676 3300 6372 6964 3a7e 7e32 467e 7e32  .v3.crid:~~2F~~2
00000040: 4662 6473 2e74 767e 7e32 4638 3736 3536  Fbds.tv~~2F87656
00000050: 3939 3633 2d68 6d69 3a30 3031 3030 3030  9963-hmi:0010000
00000060: 3030 3136 4232 3339 3830 303a 3030 0970  0016B239800:00.p
00000070: c6ad 2180 3133 3934 3634 3537 7696 96c1  ..!.13946457v...
00000080: ecf2 db81 ce49 1000 1b25 1705 0800 0808  .....I...%......
00000090: 7717 0500 001d 4e48 2047 4f6f 6937 3936  w.....NH GOoi796
000000a0: 3434 3136 3339 3433 3531 363a 313b 0170  44163943516:1;.p
000000b0: dec6 dea0 6372 6964 3a7e 7e32 467e 7e32  ....crid:~~2F~~2
000000c0: 4662 6473 2e74 767e 7e32 4638 7539 3637  Fbds.tv~~2F8u967
000000d0: 3039 3534 2d69 ed69 3a30 3031 3034 3030  0954-i.i:0010400
000000e0: 3030 3136 4530 4236 4231 363a 3237 0170  0016E0B6B16:27.p
000000f0: dece 11a0 3133 3934 3633 3139 7796 16c2  ....13946319w...
00000100: ee94 978c a8fe 1000 1d25 1705 0800 0808  .........%......
00000110: 7717 0500 001d 5265 6769 6f4e 4544 3739  w.....RegioNED79
00000120: 3634 3431 3633 3839 3633 3131 3a34 1401  644163896311:4..
00000130: 7106 fdf9 8863 7269 7996 85c4 95fc 9e66  q....criy......f
00000140: 8363 1000 2323 1705 0800 0808 7717 0500  .c..##......w...
00000150: 001d 5370 6f72 7420 546f 6461 f932 3434  ..Sport Toda.244
00000160: 3433 b934 3330 3439 3133 3a34 3501 712b  43.4304913:45.q+
00000170: 7944 e063 7269 643a 7e7e 3246 7e7e 3246  yD.crid:~~2F~~2F
00000180: 6264 732e 7476 7e7e 3246 3336 7332 3037  bds.tv~~2F36s207
00000190: 3635 392d 696d 693a 3030 3130 3030 3030  659-imi:00100000
000001a0: 3031 3646 3136 4145 3134 3b30 3001 712b  016F16AE14;00.q+
000001b0: 8600 8031 3379 3436 3335 3281 0296 9683  ...13y46352.....
000001c0: accc 80dd b7f7 1080 3325 1705 0800 0808  ........3%......
000001d0: 7717 0500 001d 476c 7573 656e 2062 696a  w.....Glusen bij
000001e0: 2064 6520 4275 7265 6e37 3936 3434 3136   de Buren7964416
000001f0: 3338 3936 3030 323a 3231 0171 2907 0c60  3896002:21.q)..`
c7cef234940ac2c344022b9bd573f490dee953e46d274cb6df3d3dd098c6fd94  test.bin

Unfortunately a lot of the bit flips are more often wrong than right, which means I can't just "resolve" this by reading the partition 3 or 7 times, and write some tool that compares all files and favours the bits that were returned the most often.
A good example is "Glusen bij de Buren" (at 0000001d0). I've seen this as "GlUren bij de Buren" or "Gluren cij de Buren" as well, but out of my 7 attempts the bit flips were way more common than the correct "Gluren bij de Buren", which I've only seen once or twice.

If this is something going wrong on protocol or communication level, I might be able to recover some data, but if the NAND is just wrong this often I don't think I can really recover anything for this family member. Strings you could technically maybe recover with a dictionary, but it's JPEG's I'm after which means it's no use..

Anyways help is appreciated!

@RenateUSB
Copy link

RenateUSB commented Nov 2, 2024

What loader did you use?
If you use some verbose command you can get the 532 bytes of extended CSD and we can see if your eMMC is healthy.

@smiba
Copy link
Author

smiba commented Nov 2, 2024

What loader did you use?

None, the device is unlocked and not protected in any way so I didn't think it would be needed. Device uses a MSM8916 so if you have recommendations to try feel free to let me know.

If you use some verbose command you can get the 352 bytes of extended CSD and we can see if your eMMC is healthy.

What command would it be? I'd be happy to give it a try and report back but I'm unsure what I would need to execute

Thanks in advance!

@RenateUSB
Copy link

@smiba
Copy link
Author

smiba commented Nov 2, 2024

https://github.com/bkerler/Loaders/tree/main/qualcomm/factory/msm8916

007050e100000000_394a2e47cf830150_fhprg_peek.bin: bitflips
007050e100000000_8ecf3eaa03f772e2_fhprg_peek.bin: bitflips
007050e100170003_612517313979e703_fhprg_peek.bin: bitflips
007050e100420001_ec287e5aa0bf4e3e_fhprg_peek.bin: stuck on "Trying to read first sector"
007050e100420011_625801c51eee90d7_fhprg_peek.bin: stuck on "Trying to read first sector"
007060e100000000_cc3153a802939b90_fhprg_peek.bin: bitflips

https://github.com/bkerler/Loaders/tree/main/qualcomm/model_generic/msm8916

0000000000000000_01cd23062a7ec6fa_fhprg_peek.bin: bitflips
0000000000000000_068a7ed25e47574d_fhprg_peek.bin: bitflips
0000000000000000_0d9cc673abd822f0_fhprg_peek.bin: bitflips
0000000000000000_0ef055b63e6daafc_fhprg_peek.bin: bitflips
0000000000000000_1532c1fa086364a5_fhprg_peek.bin: bitflips
0000000000000000_2ec22142a340cdad_fhprg_peek.bin: bitflips
0000000000000000_47ca875a3a0a9151_fhprg_peek.bin: ERROR: Failed to authenticate Digital Signature, next command Device is in Sahara error state
0000000000000000_5b4d174f70511c01_fhprg_peek.bin: bitflips
0000000000000000_73813896f819a064_fhprg_peek.bin: bitflips
0000000000000000_7f6f2a51627d7062_fhprg_peek.bin: bitflips
0000000000000000_8a2a659c0feb8e13_fhprg_peek.bin: Device is in Sahara error state
0000000000000000_8de5cb2830e00f37_fhprg_peek.bin: bitflips
0000000000000000_98a910618c269d84_fhprg_peek.bin: bitflips
0000000000000000_98fdbc6dda8a85a1_fhprg_peek.bin: bitflips
0000000000000000_999c8ff09a8f53dd_fhprg_peek.bin: Device is in Sahara error state
0000000000000000_a2c781ec076e1a98_fhprg_peek.bin: bitflips
0000000000000000_a2f8675e7d92d5e5_fhprg_peek.bin: bitflips
0000000000000000_a74b29c7842a5c51_fhprg_peek.bin: ERROR: Failed to authenticate Digital Signature, next command Device is in Sahara error state
0000000000000000_bd65d9475cbd3924_fhprg_peek.bin: bitflips
0000000000000000_bf1873dc45629b51_fhprg_peek.bin: bitflips
0000000000000000_c1c9484cb6850c1d_fhprg_peek.bin: bitflips
0000000000000000_cefdae1b2a8a7de7_fhprg_peek.bin: bitflips
0000000000000000_d60de023930869bc_fhprg_peek.bin: bitflips
0000000000000000_fcadfb907b7b36b3_fhprg_peek.bin: bitflips

Obviously power cycling the device between each loader. Any other ideas? Could this be something going wrong on protocol level?

@RenateUSB
Copy link

Ok, all the loaders that are in MSM8916 are too old to have the CSD data. The loaders for MSM8996 are compatible with the MSM8916. There are three loaders. Try them with verbose or logs or something. Look for eMMC_RAW_DATA. There should be three lines with a total of 532 bytes. If you find it you can stop trying loaders. Post the three lines.

https://github.com/bkerler/Loaders/blob/main/qualcomm/factory/msm8996/009470e100000021_c3251d67b89a7c3a_fhprg_peek.bin

https://github.com/bkerler/Loaders/blob/main/qualcomm/factory/msm8996/009470e12a703db9_c0c66e278fe81226_fhprg_peek.bin

https://github.com/bkerler/Loaders/blob/main/qualcomm/model_generic/msm8996/0000000000000000_b53fb23d1953decb_fhprg_peek.bin

@smiba
Copy link
Author

smiba commented Nov 3, 2024

All of the three loaders react the same:

% edl --loader=0000000000000000_b53fb23d1953decb_fhprg_peek.bin
/opt/homebrew/bin/edl:4: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html
  __import__('pkg_resources').run_script('edlclient==3.62', 'edl')
Keystone library is missing (optional).
Qualcomm Sahara / Firehose Client V3.62 (c) B.Kerler 2018-2024.
main - Using loader /Users/isa/Downloads/0000000000000000_b53fb23d1953decb_fhprg_peek.bin ...
main - Waiting for the device
main - Device detected :)
sahara - Protocol version: 2, Version supported: 1
main - Mode detected: sahara
sahara -
Version 0x2
------------------------
HWID:              0x007050e100000000 (MSM_ID:0x007050e1,OEM_ID:0x0000,MODEL_ID:0x0000)
CPU detected:      "MSM8916"
PK_HASH:           0xcc3153a80293939b90d02d3bf8b23e0292e452fef662c74998421adad42a380f
Serial:            0x15f6f297

sahara - Protocol version: 2, Version supported: 1
sahara - Uploading loader /Users/isa/Downloads/0000000000000000_b53fb23d1953decb_fhprg_peek.bin ...
sahara - 32-Bit mode detected.
sahara - Firehose mode detected, uploading...
sahara
sahara - [LIB]: Error: Cannot receive specified number of program headers
Connection detected, quiting.

% edl rs 27444873 1 test.bin
/opt/homebrew/bin/edl:4: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html
  __import__('pkg_resources').run_script('edlclient==3.62', 'edl')
Keystone library is missing (optional).
Qualcomm Sahara / Firehose Client V3.62 (c) B.Kerler 2018-2024.
main - Trying with no loader given ...
main - Waiting for the device
main - Device detected :)
main - Mode detected: sahara
Traceback (most recent call last):
  File "/opt/homebrew/bin/edl", line 4, in <module>
    __import__('pkg_resources').run_script('edlclient==3.62', 'edl')
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/lib/python3.13/site-packages/pkg_resources/__init__.py", line 754, in run_script
    self.require(requires)[0].run_script(script_name, ns)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/lib/python3.13/site-packages/pkg_resources/__init__.py", line 1743, in run_script
    exec(code, namespace, namespace)
    ~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/lib/python3.13/site-packages/edlclient-3.62-py3.13.egg/EGG-INFO/scripts/edl", line 393, in <module>
    base.run()
    ~~~~~~~~^^
  File "/opt/homebrew/lib/python3.13/site-packages/edlclient-3.62-py3.13.egg/EGG-INFO/scripts/edl", line 293, in run
    version = conninfo.get("data").version
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: type object 'req' has no attribute 'version'

Log for loader + printgpt looks as follows (without posting python code traces, as it seems irrelevant and noise for this use case):

read:0x30
RX:010000003000000002000000010000000004000000000000000000000000000000000000000000000000000000000000
TX:020000003000000002000000010000000000000003000000010000000200000003000000040000000500000006000000
read:0x8
RX:0b00000008000000
TX:0d0000000c00000001000000
read:0x10
RX:0e000000100000000100000004000000
TX:0f0000000c00000001000000
cmd_exec:0x4
RX:97f2f615
TX:0d0000000c00000002000000
read:0x10
RX:0e000000100000000200000018000000
TX:0f0000000c00000002000000
cmd_exec:0x18
RX:00000000e150700000000000e150700000000000e1507000
TX:0d0000000c00000003000000
read:0x10
RX:0e000000100000000300000060000000
TX:0f0000000c00000003000000
cmd_exec:0x60
RX:cc3153a80293939b90d02d3bf8b23e0292e452fef662c74998421adad42a380fcc3153a80293939b90d02d3bf8b23e0292e452fef662c74998421adad42a380fcc3153a80293939b90d02d3bf8b23e0292e452fef662c74998421adad42a380f
TX:0c0000000c00000003000000
read:0x30
RX:010000003000000002000000010000000004000003000000000000000000000000000000000000000000000000000000
TX:020000003000000002000000010000000000000000000000010000000200000003000000040000000500000006000000
read:0x14
RX:03000000140000000d0000000000000034000000
TX:7f454c460201010000000000000000000200b70001000000302b2106000000004000000000000000000000000000000000000000
read:0x10
RX:04000000100000000d00000014000000

@RenateUSB
Copy link

That's just the regular Sahara stuff. I'm looking for the Firehose legible stuff when you try to read some sectors. It should in plain English, err XML say:

<log value="INFO: eMMC_RAW_DATA[0:177]00000000000000000000000000000000390100603501000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000002000000000010000000000000000000000000000000000000000000000000000DD0400070001000000150020000000000000000000" />
<log value="INFO: eMMC_RAW_DATA[178:355]003800000000010000000000000008000200571FFF0600000000000808080808080100C0A5030F151408081001110108200007F7F755110000000000000001640000000000FF32000300000004000000000000000000010801010101000000000000000000000000000000000000000000000000000000000000000000000000001F010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" />
<log value="INFO: eMMC_RAW_DATA[356:532]0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001FFFF0000000001032305000301203C010101000000000000004D01013232014FD0FF03598FEFFFFFFF0000408A" />

And through a sleight of hand we get:

Manufacturer: 0x32 Phison
Version:      5.1
User size:    61194240 blocks, 29.2 GB
Boot size:    8192 blocks, 4.0 MB
RPMB size:    8192 blocks, 4.0 MB
Cache size:   768 blocks
Life used:    A: <10%, B: <10%
End of life:  Normal

@RenateUSB
Copy link

Sorry, my mistake. All the 8996 are 64 bit ELFs. The 8916 is 32 bit. At least this EDL client gives you helpful and pertinent error message, "Cannot receive specified number of program headers". ???

Your device is cc3153 and not Secure Boot so many loaders could work.

You're in luck. There appears to be only 5 loaders that are 32 bit, support MSM8916, support eMMC_RAW_DATA.

qualcomm/model_generic/wear3100/000520e100000000_cc3153a80293939b_fhprg_peek.bin
quectel/001990e100040000_d9357db88795b5a8_fhprg_sdx62_lemur_rm520n_gl.bin
samsung/000460e100200000_bd9277227da2ea0a_fhprg_peek.bin
samsung/000560e100200000_9299a622487a9a04_fhprg.bin
samsung/000560e100200000_a5bc77181d20c21d_fhprg.bin

@smiba
Copy link
Author

smiba commented Nov 4, 2024

quectel/001990e100040000_d9357db88795b5a8_fhprg_sdx62_lemur_rm520n_gl.bin
samsung/000460e100200000_bd9277227da2ea0a_fhprg_peek.bin

Both don't complete the loader upload process

The others do, but all get stuck after this packet:
TX:<?xml version="1.0" encoding="UTF-8" ?><data><configure MemoryName="eMMC" Verbose="0" AlwaysValidate="0" MaxDigestTableSizeInBytes="2048" MaxPayloadSizeToTargetInBytes="1048576" ZLPAwareHost="1" SkipStorageInit="0" SkipWrite="0"/></data>

After this the only thing returned are Timeouts

Thanks for your help again, it's much appreciated. My next step might be to just desolder the NAND and read it out directly at this point..

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants