]> git.proxmox.com Git - grub2.git/blame - include/grub/i386/openbsd_bootarg.h
Add gcc_struct to all packed structures when compiling with mingw.
[grub2.git] / include / grub / i386 / openbsd_bootarg.h
CommitLineData
262bff8d
VS
1/*
2 * GRUB -- GRand Unified Bootloader
3 * Copyright (C) 2008,2009 Free Software Foundation, Inc.
4 *
5 * GRUB is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation, either version 3 of the License, or
8 * (at your option) any later version.
9 *
10 * GRUB 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.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with GRUB. If not, see <http://www.gnu.org/licenses/>.
17 */
18
19/* $OpenBSD: bootarg.h,v 1.11 2003/06/02 20:20:54 mickey Exp $ */
20
21/*
22 * Copyright (c) 1996-1999 Michael Shalayeff
23 * All rights reserved.
24 *
25 * Redistribution and use in source and binary forms, with or without
26 * modification, are permitted provided that the following conditions
27 * are met:
28 * 1. Redistributions of source code must retain the above copyright
29 * notice, this list of conditions and the following disclaimer.
30 * 2. Redistributions in binary form must reproduce the above copyright
31 * notice, this list of conditions and the following disclaimer in the
32 * documentation and/or other materials provided with the distribution.
33 *
34 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
35 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
36 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
37 * IN NO EVENT SHALL THE AUTHOR OR HIS RELATIVES BE LIABLE FOR ANY DIRECT,
38 * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
39 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
40 * SERVICES; LOSS OF MIND, USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
41 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
42 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
43 * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
44 * THE POSSIBILITY OF SUCH DAMAGE.
45 */
46
47#ifndef GRUB_OPENBSD_BOOTARG_CPU_HEADER
48#define GRUB_OPENBSD_BOOTARG_CPU_HEADER 1
49
50#define OPENBSD_BOOTARG_APIVER (OPENBSD_BAPIV_VECTOR | \
51 OPENBSD_BAPIV_ENV | \
52 OPENBSD_BAPIV_BMEMMAP)
53
54#define OPENBSD_BAPIV_ANCIENT 0x0 /* MD old i386 bootblocks */
55#define OPENBSD_BAPIV_VARS 0x1 /* MD structure w/ add info passed */
56#define OPENBSD_BAPIV_VECTOR 0x2 /* MI vector of MD structures passed */
57#define OPENBSD_BAPIV_ENV 0x4 /* MI environment vars vector */
58#define OPENBSD_BAPIV_BMEMMAP 0x8 /* MI memory map passed is in bytes */
59
60#define OPENBSD_BOOTARG_ENV 0x1000
61#define OPENBSD_BOOTARG_END -1
62
63#define OPENBSD_BOOTARG_MMAP 0
c5c81ff9 64#define OPENBSD_BOOTARG_PCIBIOS 4
b5b6745c 65#define OPENBSD_BOOTARG_CONSOLE 5
262bff8d
VS
66
67struct grub_openbsd_bootargs
68{
96c713b6
VS
69 grub_uint32_t ba_type;
70 grub_uint32_t ba_size;
71 grub_uint32_t ba_next;
7e47e27b 72} GRUB_PACKED;
262bff8d 73
b5b6745c
VS
74struct grub_openbsd_bootarg_console
75{
76 grub_uint32_t device;
77 grub_uint32_t speed;
78};
79
c5c81ff9
VS
80struct grub_openbsd_bootarg_pcibios
81{
82 grub_uint32_t characteristics;
83 grub_uint32_t revision;
84 grub_uint32_t pm_entry;
85 grub_uint32_t last_bus;
86};
87
b5b6745c
VS
88#define GRUB_OPENBSD_COM_MAJOR 8
89#define GRUB_OPENBSD_VGA_MAJOR 12
90
262bff8d 91#endif