Hi,
Currently, I am upgrading all kernel variants and they have grown to a list of e.g.
letux-4,19.15/ letux-4.19-15-lpae/ letux-4.19-15-udoo/ letux-4.19-15-raspi/ letux-4.19-15-l400/
These share the same sources but have slightly different CONFIGs. So we create 5 packages of everything as you can see here:
http://download.goldelico.com/letux-kernel/?C=M;O=D
All of them contain the same device trees and an uImage and a zImage. All our boot-loaders (u-Boot) are looking for this uImage (or zImage for RasPi) from the package that was installed..
Now the new idea:
Why don't we create
uImage uImage-lpae uImage-udoo zImage-raspi (or kernel7.img) uImage-l400
and adjust the boot-loaders to specifically pick one of them? And modify makesd to install all of them or the right one on the SD card?
This will clean up the above linked repository since there will be only one package for each kernel release.
We already have different boot-loaders for each of the devices.
E.g. Pyra 2GB uses a different U-Boot and could load the "uImage" while a Pyra 4GB could load the "uImage-lpae".
So why am I not doing it immediately? Because it has some influences on existing devices and packages.
GTA04, OpenPandora, BeagleBoard/Bone, PandaBoard are not influenced since they use the uImage before and after such a change. There will only be some unused files in the boot sector.
Pyra will see a change which is almost harmless: if you just install a new kernel built using the new proposed scheme, it will not use LPAE (making only 2GB available).
Only if you install the new u-boot and install an older kernel package, it will search for uImage.lpae but miss the older uImage installed from an older letux-lpae package (unless we built in a fallback rule).
For Udoo neo and Raspi we will see similar issues of mixing old and new bootloaders with old and new kernels but this mainly needs testing and AFAIK there aren't many users around.
Please note: this will not change source code of the Kernel, just rearrange the resulting binaries on the download server and debian kernel packages.
So I would like to get some opinions before I start to rework the build server and u-boot.
BR, Nikolaus
PS: areas that will change and where I have to think about a backward compatibility mode: * makesd * u-boot variants * boot.scr * modules (need to be split between builds as well since they depend on CONFIG and I am not sure if they are interchangeable between e.g. LPAE and non-LPAE)