blob: 2f63cc1647915e23231f8bec5966cf0320af4663 [file] [log] [blame]
Randall Spanglerfe271492014-12-03 17:26:22 -08001/* Copyright (c) 2014 The Chromium OS Authors. All rights reserved.
2 * Use of this source code is governed by a BSD-style license that can be
3 * found in the LICENSE file.
4 */
5
6/* APIs between calling firmware and vboot_reference
7 *
8 * DO NOT INCLUDE THE HEADERS BELOW DIRECTLY! ONLY INCLUDE THIS FILE!
Randall Spanglerf81fce92015-05-05 16:06:50 -07009 *
10 * Using vb2api.h as the single point of contact between calling firmware and
11 * vboot allows subsequent refactoring of vboot (renaming of headers, etc.)
12 * without churning other projects' source code.
Randall Spanglerfe271492014-12-03 17:26:22 -080013 */
14
15#ifndef VBOOT_VB2_API_H_
16#define VBOOT_VB2_API_H_
17
18/* Standard APIs */
19#include "../2lib/include/2api.h"
20
Randall Spanglerf81fce92015-05-05 16:06:50 -070021/* SHA library */
22#ifdef NEED_VB2_SHA_LIBRARY
23#include "../2lib/include/2sha.h"
24#endif
25
Randall Spanglerfe271492014-12-03 17:26:22 -080026/*
27 * Coreboot should not need access to vboot2 internals. But right now it does.
28 * At least this forces it to do so through a relatively narrow hole so vboot2
29 * refactoring can continue.
30 *
31 * Please do not rip this into a wider hole, or expect this hole to continue.
32 *
33 * TODO: Make cleaner APIs to this stuff.
34 */
35#ifdef NEED_VB20_INTERNALS
Randall Spangler32138f92015-01-12 16:25:13 -080036#include "../2lib/include/2nvstorage_fields.h"
Randall Spanglerfe271492014-12-03 17:26:22 -080037#include "../2lib/include/2struct.h"
Randall Spangler6f1b82a2014-12-03 12:29:37 -080038#include "../lib20/include/vb2_struct.h"
Randall Spanglerfe271492014-12-03 17:26:22 -080039#endif
40
41#endif /* VBOOT_VB2_API_H_ */