1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66
|
---
title: Plugin: Fastboot
---
## Introduction
This plugin is used to update hardware that uses the fastboot protocol.
## Firmware Format
The daemon will decompress the cabinet archive and extract a firmware blob in
ZIP file format. Inside the zip file must be all the firmware images for each
partition and a manifest file. The partition images can be in any format, but
the manifest must be either an Android `flashfile.xml` format file, or a QFIL
`partition_nand.xml` format file.
For both types, all partitions with a defined image found in the zip file will
be updated.
This plugin supports the following protocol ID:
* `com.google.fastboot`
## GUID Generation
These devices use the standard USB DeviceInstanceId values, e.g.
* `USB\VID_18D1&PID_4EE0`
## Update Behavior
A fastboot device usually presents in runtime mode (or with no interface),
but if the user puts the device into fastboot mode using a physical button
it then enumerates with a USB descriptor. On attach the device reboots to
runtime mode which *may* mean the device "goes away".
For this reason the `REPLUG_MATCH_GUID` internal device flag is used so that
the bootloader and runtime modes are treated as the same device.
## Quirk Use
This plugin uses the following plugin-specific quirk:
### FastbootBlockSize
Block size to use for transfers.
Since: 1.2.2
### FastbootOperationDelay
Time in ms to delay after a read or write operation.
Since: 1.7.4
## Vendor ID Security
The vendor ID is set from the USB vendor, for example `USB:0x18D1`
## External Interface Access
This plugin requires read/write access to `/dev/bus/usb`.
## Version Considerations
This plugin has been available since fwupd version `1.2.2`.
|