aboutsummaryrefslogtreecommitdiff
path: root/thirdparty/nRF5_SDK_15.0.0_a53641a/components/libraries/bootloader/dfu/dfu-cc.proto
diff options
context:
space:
mode:
Diffstat (limited to 'thirdparty/nRF5_SDK_15.0.0_a53641a/components/libraries/bootloader/dfu/dfu-cc.proto')
-rw-r--r--thirdparty/nRF5_SDK_15.0.0_a53641a/components/libraries/bootloader/dfu/dfu-cc.proto66
1 files changed, 66 insertions, 0 deletions
diff --git a/thirdparty/nRF5_SDK_15.0.0_a53641a/components/libraries/bootloader/dfu/dfu-cc.proto b/thirdparty/nRF5_SDK_15.0.0_a53641a/components/libraries/bootloader/dfu/dfu-cc.proto
new file mode 100644
index 0000000..69f9680
--- /dev/null
+++ b/thirdparty/nRF5_SDK_15.0.0_a53641a/components/libraries/bootloader/dfu/dfu-cc.proto
@@ -0,0 +1,66 @@
+package dfu;
+
+// Version 0.1
+
+enum FwType {
+ APPLICATION = 0; // default, compatible with proto3
+ SOFTDEVICE = 1;
+ BOOTLOADER = 2;
+ SOFTDEVICE_BOOTLOADER = 3;
+}
+
+enum HashType {
+ NO_HASH = 0;
+ CRC = 1;
+ SHA128 = 2;
+ SHA256 = 3;
+ SHA512 = 4;
+}
+
+message Hash {
+ required HashType hash_type = 1;
+ required bytes hash = 2;
+}
+
+// Commands data
+message InitCommand {
+ optional uint32 fw_version = 1;
+ optional uint32 hw_version = 2;
+ repeated uint32 sd_req = 3 [packed = true]; // packed option is default in proto3
+ optional FwType type = 4;
+
+ optional uint32 sd_size = 5;
+ optional uint32 bl_size = 6;
+ optional uint32 app_size = 7;
+
+ optional Hash hash = 8;
+
+ optional bool is_debug = 9 [default = false];
+}
+
+// Command type
+message Command {
+ enum OpCode {
+ INIT = 1;
+ }
+ optional OpCode op_code = 1;
+ optional InitCommand init = 2;
+}
+
+// Signed command types
+enum SignatureType {
+ ECDSA_P256_SHA256 = 0;
+ ED25519 = 1;
+}
+
+message SignedCommand {
+ required Command command = 1;
+ required SignatureType signature_type = 2;
+ required bytes signature = 3;
+}
+
+// Parent packet type
+message Packet {
+ optional Command command = 1;
+ optional SignedCommand signed_command = 2;
+}