Adding upstream version 3.86+dfsg.
[syslinux-debian/hramrach.git] / com32 / gplinclude / dmi / dmi_base_board.h
blob3d5fb557364d01dea835f5559be358061847da9a
1 /* ----------------------------------------------------------------------- *
3 * Copyright 2006 Erwan Velu - All Rights Reserved
5 * This program 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, Inc., 53 Temple Place Ste 330,
8 * Boston MA 02111-1307, USA; either version 2 of the License, or
9 * (at your option) any later version; incorporated herein by reference.
11 * ----------------------------------------------------------------------- */
13 #ifndef DMI_BASE_BOARD_H
14 #define DMI_BASE_BOARD_H
16 #include "stdbool.h"
17 #define BASE_BOARD_MANUFACTURER_SIZE 32
18 #define BASE_BOARD_PRODUCT_NAME_SIZE 32
19 #define BASE_BOARD_VERSION_SIZE 16
20 #define BASE_BOARD_SERIAL_SIZE 32
21 #define BASE_BOARD_ASSET_TAG_SIZE 32
22 #define BASE_BOARD_LOCATION_SIZE 32
23 #define BASE_BOARD_FEATURES_SIZE 32
24 #define BASE_BOARD_TYPE_SIZE 32
26 #define BASE_BOARD_NB_ELEMENTS 5
28 extern const char *base_board_features_strings[];
30 /* this struct have BASE_BOARD_NB_ELEMENTS */
31 /* each bool is associated to the relevant message above */
32 typedef struct {
33 bool hosting;
34 bool board_needs_daughter;
35 bool removable;
36 bool replaceable;
37 bool hot_swappable;
38 } __attribute__ ((__packed__)) s_base_board_features;
40 typedef struct {
41 char manufacturer[BASE_BOARD_MANUFACTURER_SIZE];
42 char product_name[BASE_BOARD_PRODUCT_NAME_SIZE];
43 char version[BASE_BOARD_VERSION_SIZE];
44 char serial[BASE_BOARD_SERIAL_SIZE];
45 char asset_tag[BASE_BOARD_ASSET_TAG_SIZE];
46 char location[BASE_BOARD_LOCATION_SIZE];
47 char type[BASE_BOARD_TYPE_SIZE];
48 s_base_board_features features;
49 /* The filled field have to be set to true when the dmitable implement that item */
50 bool filled;
51 struct {
52 char type[16];
53 uint8_t status;
54 char description[10];
55 } devices_information[10];
56 } s_base_board;
58 #endif