blob: f06044403d05cf2cf3f6539e145b6a089930203a [file] [log] [blame]
Aaron Durbinfd795622013-03-01 17:12:26 -06001/*
2 * This file is part of the coreboot project.
3 *
4 * Copyright (C) 2013 Google, Inc.
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; version 2 of the License.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
Aaron Durbinfd795622013-03-01 17:12:26 -060014 */
15#ifndef VBOOT_HANDOFF_H
16#define VBOOT_HANDOFF_H
17
Daisuke Nojiri742fc8d2014-10-10 10:51:06 -070018
Aaron Durbinfd795622013-03-01 17:12:26 -060019#include <vboot_api.h>
Daisuke Nojiri79cac092014-06-30 08:51:39 -070020#include <vboot_struct.h>
Daisuke Nojiriefddcfb2014-09-04 09:55:34 -070021#include "chromeos.h"
Daisuke Nojiri742fc8d2014-10-10 10:51:06 -070022#include "vboot_common.h"
23
24/*
Aaron Durbinfd795622013-03-01 17:12:26 -060025 * The vboot_handoff structure contains the data to be consumed by downstream
26 * firmware after firmware selection has been completed. Namely it provides
Aaron Durbin6d720f32015-12-08 17:00:23 -060027 * vboot shared data as well as the flags from VbInit.
Aaron Durbinfd795622013-03-01 17:12:26 -060028 */
29struct vboot_handoff {
30 VbInitParams init_params;
31 uint32_t selected_firmware;
Aaron Durbinfd795622013-03-01 17:12:26 -060032 char shared_data[VB_SHARED_DATA_MIN_SIZE];
33} __attribute__((packed));
34
35
36#endif /* VBOOT_HANDOFF_H */