About U-Boot bootloader



  • Hello.

    I'm trying to build bootloader for my Omega 2. I don't like Omega2's stock bootloader because it does not allow me to flash using TFTP over Ethernet or other various features exists in Ralink U-Boot (i.e. Linkit 7688's one, various Mediatek based home wrts, etc). Since bootloader flashing is quite dangerous (possible to "hard brick" it -- need heat gun and SOIC clip to re-flash it), I want to minimize my mistake. So I looked for Omega2's hacked Ralink U-Boot source code but I couldn't find any.

    My question is:

    • Ralink U-Boot is based on U-Boot (GPLv2). Also, Omega2's bootloader seems to based on Ralink U-Boot (It clearly states "Onion Omega2 UBoot Version: 4.3.0.3" in their bootloader UART output), so it is subjected to GPLv2. So Onion MUST release its source code. but I cannot find one. Are they violating GPL?
    • Whether Onion keeps violating GPL or not, I'm going to compile Linkit bootloader or Padavan bootloader for my Omega. Is there any major chip list (SPI flash, DRAM, etc) available? I just don't want hurting Omega2's EMI shield to read part numbers.


  • @perillamint- Without a JTAG port on the Omegas, makes sense to me.

    Lazar (@Lazar-Demin) is the guy to ask, he did say this here a few days ago.

    We hear what you guys are saying in terms of the community working [to] make the firmware better, so we will be open sourcing the firmware sometime in March as well :)

    Thank you all for your continued patience and support for a young company <3



  • Omega 2+ Flash is an MX25L25645GM2I-10G, which incidentally is a fatally erroneous choice for an MT7688 system, as due to its stateful addressing mode with power-on default of 3-byte mode cannot be operated to utilize its full capacity in a way that will allow the system to reliably restart after unexpected resets. Macronix's alternative MX25L25735F with permanent 4-byte addressing, or another vendor's chip with stateless addressing or configurable power-on default would have been a suitable choice. Note the U-Boot is typically imprecise in software differentiation of Macronix parts in terms of the messages printed.

    DDR is an NT5TU64M16HG

    The plain Omega2 will of course use different flash and RAM, and would not appear to have the same reset issue with flash selection.



  • Any news about the Omega2+ u-boot source code?



  • As much as I like the Omega2, so annoying it is to see what a terribly hard time the onion devs seem to have to fulfill their GPL obligations, be it for the full LEDE setup, be it for the modified U-Boot :-(

    The latest changes in the published LEDE clone in Onion's github are from January.

    Come on, even Apple has learnt to develop in the open! Please @Lazar-Demin just push that LEDE tree of yours, including the .config, /files/* and possibly patches! And UBoot! As is!

    Nobody expects an untagged master branch to be anything but work in progress! If it does not build as-is, if some packages are missing because they are copyright issues (proprietary Wifi driver?) - still much better than months and months of void!

    And it would really be sad if you were working hard (I'm sure you are!) for the next Omega2 firmware without giving the community a chance to contribute to it!



  • such good belief in fellow man, luz. myself i have become sardonic when concerns this omega2. i can imagine they are busy with omega3 to get it ready for kickstarter and indiegogo. i'd be surprised actually if they released anything related to omega2 since it has been almost 5 months since 160 released.



  • @Douglas-Kryder yes, I tend to believe in good intentions until proven otherwise.
    You can call me naive ;-)

    But really doing open source is not easy - it's already not trivial to get the feel for open source as a developer, but it's unbelievable to see again and again how difficult it seems to be for decision makers. There's still a deeply ingrained anxiety that opening means giving options away, and thus could be a bad business decision. So even with good intentions, things tend to get stranded midway - instead of pushing through into the profit zone of real open source, which is free development resources!

    Had the firmware build been available for improvement (rather than replacement by stock LEDE as it is now), I bet the community would long have fixed many general Linux/LEDE/chipset issues and many questions on this forum could be answered by a simple link to a improved/fixed firmware image.

    BTW: I would prefer Onion spending time for developing cool new hardware they can sell for profit and sustain the company, rather than struggling with the tedious maintainance of a private LEDE tree!



  • @luz said in About U-Boot bootloader:

    BTW: I would prefer Onion spending time for developing cool new hardware they can sell for profit and sustain the company, rather than struggling with the tedious maintainance of a private LEDE tree!

    As it turns out (today's newsletter revealing it) - they did develop new hardware: the Omega2S :-)

    This one is targeted at OEMs, meaning people who use the Omega2 platform in their products - and rely on being able to build everything from sources! So finally publishing not only the complete LEDE setup but also the U-Boot modificiations gets essential now!


  • administrators

    @luz As you said, it is difficult to get the feel for open source as a developer but also as an organization as a whole. At the beginning of the year we had to spend quite a bit of engineering time and resources to deal with issues in the other areas of the company - logistics, customer support, etc - and open sourcing the build system took a back seat. We felt that we had to clean up a lot of our mess before exposing it to the community at large and didn't have the time to do it. We've gotten it to a decent shape now so...

    Onion's Omega2 & Omega2+ customized LEDE build system can be found at: https://github.com/OnionIoT/source/tree/lede-17.01

    This repo is a fork of lede-project's source repo, all of the Onion customizations can be found on the lede-17.01 branch.

    Note that the configuration does not select a WiFi driver. We had previously been using a proprietary driver but updates to the kernel have made this driver incompatible, ie it causes a kernel panic during the boot sequence. Instead of fixing this driver, we're putting our efforts into a new driver. Expect that to be released in August.

    If there are code, configuration, and/or fixes anyone would like to contribute, please submit a PR and we'll get to it as soon as we can.

    Also, be on the lookout for our u-boot as well in the near future!

    As always, happy hacking!



  • So what you're saying is that yet again, you've published "sources" for a wifi board, which actually have no wifi support, making them effectively useless.

    This by extension makes it impossible to use the 2S in a commercial product, as the user would be unable to satisfy their obligations to provide source until you satisfy yours.



  • i see it as what has been released to date do not provide for wifi but that they expect the wifi driver to be complete in at most 40 days. i would not consider the S module useless in that it gives dev/manufacturers ~40 days to physically work with the module ahead of the wifi release. i view the news and actions a positive, as long as the driver code is ready as stated. the developments, if sincere, are a step in the right direction


  • administrators

    The Omega2 and Omega2S WiFi works 100% if used loaded with the latest official firmware published by Onion.

    If you need wifi support in your own custom firmware now, try using the open source mt76 driver. We're working on the updated WiFi driver and, as Douglas Kryder mentioned, it will be released in, at most, 40 days.



  • @Lazar-Demin said in About U-Boot bootloader:

    The Omega2 and Omega2S WiFi works 100% if used loaded with the latest official firmware published by Onion.

    Your only available license to distribute the "latest official firmware published by Onion" requires that you make source for that version available - not an incomplete version, not a promise of some future version, but the actual sources matching the binary you distribute.



  • @Chris-Stratton no need to bash Onion for the WiFi driver. The root of the problem is Mediatek. They provide proprietary driver, with no source code. If you are lucky and sign a stack of NDAs Mediatek may let you peek at the source, but the NDA strictly forbids distributing the source of the driver.

    Strictly speaking the LEDE license does not prohibit a vendor from distributing binary drivers, so that is that. Sad as it is.

    It is exactly the same story with the LinkIt-Smart module - based on the same SOC. Binary wifi driver and that is it. Don't like it - don't use Mediatek hardware.

    The u-boot source code is another matter. @Lazar-Demin there is no much excuse for not providing updated u-boot repo. Please nudge the corresponding individuals.

    @Luz, the Omega 2S looks awfully similar to the HLK-7688A module (http://www.hlktech.net/product_detail.php?ProId=70). @Lazar-Demin for the 2S+ did you use the same SPI FLASH chip which had the 4b/3b addressing problem?



  • @Ghent - Mediatek's driver situation isn't exemplary, but at least for the linkit, if you follow their directions (and revert a few small things upstream repos subsequently broke), and type "make" you get a build with working WiFi, exactly the same as the build that ships on it, or optionally including your own customizations and bugfixes.

    If Onion would do that, people might not be pleased, but would be far more understanding, as then they'd be able to fix the problems in all the other areas of the system and still end up with a useful build - that's a huge practical difference.

    And yes, if the boot hang caused by the fatal flash chip selection mistake in the Omega 2+ got repeated in the 2S+ or fixed is indeed a very interesting question. This was unfixable in software - the only solution would be to a pick a more suitable flash chip.


Log in to reply
 

Looks like your connection to Onion Community was lost, please wait while we try to reconnect.