-
Notifications
You must be signed in to change notification settings - Fork 42
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
Use fastboot flashall
to flash partitions initially
#253
Conversation
I'm pretty certain this works, but it'll probably be some time before I get the chance to test on my own device. |
Is this still the case when flashing all partitions? |
Oh, good catch. Fixed! |
fbc2e30
to
a9acbf7
Compare
So there are some complications:
|
fastboot flashall
to flash partitions initially
ff2ea2e
to
11b1a5f
Compare
This has been implemented, though I still don't have a device I can use to test this right now. |
11b1a5f
to
d33ef21
Compare
Does not appear to work on Pixel 4a (sunfish) with CalyxOS 5.3.1 avbroot ota patch + extract + generated info files
(Had to use cmd.exe because environment variables don't get passed to fastboot.exe from my WSL environment) Even tried an additional reboot-bootloader before the flashall. fastboot screen reads:
The stock factory ROMs flash the bootloader partitions like this.
Perhaps fastboot never allows these partitions to be flashed individually? |
Thank you very much for testing!
Yeah, it appears so. The OTA update process flashes them separately, but that's subject to the A/B scheme and it will revert back to the old/good slot if needed. With fastboot, I suppose Google wants to prevent someone from flashing only part of the bootloader partitions to both slots and permanently bricking the device (eg. with I took a quick look at the I suppose there are a couple approaches we can take:
(For number 2, the only change to this PR would be adding back the "When setting things up for the first time, the device must already be running the correct OS." step and removing the |
Can we reliably identify which partitions belong to bootloader/radio (maybe all those not listed in any vbmeta?) Perhaps we could flash all the ROM-partitions and only tell the user he has to make sure he has the bootloader and radio ("if in doubt, flash/install the entire ROM" as it is now) - pixel factory images already include a separate |
d33ef21
to
6aa3ac6
Compare
Yeah, I think that is reasonable. I've updated the PR to implement that and update the README. Only the OS partitions will be added to (Scanning all the vbmeta images would work everywhere aside from OnePlus devices. Half of their partitions use the "alternative" AVB method where they are verifed against a public key stored on disk instead of a vbmeta partition.) |
33f23f6
to
50cbbf8
Compare
50cbbf8
to
e3affda
Compare
`fastboot flashall` is identical to the `fastboot update` command used by the Pixel factory images, except it reads from a directory instead of a zip file. It knows how to flip between the fastboot and fastbootd modes without user intervention. Fixes: #252 Signed-off-by: Andrew Gunnerson <[email protected]>
e3affda
to
fd0408d
Compare
Signed-off-by: Andrew Gunnerson <[email protected]>
Finally got a chance to give it a try on my device. This should be good to go now. |
fastboot flashall
is identical to thefastboot update
command used by the Pixel factory images, except it reads from a directory instead of a zip file. It knows how to flip between the fastboot and fastbootd modes without user intervention.Fixes: #252