leaps_fw_update_xfer
leaps_fw_update_start の後にファームウェア データ チャンクを転送するために繰り返し呼び出す必要があります。これは、すべてのファームウェアが転送されるまで行われます。データ チャンクが正常に処理された場合はステータス ok
が返され、エラーの場合は返されます。エラーは ok
以外のステータスで示されます。ファームウェアのアップデートが失敗する理由は次のとおりです。
内部エラー
無効なパラメータ - 例:長さがゼロのデータチャンク、または破損したデータ
許可されていません - まだ開始されていないか、更新プロセス全体が失敗しました
チェックサム エラー - 受信したデータが壊れているか、更新の開始時に leaps_fw_update_start によって提供されたチェックサム値と、最後にモジュールによって計算されたチェックサムが一致しません
これまでのファームウェア更新手順によってすでに処理されたデータのサイズとオフセットは、更新が完了するまで、leaps_fw_update_xfer への呼び出しごとに応答として返されます。
オフセット: 32ビット整数 (ファームウェア・データ全体のオフセット)
データ: 4 ~ 240 バイト (ファームウェア データ チャンク)
offset: 32ビット整数 (leaps_fw_update_xfer が次に書き込む必要があるデータのオフセット)
size: 32ビット整数 (leaps_fw_update_xfer が書き込む必要のあるファームウェアデータチャンクのサイズ)
例
TLV 要求 |
|||
---|---|---|---|
タイプ |
長さ |
価値 |
|
オフセット |
データチャンク |
||
0x3F |
0x24 |
0x00 0x00 0x00 0x00 |
0xA5 0xA5 0xA5 0xA5 0xA5 0xA5 0xA5 0xA5 …. 0xA5 0xA5 0xA5 0xA5 |
タイプ 0x3F (63 dec) は、コマンド Leaps_fw_update_xfer を意味します
TLV 応答 |
||||||
---|---|---|---|---|---|---|
タイプ |
長さ |
価値 |
タイプ |
長さ |
価値 |
|
オフセット |
サイズ |
|||||
0x40 |
0x01 |
0x04 |
0x7E |
0x08 |
0x00 0x00 0x00 0x00 |
0x00 0x10 0x00 0x00 |
タイプ 0x40 はステータスコード
タイプ 0x7E (126 dec) はファームウェア データ要求を意味します