blob: a9f93d99cda843d5e939823e52631ebdc0808074 [file] [log] [blame]
Angel Pons3ef916f2020-04-02 23:49:13 +02001/* SPDX-License-Identifier: GPL-2.0-only */
Stefan Reinauer9aea04a2012-03-30 12:01:06 -07002
3#ifndef __VENDORCODE_GOOGLE_CHROMEOS_GNVS_H
4#define __VENDORCODE_GOOGLE_CHROMEOS_GNVS_H
5
Tristan Corrick98fb1bf2018-10-31 02:28:54 +13006#include <stdint.h>
7
Stefan Reinauer9aea04a2012-03-30 12:01:06 -07008#define ACTIVE_ECFW_RO 0
9#define ACTIVE_ECFW_RW 1
10
Kyösti Mälkki3dc17922021-03-16 19:01:48 +020011struct chromeos_acpi {
Stefan Reinauer9aea04a2012-03-30 12:01:06 -070012 /* ChromeOS specific */
13 u32 vbt0; // 00 boot reason
14 u32 vbt1; // 04 active main firmware
15 u32 vbt2; // 08 active ec firmware
16 u16 vbt3; // 0c CHSW
17 u8 vbt4[256]; // 0e HWID
18 u8 vbt5[64]; // 10e FWID
19 u8 vbt6[64]; // 14e FRID - 275
20 u32 vbt7; // 18e active main firmware type
21 u32 vbt8; // 192 recovery reason
22 u32 vbt9; // 196 fmap base address
Joel Kitching75b1f762018-08-07 12:29:30 +080023 u8 vdat[3072]; // 19a VDAT space filled by verified boot
Stefan Reinauer9aea04a2012-03-30 12:01:06 -070024 u32 vbt10; // d9a smbios bios version
25 u32 mehh[8]; // d9e management engine hash
Aaron Durbin06ece7d2014-02-14 00:30:04 -060026 u32 ramoops_base; // dbe ramoops base address
27 u32 ramoops_len; // dc2 ramoops length
Duncan Lauriecf8094c2019-03-01 15:11:30 +080028 u32 vpd_ro_base; // dc6 pointer to RO_VPD
29 u32 vpd_ro_size; // dca size of RO_VPD
30 u32 vpd_rw_base; // dce pointer to RW_VPD
31 u32 vpd_rw_size; // dd2 size of RW_VPD
32 u8 pad[298]; // dd6-eff
Kyösti Mälkki3dc17922021-03-16 19:01:48 +020033} __packed;
Stefan Reinauer9aea04a2012-03-30 12:01:06 -070034
Stefan Reinauer9aea04a2012-03-30 12:01:06 -070035#endif