-
Notifications
You must be signed in to change notification settings - Fork 29
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Display u-boot slash early #267
Conversation
Should we set bootdelay to -2 to boot without delay and not check for abort (see https://www.denx.de/wiki/view/DULG/UBootEnvVariables)? Or is there any need to check for abort other than for development? |
I had the same idea, but wasn't sure why you have this 2 second delay. It is configured explicitly in u-boot, even with a custom key code, i.e. it's not left enabled by accident. Another 5 seconds of boot time is lost while scanning for USB devices. Such a long delay is very annoying, but this is necessary for USB stick recovery. I wish there was another way... |
The 2 second delay and the special key code for interrupting the boot was intentionally. i agree with the proposal of Max:
|
Re scanning of USB devices, slide 51 from https://elinux.org/images/9/99/Opdenacker-timing-boot-time-reduction-techniques-ELCE-2019.pdf identifies the same issue, "Waiting for 1.2 s for the USB camera to be enumerated. Any way around this USB asynchronousness issue?" |
btw. I was able to eliminate most of this by disabling the OHCI controller, see commit 9b3974a in this PR We're down to 14 seconds from power on to ovmenu. |
|
Second measurement was 12 seconds. |
For most users who have the OpenVario installed in their glider, the fastest possible boot time is a very important criterion, so everything Max is doing in this matter is to be supported! |
Allows users to add more kernel parameters to config.uEnv.
No OpenVario boots from SATA hard disk.
There's no EFI in any OpenVario.
The boot manager never needs to play USB gadget.
We roll our own, dynamically, using an env variable.
This shows the OpenVario logo within 1 seconds after powering on.
This speeds up u-boot by 2 seconds.
Nobody ever needs to access the u-boot command line. Let's disable it and save 2 seconds of boot time.
We don't use the binary "uboot.env" file, and not attempting to load it saves a few milliseconds.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me !
Thanks Max for all this effort !!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Latest measurement: 9.5 seconds from power on (cold boot) to OpenVarioMenu. More PRs to come. |
Max, this are really nice results! My guys in the club are already very excited about the result this year, after all some are still flying with the 2017 version because they don't really trust the innovations yet... But with XCSoar 7.23++ and the many improvements on OpenVario-Linux I think I can convince them of an update ;-) |
Below 10s is almost like "power on" instead of "booting", And if I understand correctly all of this without detrimental (rather the opposite) impact on future maintainability. That´s great! |
Right, and next step: get rid of psplash and its progress bar. What's the point of a progress bar if it boots almost instantly? Loading this second splash screen only delays the boot process.
Yes. |
Lots of u-boot optimizations, but the most important piece is "display OpenVario logo in preboot", which loads and displays the splash screen before scanning for USB devices and before the 2 second delay (waiting for "ov" to interrupt the boot process). This shows the splash screen less than a second after power-up.