驅動程式特定回撥¶
pldmfw 模組依賴於裝置驅動程式來實現裝置特定行為,方法是使用以下操作。
.match_record¶
.match_record 操作用於確定給定的 PLDM 記錄是否與正在更新的裝置匹配。 這需要將記錄中的記錄描述符與來自裝置的資訊進行比較。 許多記錄描述符由 PLDM 標準定義,但也允許裝置實現自己的描述符。
如果給定的記錄與裝置匹配,則 .match_record 操作應返回 true。
.send_package_data¶
.send_package_data 操作用於將記錄中特定於裝置的包資料傳送到裝置韌體。 如果匹配的記錄提供包資料,pldmfw 將使用指向包資料和包資料長度的指標呼叫 .send_package_data 函式。 裝置驅動程式應將此資料傳送到韌體。
.send_component_table¶
.send_component_table 操作用於將元件資訊轉發到裝置。 對於每個適用的元件,即由匹配記錄指示的每個元件,都會呼叫一次。 裝置驅動程式應將元件資訊傳送到裝置韌體,並等待響應。 提供的傳輸標誌指示這是第一個、最後一個還是中間元件,並且預計作為元件表資訊的一部分轉發到韌體。 如果韌體指示無法更新元件,則驅動程式應返回錯誤,如果可以更新元件,則返回零。
.flash_component¶
.flash_component 操作用於通知裝置驅動程式重新整理給定的元件。 驅動程式必須執行任何必要的步驟才能將元件資料傳送到裝置。
.finalize_update¶
.finalize_update 操作由 pldmfw 庫使用,以便允許裝置驅動程式執行完成更新所需的任何剩餘的裝置特定邏輯。