summaryrefslogtreecommitdiff
path: root/firmware/lib/include/load_firmware_fw.h
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/lib/include/load_firmware_fw.h')
-rw-r--r--firmware/lib/include/load_firmware_fw.h29
1 files changed, 29 insertions, 0 deletions
diff --git a/firmware/lib/include/load_firmware_fw.h b/firmware/lib/include/load_firmware_fw.h
new file mode 100644
index 00000000..555cf6fd
--- /dev/null
+++ b/firmware/lib/include/load_firmware_fw.h
@@ -0,0 +1,29 @@
+/* Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ *
+ * High-level firmware API for loading and verifying rewritable firmware.
+ * (Firmware Portion)
+ */
+
+#ifndef VBOOT_REFERENCE_LOAD_FIRMWARE_FW_H_
+#define VBOOT_REFERENCE_LOAD_FIRMWARE_FW_H_
+
+#include "vboot_api.h"
+#include "vboot_nvstorage.h"
+#include "vboot_struct.h"
+
+/**
+ * Load the rewritable firmware.
+ *
+ * Pass the common and firmware params from VbSelectFirmware(), and a
+ * VbNvContext. Caller is responsible for calling VbNvSetup() and
+ * VbNvTeardown() on the VbNvContext.
+ *
+ * Returns VBERROR_SUCCESS if successful. If unsuccessful, sets a recovery
+ * reason via VbNvStorage and returns an error code.
+ */
+int LoadFirmware(VbCommonParams *cparams, VbSelectFirmwareParams *fparams,
+ VbNvContext *vnc);
+
+#endif /* VBOOT_REFERENCE_LOAD_FIRMWARE_FW_H_ */