chromeos: Move common VBNV offsets to a header
Some common VBNV variable offsets were defined in multiple vbnv_* source files. This moves them to a header so that we can avoid duplicating them in the future. BUG=none BRANCH=none TEST=compiled for nyan_blaze and rambi Change-Id: Ic292e546b665b40678b4de598783c1f6bfa35426 Signed-off-by: Stefan Reinauer <reinauer@chromium.org> Original-Commit-Id: fd776f303a3d057d4b70997e7bb6bc85767e2278 Original-Signed-off-by: David Hendricks <dhendrix@chromium.org> Original-Change-Id: Ifcc13c90a910b86d4f9bb0027d913572c1d6d00b Original-Reviewed-on: https://chromium-review.googlesource.com/239977 Original-Reviewed-by: Aaron Durbin <adurbin@chromium.org> Original-Reviewed-by: Julius Werner <jwerner@chromium.org> Original-Reviewed-by: Randall Spangler <rspangler@chromium.org> Reviewed-on: http://review.coreboot.org/9560 Tested-by: build bot (Jenkins) Reviewed-by: Patrick Georgi <pgeorgi@google.com>
This commit is contained in:
parent
2a5c8f0bc4
commit
6fd3501cbd
|
@ -27,34 +27,7 @@
|
||||||
#if IS_ENABLED(CONFIG_VBOOT_VERIFY_FIRMWARE)
|
#if IS_ENABLED(CONFIG_VBOOT_VERIFY_FIRMWARE)
|
||||||
#include "vboot_handoff.h"
|
#include "vboot_handoff.h"
|
||||||
#endif
|
#endif
|
||||||
|
#include "vbnv_layout.h"
|
||||||
#define VBNV_BLOCK_SIZE 16 /* Size of NV storage block in bytes */
|
|
||||||
|
|
||||||
/* Constants for NV storage. We use this rather than structs and
|
|
||||||
* bitfields so the data format is consistent across platforms and
|
|
||||||
* compilers.
|
|
||||||
*/
|
|
||||||
#define HEADER_OFFSET 0
|
|
||||||
#define HEADER_MASK 0xC0
|
|
||||||
#define HEADER_SIGNATURE 0x40
|
|
||||||
#define HEADER_FIRMWARE_SETTINGS_RESET 0x20
|
|
||||||
#define HEADER_KERNEL_SETTINGS_RESET 0x10
|
|
||||||
|
|
||||||
#define BOOT_OFFSET 1
|
|
||||||
#define BOOT_DEBUG_RESET_MODE 0x80
|
|
||||||
#define BOOT_DISABLE_DEV_REQUEST 0x40
|
|
||||||
#define BOOT_OPROM_NEEDED 0x20
|
|
||||||
#define BOOT_TRY_B_COUNT_MASK 0x0F
|
|
||||||
|
|
||||||
#define RECOVERY_OFFSET 2
|
|
||||||
#define LOCALIZATION_OFFSET 3
|
|
||||||
|
|
||||||
#define DEV_FLAGS_OFFSET 4
|
|
||||||
#define DEV_BOOT_USB_MASK 0x01
|
|
||||||
#define DEV_BOOT_SIGNED_ONLY_MASK 0x02
|
|
||||||
|
|
||||||
#define KERNEL_FIELD_OFFSET 11
|
|
||||||
#define CRC_OFFSET 15
|
|
||||||
|
|
||||||
static int vbnv_initialized CAR_GLOBAL;
|
static int vbnv_initialized CAR_GLOBAL;
|
||||||
static uint8_t vbnv[CONFIG_VBNV_SIZE] CAR_GLOBAL;
|
static uint8_t vbnv[CONFIG_VBNV_SIZE] CAR_GLOBAL;
|
||||||
|
|
|
@ -23,34 +23,7 @@
|
||||||
#include <arch/early_variables.h>
|
#include <arch/early_variables.h>
|
||||||
#include <ec/google/chromeec/ec.h>
|
#include <ec/google/chromeec/ec.h>
|
||||||
#include "chromeos.h"
|
#include "chromeos.h"
|
||||||
|
#include "vbnv_layout.h"
|
||||||
#define VBNV_BLOCK_SIZE 16 /* Size of NV storage block in bytes */
|
|
||||||
|
|
||||||
/* Constants for NV storage. We use this rather than structs and
|
|
||||||
* bitfields so the data format is consistent across platforms and
|
|
||||||
* compilers.
|
|
||||||
*/
|
|
||||||
#define HEADER_OFFSET 0
|
|
||||||
#define HEADER_MASK 0xC0
|
|
||||||
#define HEADER_SIGNATURE 0x40
|
|
||||||
#define HEADER_FIRMWARE_SETTINGS_RESET 0x20
|
|
||||||
#define HEADER_KERNEL_SETTINGS_RESET 0x10
|
|
||||||
|
|
||||||
#define BOOT_OFFSET 1
|
|
||||||
#define BOOT_DEBUG_RESET_MODE 0x80
|
|
||||||
#define BOOT_DISABLE_DEV_REQUEST 0x40
|
|
||||||
#define BOOT_OPROM_NEEDED 0x20
|
|
||||||
#define BOOT_TRY_B_COUNT_MASK 0x0F
|
|
||||||
|
|
||||||
#define RECOVERY_OFFSET 2
|
|
||||||
#define LOCALIZATION_OFFSET 3
|
|
||||||
|
|
||||||
#define DEV_FLAGS_OFFSET 4
|
|
||||||
#define DEV_BOOT_USB_MASK 0x01
|
|
||||||
#define DEV_BOOT_SIGNED_ONLY_MASK 0x02
|
|
||||||
|
|
||||||
#define KERNEL_FIELD_OFFSET 11
|
|
||||||
#define CRC_OFFSET 15
|
|
||||||
|
|
||||||
static int vbnv_initialized CAR_GLOBAL;
|
static int vbnv_initialized CAR_GLOBAL;
|
||||||
static uint8_t vbnv[VBNV_BLOCK_SIZE] CAR_GLOBAL;
|
static uint8_t vbnv[VBNV_BLOCK_SIZE] CAR_GLOBAL;
|
||||||
|
|
|
@ -0,0 +1,51 @@
|
||||||
|
/*
|
||||||
|
* This file is part of the coreboot project.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2015 The ChromiumOS Authors. All rights reserved.
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation; version 2 of the License.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program; if not, write to the Free Software
|
||||||
|
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef VBNV_LAYOUT_H
|
||||||
|
#define VBNV_LAYOUT_H
|
||||||
|
|
||||||
|
#define VBNV_BLOCK_SIZE 16 /* Size of NV storage block in bytes */
|
||||||
|
|
||||||
|
/* Constants for NV storage. We use this rather than structs and
|
||||||
|
* bitfields so the data format is consistent across platforms and
|
||||||
|
* compilers.
|
||||||
|
*/
|
||||||
|
#define HEADER_OFFSET 0
|
||||||
|
#define HEADER_MASK 0xC0
|
||||||
|
#define HEADER_SIGNATURE 0x40
|
||||||
|
#define HEADER_FIRMWARE_SETTINGS_RESET 0x20
|
||||||
|
#define HEADER_KERNEL_SETTINGS_RESET 0x10
|
||||||
|
|
||||||
|
#define BOOT_OFFSET 1
|
||||||
|
#define BOOT_DEBUG_RESET_MODE 0x80
|
||||||
|
#define BOOT_DISABLE_DEV_REQUEST 0x40
|
||||||
|
#define BOOT_OPROM_NEEDED 0x20
|
||||||
|
#define BOOT_TRY_B_COUNT_MASK 0x0F
|
||||||
|
|
||||||
|
#define RECOVERY_OFFSET 2
|
||||||
|
#define LOCALIZATION_OFFSET 3
|
||||||
|
|
||||||
|
#define DEV_FLAGS_OFFSET 4
|
||||||
|
#define DEV_BOOT_USB_MASK 0x01
|
||||||
|
#define DEV_BOOT_SIGNED_ONLY_MASK 0x02
|
||||||
|
|
||||||
|
#define KERNEL_FIELD_OFFSET 11
|
||||||
|
#define CRC_OFFSET 15
|
||||||
|
|
||||||
|
#endif /* VBNV_LAYOUT_H */
|
Loading…
Reference in New Issue