
In message 1177320294.4872.95.camel@elrond.sweden.atmel.com you wrote:
It's good that we have an agreement here. This is exactly what I proposed to you a couple of times before.
AFAIK; U-Boot currently do not support this,
Yes, of course it does. Just configure your board that your environment sector(s) is (are) directly adjacent to the U-Boot image (i. e. after it on ARM). U-Boot does not care where the code comes from. You just need a small tool to create the environment image; the code in tools/env/ needs only minimal tweaking to do this.
and the method still does not support reverting to factory defaults.
Right. For this purpose, it's much better to use a script image which is placed in a flash sector, so you can run a 'autoscr" command to install the default settings.
But I'm repeating myself. I described all of this before. Several times actually.
If someone implements this, I'd be happy to adopt it,
Go for it. It's all at your hands. Just use it.
I am not going to do that work though.
No work needs to be done.
Please try to understand that you are not the first one who needs such features, and that solutions already exist. The are just diffe- rent from your proposed patch, but IMHO that does not automatically mean that they are worse or less powerful.
The goal of the patch is to be able to define U-boot environment variables outside the <board>.h files.
I described at least two different ways to solve this problem without changing the U-Boot code.
Due to lack of good configuration in u-boot, I have selected to generate the needed configuration in buildroot, but I am sure that other build systems like ptxdist/Eclipse could use the same.
Configuration is a different issue than setting up the environment.
A furster restriction, is that I do not want the user to use hard to understand packages like "expect" to configure the board.
We were talking about the initial installation of the software during production. Also, the user does not need much understanding to use a script you give to him. Actually the buildroot code you use is much more complicated than the required expect script would be. If your user is supposed to be clever enought o run buildrot, then he isprobably also clever enough to run another script (which might actually be integrated in your build / install steps).
I also want a method to do configuration without connecting a serial port at all. Only port needed is Ethernet.
See above.
Your worry about "bad" ethernet configurations beeing propagated to users can be handled by refusing to boot if the ethernet address is within a certain range of values. U-Boot should always allow "experimental" ethaddr variables to be overwritten.
Please adhere to standards.
It is not done right now, but it is probably not hard to implement.
U-Boot assumes that you install valid MAC addresses as required by the standard. In addition to that, it follows the good old rule:
"UNIX was not designed to stop you from doing stupid things, because that would also stop you from doing clever things." - Doug Gwyn
No, Atmel does not ship AT91 boards with a MAC address. They are shipped with the MAC address cleared.
No comment.
Best regards,
Wolfgang Denk