Why must u-boot env offset be multiple of alignment?

Thanks for the detailed writeup!

In my application, I would like to have a partition alignment of 4 MiB, but place the u-boot environments at 2048 kiB and 2560 kiB, respectively. This is because my eMMC has an erase_size of 512 kiB, but a preferred_erase_size of 4 MiB. In this scenario, the error mentioned above is quite limiting. Is there any way to get rid of that error?

The reason why I have such obscure requirements is that I’d like to transition existing devices (partition layout exists) to mender. This presents a few challenges as there is little space (4 MiB) before the first partition starts.