Currently on gk7205v300 and other hisilicon targets (hi3516ev300), the first boot rewrites the u-boot bootargs variable to account for the selected contiguous memory allocator and totalmem vs osmem. This makes sense to move the logic into the kernel rather than force creating multiple versions of u-boot for chipsets in the same SoC family due to different amounts of available memory.
However, the initial boot cannot use the full amount of memory since it's not available to the kernel via cmdline, which causes issues such as majestic not fully starting on (gk7205v300 / ultimate) which leaves the web interface unavailable.
One fix would be to schedule a reboot after rewriting bootargs in set_allocator. That would be a one-time trigger after install. Unsure if rebooting right away would be the correct fix or deferring until boot has finished (if other one-time operations are required).
Thoughts?
Currently on gk7205v300 and other hisilicon targets (hi3516ev300), the first boot rewrites the u-boot bootargs variable to account for the selected contiguous memory allocator and totalmem vs osmem. This makes sense to move the logic into the kernel rather than force creating multiple versions of u-boot for chipsets in the same SoC family due to different amounts of available memory.
However, the initial boot cannot use the full amount of memory since it's not available to the kernel via cmdline, which causes issues such as majestic not fully starting on (gk7205v300 / ultimate) which leaves the web interface unavailable.
One fix would be to schedule a reboot after rewriting bootargs in set_allocator. That would be a one-time trigger after install. Unsure if rebooting right away would be the correct fix or deferring until boot has finished (if other one-time operations are required).
Thoughts?