Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(51)

Side by Side Diff: firmware/lib/include/rollback_index.h

Issue 3114013: Change rollback interface so kernel/firmware version numbers are (Closed) Base URL: ssh://gitrw.chromium.org/vboot_reference.git
Patch Set: Created 10 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | firmware/lib/rollback_index.c » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* Copyright (c) 2010 The Chromium OS Authors. All rights reserved. 1 /* Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
2 * Use of this source code is governed by a BSD-style license that can be 2 * Use of this source code is governed by a BSD-style license that can be
3 * found in the LICENSE file. 3 * found in the LICENSE file.
4 * 4 *
5 * Functions for querying, manipulating and locking rollback indices 5 * Functions for querying, manipulating and locking rollback indices
6 * stored in the TPM NVRAM. 6 * stored in the TPM NVRAM.
7 */ 7 */
8 8
9 #ifndef VBOOT_REFERENCE_ROLLBACK_INDEX_H_ 9 #ifndef VBOOT_REFERENCE_ROLLBACK_INDEX_H_
10 #define VBOOT_REFERENCE_ROLLBACK_INDEX_H_ 10 #define VBOOT_REFERENCE_ROLLBACK_INDEX_H_
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
82 Must send in developer flag 82 Must send in developer flag
83 If not recovery mode, wants kernel versions 83 If not recovery mode, wants kernel versions
84 Must send in developer and recovery flags 84 Must send in developer and recovery flags
85 */ 85 */
86 86
87 /* These functions are callable from LoadFirmware(). They cannot use 87 /* These functions are callable from LoadFirmware(). They cannot use
88 * global variables. */ 88 * global variables. */
89 89
90 /* Setup must be called. Pass developer_mode=nonzero if in developer 90 /* Setup must be called. Pass developer_mode=nonzero if in developer
91 * mode. */ 91 * mode. */
92 /* TODO: use a 32-bit version instead of 2 version pieces */ 92 uint32_t RollbackFirmwareSetup(int developer_mode, uint32_t* version);
93 uint32_t RollbackFirmwareSetup(int developer_mode, uint16_t* key_version,
94 uint16_t* version);
95 93
96 /* Write may be called if the versions change */ 94 /* Write may be called if the versions change */
97 /* TODO: use a 32-bit version instead of 2 version pieces */ 95 uint32_t RollbackFirmwareWrite(uint32_t version);
98 uint32_t RollbackFirmwareWrite(uint16_t key_version, uint16_t version);
99 96
100 /* Lock must be called */ 97 /* Lock must be called */
101 uint32_t RollbackFirmwareLock(void); 98 uint32_t RollbackFirmwareLock(void);
102 99
103 /* These functions are callable from LoadKernel(). They may use global 100 /* These functions are callable from LoadKernel(). They may use global
104 * variables. */ 101 * variables. */
105 102
106 /* Recovery may be called. If it is, this is the first time a 103 /* Recovery may be called. If it is, this is the first time a
107 * rollback function has been called this boot, so it needs to know if 104 * rollback function has been called this boot, so it needs to know if
108 * we're in developer mode. Pass developer_mode=nonzero if in developer 105 * we're in developer mode. Pass developer_mode=nonzero if in developer
109 * mode. */ 106 * mode. */
110 uint32_t RollbackKernelRecovery(int developer_mode); 107 uint32_t RollbackKernelRecovery(int developer_mode);
111 108
112 /* Read and write may be called if not in developer mode. If called in 109 /* Read and write may be called if not in developer mode. If called in
113 * recovery mode, the effect is undefined. */ 110 * recovery mode, the effect is undefined. */
114 /* TODO: use a 32-bit version instead of 2 version pieces */ 111 uint32_t RollbackKernelRead(uint32_t* version);
115 uint32_t RollbackKernelRead(uint16_t* key_version, uint16_t* version); 112 uint32_t RollbackKernelWrite(uint32_t version);
116 uint32_t RollbackKernelWrite(uint16_t key_version, uint16_t version);
117 113
118 /* Lock must be called. Internally, it's ignored in recovery mode. */ 114 /* Lock must be called. Internally, it's ignored in recovery mode. */
119 uint32_t RollbackKernelLock(void); 115 uint32_t RollbackKernelLock(void);
120 116
121 /* The following functions are here for testing only. */ 117 /* The following functions are here for testing only. */
122 118
123 /* Issue a TPM_Clear and reenable/reactivate the TPM. */ 119 /* Issue a TPM_Clear and reenable/reactivate the TPM. */
124 uint32_t TPMClearAndReenable(void); 120 uint32_t TPMClearAndReenable(void);
125 121
126 #endif /* VBOOT_REFERENCE_ROLLBACK_INDEX_H_ */ 122 #endif /* VBOOT_REFERENCE_ROLLBACK_INDEX_H_ */
OLDNEW
« no previous file with comments | « no previous file | firmware/lib/rollback_index.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698