hwti / G-010S-A

All about Nokia G-010S-A GPON SFP
190 stars 35 forks source link

can this firmware flash to Huawei MA5671A #12

Open kismeter opened 2 years ago

kismeter commented 2 years ago

Hello, do you know if it is possible to flash this firmware to Huawei MA5671A pin stick? could you also upload mtd2 image? Thanks.

moriel5 commented 2 years ago

Unless it has a Nokia G-010S-A which is actually part of it, there is no reason for this to work on it.

hwti commented 2 years ago

There are hardware differences, like the SFP pins used for the serial port. There could be issues with calibration data too.

So I don't recommend cross-flashing. It might work, but you would need to do a full backup first, and be prepared to recover using the boot ROM and the serial port.

moriel5 commented 2 years ago

@hwti Thanks, I at first thought that it was a Fiber modem (like the HG8010H), hence my mistake.

XanSama commented 2 years ago

@kismeter Just a heads up that you actually can flash this firmware onto a Huawei MA5671A but you need some extra pieces. You will require a donor G-010S-A to grab the non-system partitions from.

I got this working with the following steps:

The MA5671A is now essentially a G-010S-A with a slightly different serial pin-out that no longer requires a solder-mod to make it work on some NICs.

Edit: While it's been working like this it was doing some flapping. Flapping seems to be resolved by replacing one or more of the following files with the originals from the MA5671A image:

/etc/config/goi_config
/etc/config/goi_defaults
/etc/config/synce
/etc/optic/goi_table_laser_ref.csv
/etc/optic/goi_table_laser_ref_base.csv
/etc/optic/goi_table_vapd_bd.csv
/etc/uci-defaults/sfp-pins-preconfig
/lib/firmware/sfp_i2c_vpe.bin
/lib/modules/3.10.49/gpio-button-hotplug.ko
/opt/lantiq/bin/sfp_i2c

The address ranges for each of the partitions from the G-010S-A can be found here for posterity:

#to write mtd0(uboot)
sf probe 0
sf erase 0 40000
loadb
sf write 80800000 0 40000                

#to write mtd1(uboot_env)
sf probe 0
sf erase 40000 80000
loadb
sf write 80800000 40000 80000 

#to write mtd2(image0)
sf probe 0
sf erase C0000 600000
loadb
sf write 80800000 C0000 600000

#to write mtd3(linux)
sf probe 0
sf erase 6C0000 600000
loadb
sf write 80800000 6C0000 600000

#to write mtd6(configfs)
sf probe 0
sf erase CC0000 100000
loadb
sf write 80800000 CC0000 100000

#to write mtd7(logfs)
sf probe 0
sf erase DC0000 210000
loadb
sf write 80800000 DC0000 210000

#to write mtd8(ri)
sf probe 0
sf erase FD0000 10000
loadb
sf write 80800000 FD0000 10000

#to write mtd9(sfp)
sf probe 0
sf erase FE0000 10000
loadb
sf write 80800000 FE0000 10000

#to write mtd10(ribackup)
sf probe 0
sf erase FF0000 10000
loadb
sf write 80800000 FF0000 10000
moriel5 commented 2 years ago

@kismeter Just a heads up that you actually can flash this firmware onto a Huawei MA5671A but you need some extra pieces. You will require a donor G-010S-A to grab the non-system partitions from.

Interesting, since I personally would rather have a Lantiq chipset over Broadcom or Realtek, this could be a good idea (so long as I have the budget, this is pretty much the most expensive option for me currently, due to shipping costs), as the G-010S-P is not in Bezeq's whitelist (the G-010G-P and G-010G-Q are, despite sharing the same chipset as the G010S-P, however those are not SFP modules, but full blown ONT gateways without SFP at all).

The reason I personally would prefer Lantiq, is that the Falcon chipset found in the G-010S-A and the MA5671A was released while Lantiq was still an Intel company (they were later sold to Maxlinear), and their chipsets at the time had enjoyed more open documentation (not everything, there were still blobs, such as the xDSL firmware, and even nonredistributable blobs, such as for Vectoring and Super-vectoring on VDSL2), which fostered a lot of community development (To this day, I think that the Netgear DM200 is one of the best VDSL2 gateways (bonus points to whoever manages to mod it's RJ-45 port to accept gigabit connections, as the controller does support those speeds, and all of the necessary contacts are indeed soldered to the port itself, no idea whether anything else is missing), thanks to that.

This is in contrast to Broadcom, especially after they were bought by Avago (who later dissolved them into themselves and renamed the main company as Broadcom,turning the Avago brand name into a daughter brand), who go out of their way to make open source development as hard as possible (main reason why Broadcom chipsets are not as well supported), although that is mainly with WiFi, with ethernet and SGMII it may be different (after all, they never added any hardships to opening up the Ortega family's specifications, with that family enjoying the possibility of being fully blobless open-source (the BCM5719 is still a WIP, especially discrete cards such as my NEC EXP182a).

And Realtek... is just plain bad at the code level (not to mention, not much open-source development either, beyond the very basics), so I can say that the G-010S-Q and any RTL960x NICs will have a hard time if pushed to 2.5G (they will link at those speeds, however reliable speeds with load balancing will be limited to around 60-70% at best, so perhaps around 1.5Gbps, and overall efficiency will be lower with slower speeds than with chipsets from another manufacturers). Stability is also an issue with all Realtek chipsets, however with Ethernet and SGMII, not to the level that I would worry (Realtek WiFi, on the other hand, is a whole can of worms).