1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * Copyright 2020 Google LLC
4  */
5 
6 #ifndef __ASM_ACPI_VBNV_LAYOUT_H__
7 #define __ASM_ACPI_VBNV_LAYOUT_H__
8 
9 #define VBOOT_VBNV_BLOCK_SIZE 16	/* Size of NV storage block in bytes */
10 
11 /* Constants for NV storage, for use with ACPI */
12 #define HEADER_OFFSET			0
13 #define HEADER_MASK			0xc0
14 #define HEADER_SIGNATURE		0x40
15 #define HEADER_FIRMWARE_SETTINGS_RESET	0x20
16 #define HEADER_KERNEL_SETTINGS_RESET	0x10
17 
18 #define BOOT_OFFSET			1
19 #define BOOT_DEBUG_RESET_MODE		0x80
20 #define BOOT_DISABLE_DEV_REQUEST	0x40
21 #define BOOT_DISPLAY_REQUEST		0x20
22 #define BOOT_TRY_B_COUNT_MASK		0x0f
23 
24 #define RECOVERY_OFFSET			2
25 #define LOCALIZATION_OFFSET		3
26 
27 #define DEV_FLAGS_OFFSET		4
28 #define DEV_BOOT_USB_MASK		0x01
29 #define DEV_BOOT_SIGNED_ONLY_MASK	0x02
30 #define DEV_ENABLE_UDC			0x40
31 
32 #define MISC_FLAGS_OFFSET		8
33 #define MISC_FLAGS_BATTERY_CUTOFF_MASK	0x08
34 
35 #define KERNEL_FIELD_OFFSET		11
36 #define CRC_OFFSET			15
37 
38 #endif /* __ASM_ACPI_VBNV_LAYOUT_H__ */
39