[U-Boot] [PATCH V2] add README.distro file
Stephen Warren
swarren at wwwdotorg.org
Mon Jan 12 18:34:17 CET 2015
On 01/11/2015 11:15 AM, Tom Rini wrote:
> On Sun, Jan 11, 2015 at 10:54:03AM -0700, Stephen Warren wrote:
>> On 01/11/2015 02:45 AM, Ian Campbell wrote:
>>> On Sun, 2014-12-28 at 09:26 +0000, Ian Campbell wrote:
>>>>> +boot_scripts:
>>>>> +
>>>>> + The name of U-Boot style boot.scr files that $bootcmd searches for.
>>>>> +
>>>>> + Example: boot.scr.uimg boot.scr
>>>>> +
>>>>> + (Typically we expect extlinux.conf to be used, but execution of boot.scr is
>>>>> + maintained for backwards-compatibility.)
>>>>
>>>> I'm slightly concerned by the implied deprecation of the boot.scr method
>>>> here, since at least Debian uses boot.scr exclusively and not the
>>>> extlinux stuff. Will boot.scr be maintained going forward or are there
>>>> plans to eventually remove it?
>>>
>>> Can someone confirm that there is no long term plan to drop boot.scr
>>> support?
>>
>> extlinux.conf *is* the standard Linux boot process that
>> config_distro_bootcmd.h enables. boot.scr is *not*. The whole point is
>> to introduce a new simple standard that works the same everywhere (for
>> Linux: across boards, across distros, across bootloaders).
>
> Well, the only problem I see with this statement is that, uh, do we have
> buy-in from Debian?
Well, there was some discussion about standard boot setups on the
cross-distro mailing list. I believe someone from Debian is at least
familiar with Dennis's proposal to use extlinux.conf as the standard.
There was certainly no definitive agreement in those discussions though.
That said, I don't think there's much choice but to standardize on
/something/ other than boot.scr. boot.scr really isn't scalable for
generic distros (as opposed to board-specific BSPs):
* boot.scr works differently on different boards, since the set of
environment variables and U-Boot commands/features available to the
script are different. This leads to extremely complex boot.scr
implementations that distros each have to maintain.
I suppose we could fix this by standardizing the boot.scr execution
environment; providing a consistent set of variables indicating where to
load kernel/DTB/..., the board name (to auto-generate DTB filename),
etc. However, standardizing this is more complex that standardizing on
extlinux.conf and still doesn't solve:
* boot.scr doesn't work across different bootloaders. There's no reason
generic distros should know anything much about bootloaders, other than
how to generate a config file so the bootloader knows which
kernel/initrd/DTB binaries to load.
* boot.scr must be generated (to boot.scr.uimg) using
bootloader-specific tools, rather than extlinux.conf, grub.conf, ... all
just need the generation of a text file.
More information about the U-Boot
mailing list