[U-Boot] [PATCH 2/3] Automatic software update from TFTP server

Bartlomiej Sieka tur at semihalf.com
Thu Sep 25 11:49:55 CEST 2008


Wolfgang Denk wrote:
> Dear Bartek,
> 
> in message <48DB48F5.3010204 at semihalf.com> you wrote:
>>> I think "auto-update" is not a good name (especially since it has a
>>> different meaning than the similar sounding "autoload"0; also there is
>>> a typo in "sofware".
>>>
>>> But most of all - do we really need a new environment variable? What's
>>> wrong with our good old "bootfile" ?
>> The only concern here is the interaction with bootp and dhcp commands --
>> they will set the "bootfile" env. variable to the file name
>> got from the server, and the next time around U-Boot will try to use
>> that file name to get the update. So I'd rather stick with a separate 
>> env. variable for the name of the update file.
> 
> I see. Maybe we should call the variable "updatefile" or similar,
> then?

How about "au_file"? "updatefile" suffers from similarity to the
commonly used (although not documented) "update" env. variable. But I'm
fine either way, just let me know what you prefer.

[...]
>>>> @@ -290,6 +293,10 @@ void main_loop (void)
>>>>  	char bcs_set[16];
>>>>  #endif /* CONFIG_BOOTCOUNT_LIMIT */
>>>>  
>>>> +#if defined(CONFIG_AU_TFTP)
>>>> +	au_tftp ();
>>>> +#endif /* CONFIG_AU_TFTP */
>>>> +
>>>>  #if defined(CONFIG_VFD) && defined(VFD_TEST_LOGO)
>>>>  	ulong bmp = 0;		/* default bitmap */
>>>>  	extern int trab_vfd (ulong bitmap);
>>> You definitely don't want to add  the  function  call  right  in  the
>>> middle of variable declarations, or do you?
>> The idea is to have au_tftp() called as early as possible, before any
>> other functions in main_loop().
> 
> Yes, but this is C, not C++, so declarations go only at the  bginning
> of  the  function, then follows code (and no more declarations unless
> you open a new block).
> 
>> So if we move the call to au_tftp() someplace below, then when
>> both CONFIG_VFD and VFD_TEST_LOGO are defined, we'll have a call to
>> trab_vfd(), which will happen before the software update.
> 
> So you will either have to add some  more  #ifdef's,  or  think  what
> could  happen  if the VFD (Vacuum Fluorescent Display) initialization
> code runs first - I would not expect any negative impact?

I don't think there will be any negative impact per se, the update
procedure will just start a bit later (the time needed to display the
bitmap on the FVD).

Will move au_tftp() call till after the VFD stuff.

Regards,
Bartlomiej Sieka


More information about the U-Boot mailing list