Hello everyone, it's a pleasure to meet you all in this forum.
Just recently, I managed to downgrade my Boox Note X2 (regional special edition of Note Air2 Plus) from 3.5.4 to 3.5.1, and next upgraded to the 3.5.3 system of Note Air2 Plus (I didn't get the 3.5.3 upx file for Note X2, so I had to go with 3.5.4)
For some specific devices, 3.5.4 really sucks, they completely disabled most fastboot commands, while the new vendor partition got messed up, and the change in refresh mechanism made the original a2 fresh mode almost no longer usable, so I chose to downgrade.
So how did all this happen?
First of all thanks to the geeky users here, I learned that the disabling of the fastboot command is related to the change in the abl partition, so I started by flashing the abl partition of the old version (3.5.1) using adb reboot edl into 9008 mode while booting. Soon, I found that I could flush the rooted boot image in fastboot mode (not fastbootd, but the original fastboot mode where I rebooted to the bootloader). However, at this time, the fastboot mode still can not use the write command, I think this is related to the recovery partition. So, I tried to continue flashing the recovery partition of version 3.5.1 in fastboot mode, and it worked, I was able to directly flash the payload file of version 3.5.3 in fastbood mode!
However, there is another problem here, because of Bootloader AVB (Android Verified Boot 2.0), I needed to manually modify the vbmeta & vbmeta_system image files for systems that are not the current model, so I did that as well. After flashing the full payload.bin, I proceeded to flash the vbmeta and vbmeta_system image files after removing the AVB validation, and I ended up with a working 3.5.3 system!
Thanks for reading, hope this will help you
Translated with DeepL.com (free version)