hwti / G-010S-A

All about Nokia G-010S-A GPON SFP
186 stars 34 forks source link

Firmware dump HW: 3FE46541AADA Image version 3FE46398BFGB18 #27

Open GhostlyCrowd opened 1 year ago

GhostlyCrowd commented 1 year ago

the HardwareVersion:3FE46541AADA the ICS:01 the YPSerialNum: F965ACBD the CleiCode:BVL3A8JNAA the Mnemonic:G-010S-A the ProgDate:190806

image0_version=3FE47111BFHB32 image1_version=3FE46398BFGB18

Any of these needed? 3FE46541AADA.zip

hwti commented 1 year ago

You have a different HardwareVersion, the usual one is 3FE46541AAAA. But your dump is exactly the same as 3FE47111BFHB32.bin in the repository, so I expect you second image to be the same as 3FE46398BFGB18.bin.

iderzhav commented 1 year ago

You have a different HardwareVersion, the usual one is 3FE46541AAAA. But your dump is exactly the same as 3FE47111BFHB32.bin in the repository, so I expect you second image to be the same as 3FE46398BFGB18.bin.

Hello, I have G-010S-A (HW: 3FE46541AADA) with new flash chip (don't have backup of original one). Is it possible to restore my HW with 3FE46541AADA.bin only? I can successfully load uBoot, but have no idea how to completely restore it from uBoot environment.

tdmadam commented 1 year ago

Hello, I have G-010S-A (HW: 3FE46541AADA) with new flash chip (don't have backup of original one). Is it possible to restore my HW with 3FE46541AADA.bin only? I can successfully load uBoot, but have no idea how to completely restore it from uBoot environment.

Uploading image 3FE46541AADA.bin alone may not be enough. If you have blank flash you will at least need a uboot, uboot_env, one image and probably configfs and ri partitions. Bootloader will need to be loaded via YMODEM/XMODEM and the rest via netconsole or over TFTP. @wteiken wrote a great guide on how to recover G-010S-A using these tools.

https://github.com/wteiken/G-010S-A/blob/main/unbricking.md

Flash physical memory map for reference

Offset Length Description FALCON flash display
0x000000 0x040000 uboot md B0000000
0x040000 0x080000 uboot_env md B0040000
0x0C0000 0x600000 image0 md B00C0000
0x6C0000 0x600000 image1 md B06C0000
0xCC0000 0x100000 configfs md B0CC0000
0xDC0000 0x210000 logfs md B0DC0000
0xFD0000 0x010000 ri md B0FD0000
0xFE0000 0x010000 sfp md B0FE0000
0xFF0000 0x010000 ribackup md B0FF0000
wteiken commented 1 year ago

The u-boot env contains things like device specific calibration for the optics, so not sure how successful that effort will be. I have an 3FE46541AADA, I'd be happy to send you copies of u-boot, ri and u-boot env from them. But even with that I am not 100% sure you will get the sfp properly working if the calibration for the laser is off.

iderzhav commented 1 year ago

thank you, guys. I initially did "Short the Flash and Boot" procedure with 1224ABORT.bin, unfortunately, I didn't know the importance of uboot_env partition and initialized it by "env default -a -f".

I have flashed 3FE46541AADA.bin to image0 region, but has a problem with rootfs: .... [ 0.376000] VFS: Mounted root (squashfs filesystem) readonly on device 31:3. [ 0.384000] Freeing unused kernel memory: 184K (80332000 - 80360000) procd: Console is alive procd: - preinit - mount: mounting /dev/ on /configs failed: Block device required Could not open mtd device: /dev/mtd Could not open mtd device: /dev/mtd Could not open mtd device: /dev/mtd Can't open device for writing! mount: mounting /dev/ on /configs failed: Block device required mount: mounting /dev/ on /logs failed: Block device required Could not open mtd device: /dev/mtd Could not open mtd device: /dev/mtd Could not open mtd device: /dev/mtd Can't open device for writing! mount: mounting /dev/ on /logs failed: Block device required mv: can't create '/configs/image_version': Read-only file system Press the [f] key and hit [enter] to enter failsafe mode Press the [1], [2], [3] or [4] key and hit [enter] to select the debug level procd: - early - procd: - ubus - procd: - init - Please press Enter to activate this console. [ 11.152000] error: cannot get MTD device [ 11.156000] ri_init: unable to init i2c bus, result=ffffffff [ 11.168000] error: cannot get MTD device [ 11.172000] ri_init: unable to init i2c bus, result=ffffffff [ 11.180000] error: cannot get MTD device [ 11.184000] Unable to init i2c bus. [ 11.188000] IFXOS, Version 1.6.6 (c) Copyright 2009, Lantiq Deutschland GmbH [ 11.200000] error: cannot get MTD device [ 11.204000] ri_init: unable to init i2c bus, result=ffffffff [ 11.212000] error: cannot get MTD device [ 11.216000] Unable to init i2c bus. [ 11.224000] error: cannot get MTD device [ 11.228000] ri_init: unable to init i2c bus, result=ffffffff [ 11.236000] error: cannot get MTD device [ 11.240000] Unable to init i2c bus. [ 11.312000] NET: Registered protocol family 10 [ 11.324000] error: cannot get MTD device [ 11.324000] ri_init: unable to init i2c bus, result=ffffffff [ 11.336000] error: cannot get MTD device [ 11.336000] Unable to init i2c bus. [ 11.348000] error: cannot get MTD device [ 11.352000] ri_init: unable to init i2c bus, result=ffffffff [ 11.360000] error: cannot get MTD device ...

ri dump:

FALCON => md B0FD0000 b0fd0000: 4c413130 38304c43 34454633 31343536 LA1080LC4EF31456 b0fd0010: 41444141 20203130 20202020 39462020 ADAA 10 9F b0fd0020: 38454334 56423436 3841334c 41414e4a 8EC4VB468A3LAANJ b0fd0030: 31302d47 412d5330 34303132 0bf43431 10-GA-S04012..41 b0fd0040: 7f39869f 30300000 20200100 00002020 .9..00.. .... b0fd0050: 01000000 89674523 64e84cf9 00000000 .....gE#d.L..... b0fd0060: 00000000 34454633 32343536 41444141 ....4EF32456ADAA b0fd0070: 30303030 30303030 30303030 3030e5c7 00000000000000.. b0fd0080: 20202020 20202020 61727375 6e696d64 arsunimd b0fd0090: 31202020 35343332 20202020 64612020 1 5432 da b0fd00a0: 616e696d 6e696d64 434c4120 55474623 animnimdCLA UGF# b0fd00b0: 30303030 30303030 30303030 30303030 0000000000000000 b0fd00c0: 30303030 30303030 30303030 30303030 0000000000000000 b0fd00d0: 30303030 30303030 30303030 30303030 0000000000000000 b0fd00e0: 58585858 30303030 30303030 30303030 XXXX000000000000 b0fd00f0: 30303030 30303130 30303030 3030e496 00000010000000..

sfp dump:

FALCON => md B0FE0000 b0fe0000: 00010403 00020000 03000000 ff280020 .............(. b0fe0010: 00000000 41434c41 4c4c4554 4e454355 ....ACLALLETNECU b0fe0020: 20202054 20202020 34454633 31343536 T 4EF31456 b0fe0030: 20204141 20202020 31303030 dcff1e05 AA 1000.... b0fe0040: 00001a00 4c434c41 30424146 37333533 ....LCLA0BAF7353 b0fe0050: 20202020 33303731 55003431 6305f068 3071U.41c..h b0fe0060: 41434c41 204c4554 34454633 31343536 ACLA LET4EF31456 b0fe0070: 31304141 4c564232 4a384133 9741414e 10AALVB2J8A3.AAN b0fe0080: 00000000 00000000 00000000 00000000 ................ b0fe0090: 00000000 00000000 00000000 00000000 ................ b0fe00a0: 00000000 00000000 00000000 00000000 ................ b0fe00b0: 00000000 00000000 00000000 00000000 ................ b0fe00c0: 00000000 00000000 00000000 00000000 ................ b0fe00d0: 00000000 00000000 00000000 00000000 ................ b0fe00e0: 00000000 00000000 00000000 00000000 ................ b0fe00f0: 00000000 00000000 00000000 00000000 ................ b0fe0100: 00d80055 00d80055 ca765a87 ca765a87 ...U...U.vZ..vZ. b0fe0110: 7805204e 7805204e d42b007d d42b007d x. Nx. N.+.}.+.} b0fe0120: 0f004006 0f004006 00000000 00000000 ..@...@......... b0fe0130: 00000000 00000000 00000000 00000000 ................ b0fe0140: 00000000 00000000 00000000 00000000 ................ b0fe0150: 00000000 00000000 00000000 14000000 ................ b0fe0160: e780d929 00000911 00000000 00020000 ...)............ b0fe0170: 00004001 00004001 00000000 00000000 ..@...@......... ... b0fe0ff0: 00000000 00000000 00000000 00000000 ................

wteiken commented 1 year ago

Given that the boot is starting ("Press the [1], [2], [3] or [4] key and hit [enter] to select the debug level" is from an openwrt script IIRC) I am not sure if it is the rootfs itself. It could be an issue in the u-boot env (e.g., parameter for the mtd layout not passed into the boot), or an issue with the other partitions not set up.

I attached a u-boot environment I copied from a new module for you to compare. "goi_config" is the calibration for the optics, so I would not use that from this env.

env.txt.gz

iderzhav commented 1 year ago

@wteiken , thank you. It helped me to boot linux image. I continue unbricking it.