mirror of
https://github.com/trezor/trezor-firmware.git
synced 2024-11-30 03:18:20 +00:00
45 lines
1.1 KiB
Protocol Buffer
45 lines
1.1 KiB
Protocol Buffer
syntax = "proto2";
|
|
package hw.trezor.messages.bootloader;
|
|
|
|
// Sugar for easier handling in Java
|
|
option java_package = "com.satoshilabs.trezor.lib.protobuf";
|
|
option java_outer_classname = "TrezorMessageBootloader";
|
|
|
|
/**
|
|
* Request: Ask device to erase its firmware (so it can be replaced via FirmwareUpload)
|
|
* @start
|
|
* @next FirmwareRequest
|
|
*/
|
|
message FirmwareErase {
|
|
optional uint32 length = 1; // length of new firmware
|
|
}
|
|
|
|
/**
|
|
* Response: Ask for firmware chunk
|
|
* @next FirmwareUpload
|
|
*/
|
|
message FirmwareRequest {
|
|
optional uint32 offset = 1; // offset of requested firmware chunk
|
|
optional uint32 length = 2; // length of requested firmware chunk
|
|
}
|
|
|
|
/**
|
|
* Request: Send firmware in binary form to the device
|
|
* @next FirmwareRequest
|
|
* @next Success
|
|
* @next Failure
|
|
*/
|
|
message FirmwareUpload {
|
|
required bytes payload = 1; // firmware to be loaded into device
|
|
optional bytes hash = 2; // hash of the payload
|
|
}
|
|
|
|
/**
|
|
* Request: Perform a device self-test
|
|
* @next Success
|
|
* @next Failure
|
|
*/
|
|
message SelfTest {
|
|
optional bytes payload = 1; // payload to be used in self-test
|
|
}
|